Ayer estuve experimentando con el tema de los servidores FTP, por curiosidad. La verdad es que no es nada complicado montar un servidor FTP en tu propio ordenador, pero la capacidad de subida de mi línea hace que el servidor se convierta en un mero "logro" más allá de ser útil.

Empecemos pues a instalar el servidor en cuestión: Vsftpd.

Código:
sudo apt-get install vsftpd
Ahora editamos el archivo de configuración para personalizar el comportamiento del servidor:

Código:
sudo gedit /etc/vsftpd.conf
Estos son algunos de los parámetros importantes que debes configurar (el mío está esencialmente igual):

# Habilitar el acceso a usuarios anónimos. Para mayor seguridad poner NO.
anonymous_enable=NO
# Permitir el acceso de usuarios locales a sus respectivas carpetas privadas:
local_enable=YES
# Permitir el modo escritura:
write_enable=NO
# Mascara del directorio:
local_umask=022
# Mensaje de bienvenida:
ftpd_banner=Bienvenidos al Servidor FTP de este sitio.
# Enjaula a los usuarios dentro de su propio directorio personal. Mejora la seguridad.
chroot_local_user=YES
Después de hacer cualquier cambio en el archivo de configuración es necesario reiniciar el servidor:

Código:
sudo service vsftpd restart
Desde ahora podrás conectarte a tu servidor FTP por el puerto 21 usando cualquier usuario de tu sistema. Se listarán los archivos de su carpeta personal. Quizás te interese crear un usuario aparte para que se conecte al servidor FTP. Si es así, sigue estos pasos:

Código:
sudo mkdir /home/usuario
Código:
sudo useradd -d /home/usuario -s /bin/bash usuario
Código:
sudo passwd usuario
Código:
sudo chmod -R 7777 /home/usuario
Este último comando nos previene de un posible error "550 Failed to open file." al intentar descargar cualquier archivo.

Por último sólo te queda abrir el puerto 21 de tu router para que se pueda acceder desde fuera

Puedes encontrar más información en inglés (Linux Journal) y mucho más reducida en la documentación de Ubuntu en español.


Visto en La ventana muerta