Instale un servidor FTP con ProFTPd en Debian o Ubuntu

En esta guía, veremos cómo configurar un servidor FTP (ProFTPd) para transferir archivos entre su PC y su servidor.

requisitos previos

  • Una instancia de servidor Vultr Debian o Ubuntu recién implementada.
  • Un usuario de Sudo.

Instalación

Actualice el sistema.

                      
                        sudo apt-get update
sudo apt-get dist-upgrade

                      
                    

Instalar proftpd .

                      
                        sudo apt-get install proftpd

                      
                    

Durante la instalación, se le preguntará si desea instalar en inetd o standalone modo. Elegir la standalone modo.

Configuración

Abra el archivo de configuración Proftpd.

                      
                        sudo nano /etc/proftpd/proftpd.conf

                      
                    

El archivo se parecerá al siguiente texto.

                      
                        #
# /etc/proftpd/proftpd.conf -- This is a basic ProFTPD configuration file.
# To really apply changes, reload proftpd after modifications, if
# it runs in daemon mode. It is not required in inetd/xinetd mode.
#

# Includes DSO modules
Include /etc/proftpd/modules.conf

# Set off to disable IPv6 support which is annoying on IPv4 only boxes.
UseIPv6                         on
# If set on you can experience a longer connection delay in many cases.
IdentLookups                    off

ServerName                      "Debian"
ServerType                      standalone
DeferWelcome                    off

MultilineRFC2228                on
DefaultServer                   on
ShowSymlinks                    on

TimeoutNoTransfer               600
TimeoutStalled                  600
TimeoutIdle                     1200

DisplayLogin                    welcome.msg
DisplayChdir                    .message true
ListOptions                     "-l"

DenyFilter                      *.*/

# Use this to jail all users in their homes
# DefaultRoot                     ~

# Users require a valid shell listed in /etc/shells to login.
# Use this directive to release that constrain.
RequireValidShell               off

# Port 21 is the standard FTP port.
Port                            21
...

                      
                    

Principales directivas de configuración

  • ServerName : especifica el nombre del servidor FTP. Este nombre se mostrará cuando los clientes se conecten al servidor.
  • TimeoutIdle : El tiempo, en segundos, después del cual un cliente se desconecta automáticamente si ya no está activo en el servidor FTP.
  • DefaultRoot : controla el directorio raíz predeterminado asignado a un usuario al iniciar sesión.
  • Port : El puerto de conexión al servidor FTP. Casi todo el tiempo este puerto es 21 y no debería tener que cambiarlo a menos que esté bloqueado por un firewall.
  • PassivePorts : Restringe el rango de puertos desde los cuales el servidor seleccionará cuando envíe el PASV comando de un cliente.
  • MaxInstances : El número máximo de conexiones simultáneas que desea permitir en su servidor FTP.

Ahora, tenemos que activar el DefaultRoot opción. para hacer esto, busque el DefaultRoot línea comentada y descomentarla.

                      
                        DefaultRoot                     ~

                      
                    

El valor ~ significa que el usuario estará limitado a la carpeta personal (p. ej. /home/user12 ).

Nota : De forma predeterminada, alguien que se conecta al servidor FTP puede acceder a todas las carpetas del servidor, por lo que se recomienda habilitar la opción DefaultRoot .

Cambiar el ServerName .

                      
                        ServerName : the name of your FTP server

                      
                    

Busque y descomente las siguientes líneas (eliminando el # al comienzo de cada línea) para permitir conexiones anónimas a su servidor.

                      
                        # A basic anonymous configuration, no upload directories.

 <Anonymous ~ftp>
   User                         ftp
   Group                        nogroup
   # We want clients to be able to login with "anonymous" as well as "ftp"
   UserAlias                    anonymous ftp
   # Cosmetic changes, all files belongs to ftp user
   DirFakeUser  on ftp
   DirFakeGroup on ftp

   RequireValidShell            off

   # Limit the maximum number of anonymous logins
   MaxClients                   10

   # We want 'welcome.msg' displayed at login, and '.message' displayed
   # in each newly chdired directory.
   DisplayLogin                 welcome.msg
   DisplayFirstChdir            .message

   # Limit WRITE everywhere in the anonymous chroot
   <Directory *>
     <Limit WRITE>
       DenyAll
     </Limit>
   </Directory>
 </Anonymous>

                      
                    

Nota : Si habilita conexiones anónimas en su servidor FTP, cualquier usuario puede conectarse a él. Tendrán acceso a la /home/ftp directorio y podrá leer y descargar archivos, pero no modificar ni agregar archivos.

Puede prohibir que el usuario raíz acceda a FTP agregando la siguiente línea.

                      
                        RootLogin off

                      
                    

Después de cambiar la configuración, reinicie el servidor.

                      
                        sudo service proftpd restart

                      
                    

Nota : Si se muestra una línea de error como “no se puede resolver el host”, tenga en cuenta que no importa y puede ignorarlo.

Añadir un usuario de FTP

Añadir un usuario, para example” myuser “.

                      
                        useradd --shell /bin/false myuser

                      
                    

Crear el directorio de inicio de nuestro usuario “ myuser “.

                      
                        mkdir /home/myuser

                      
                    

Cambie la propiedad de ese directorio al usuario y grupo “ myuser “.

                      
                        chown myuser:myuser /home/myuser/

                      
                    

Establecer una contraseña para el usuario “ myuser “.

                      
                        passwd myuser

                      
                    

Conéctese a su servidor FTP

  • Cómo conectarse a un servidor FTP con FileZilla

Título del artículo Nombre (opcional) Correo electrónico (opcional) Descripción

Enviar sugerencia

Related Posts