CREA UN SERVIDOR FTP EN UBUNTU PARA COMPARTIR ARCHIVOS EN LAN E INTERNET

Hoy os voy a enseñar como crear un servidor FTP en Ubuntu de una manera sencilla y con las opciones más importantes.

Podréis compartir archivos vía LAN y vía Internet, loguearos con vuestro usuario/contraseña.

Este manual está destinado para compartir archivos en red local sin salir a internet, ya que la configuración de seguridad para pasar por redes no seguras, es escasa. Si vamos a acceder desde Internet deberemos abrir el puerto 21 en nuestro router.

También podréis encerrar al usuario para que no salga del /home/ y que así, no pueda dañar el sistema eliminando archivos vitales.
Instalación

Os vais a consola y ponéis:

sudo aptitude install vsftpd

De esta forma instalaréis el servidor FTP desde los repositorios de Ubuntu.
Configuración del servidor FTP. Editamos vsftpd.conf

Nos vamos a consola y ponemos:

sudo gedit /etc/vsftpd.conf

Podéis sustituir el gedit por cualquier editor de texto, como por ejemplo vi.

Si queréis poder entrar al servidor con vuestro usuario y clave de Ubuntu, y tener acceso a todos los archivos, incluido /media/discos_duros tenéis que poner la siguiente configuración (me salto las líneas comentadas #).

    # Iniciar servidor al inicio del sistema.

    listen=YES

    # Podemos habilitar o deshabilitar el inicio de sesión de usuarios anónimos, lo ponemos en NO para que solo entremos nosotros.

    anonymous_enable=NO

    #

    # Para poder loguearnos usuarios locales (nosotros).

    local_enable=YES

    #

    # Permiso de escritura en los directorios.

    write_enable=YES

    # Log de lo que hace el cliente en el servidor.

    dirmessage_enable=YES

    #

    #Hora del servidor (por defecto).

    use_localtime=YES

    # Activate logging of uploads/downloads.

    xferlog_enable=YES

    # Puerto de escucha FTP, lo dejamos por defecto (el 20).

    connect_from_port_20=YES

    # Mensaje de entrada al servidor

    ftpd_banner=Bienvenido al servidor FTP de Bron

    # Podemos restringir a los usuarios a su propio /home/. Selecciona YES para restringir, y NO para tener acceso a todos los archivos y carpetas.

    chroot_local_user=NO

    secure_chroot_dir=/var/run/vsftpd/empty

    pam_service_name=vsftpd

    rsa_cert_file=/etc/ssl/private/vsftpd.pem

Los propios comentarios en el código explican qué significa cada parámetro (explicados por nosotros).

Para tener un usuario encerrado en su /home/ y otro de administrador:

# You may specify an explicit list of local users to chroot() to their home

# directory. If chroot_local_user is YES, then this list becomes a list of

# users to NOT chroot().

chroot_local_user=YES

chroot_list_enable=YES

# (default follows)

chroot_list_file=/etc/vsftpd.chroot_list

Creas un archivo:

sudo gedit /etc/vsftpd.chroot_list

Y pones el nombre del usuario que quieres de administrador, aplicas cambios y reinicias el servidor.

De esta forma, todos los que no estén en la lista, estarán encerrados en su /home/
Iniciar, parar y reiniciar el proceso vsftpd

Para iniciar el servidor FTP una vez configurado a nuestro gusto.

sudo /etc/init.d/vsftpd start

Para parar el servidor FTP.

sudo /etc/init.d/vsftpd stop

Para reiniciar el servidor FTP.

sudo /etc/init.d/vsftpd restart

- See more at: http://www.redeszone.net/gnu-linux/servidor-ftp-ubuntu/#sthash.R3mK2RcX.dpuf

Entradas populares de este blog