Administrador de Linux: instalar FTP anónimo

Antes de profundizar en la instalación de FTP en CentOS, necesitamos aprender un poco sobre su uso y seguridad. FTPes un protocolo realmente eficiente y refinado para transferir archivos entre los sistemas informáticos. FTP se ha utilizado y perfeccionado durante algunas décadas. Para transferir archivos de manera eficiente a través de una red con latencia o por pura velocidad, FTP es una excelente opción. Más que SAMBA o SMB.

Sin embargo, FTP tiene algunos problemas de seguridad. De hecho, algunos problemas de seguridad graves. FTP utiliza un método de autenticación de texto plano realmente débil. Es por esta razón que las sesiones autenticadas deben depender de sFTP o FTPS, donde TLS se usa para el cifrado de extremo a extremo de las sesiones de inicio de sesión y transferencia.

Con las advertencias anteriores, el antiguo FTP simple todavía tiene su uso en el entorno empresarial actual. El uso principal son los repositorios de archivos FTP anónimos. Esta es una situación en la que no se justifica la autenticación para descargar o cargar archivos. Algunos ejemplos de uso de FTP anónimo son:

  • Las grandes empresas de software todavía utilizan repositorios ftp anónimos que permiten a los usuarios de Internet descargar shareware y parches.

  • Permitir a los usuarios de Internet cargar y descargar documentos públicos.

  • Algunas aplicaciones enviarán automáticamente registros archivados y cifrados o archivos de configuración a un repositorio a través de FTP.

Por lo tanto, como administrador de CentOS, poder instalar y configurar FTP sigue siendo una habilidad diseñada.

Usaremos un demonio FTP llamado vsFTP, o demonio FTP muy seguro. vsFTP se ha utilizado en desarrollo durante un tiempo. Tiene la reputación de ser seguro, fácil de instalar y configurar, y es confiable.

Step 1 - Instale vsFTPd con YUM Package Manager.

[[email protected]]# yum -y install vsftpd.x86_64

Step 2 - Configure vsFTP para que se inicie al arrancar con systemctl.

[[email protected]]# systemctl start vsftpd 
[[email protected]s]# systemctl enable vsftpd 
Created symlink from /etc/systemd/system/multi-
user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.

Step 3 - Configure FirewallD para permitir el control de FTP y las sesiones de transferencia.

[[email protected]]# firewall-cmd --add-service=ftp --permanent 
success 
[[email protected]]#

Asegúrese de que nuestro demonio FTP se esté ejecutando.

[[email protected]]# netstat -antup | grep vsftp 
tcp6       0       0 :::21       :::*       LISTEN       13906/vsftpd         
[[email protected]]#

Step 4 - Configure vsFTPD para acceso anónimo.

Cree un directorio raíz de FTP

[[email protected]]# mkdir /ftp

Cambiar el propietario y el grupo de la raíz de FTP a ftp

[[email protected]]# chown ftp:ftp /ftp
Set minimal permissions for FTP root:

[[email protected]]# chmod -R 666 /ftp/

[[email protected]]# ls -ld /ftp/
drw-rw-rw-. 2 ftp ftp 6 Feb 27 02:01 /ftp/

[[email protected]]#

En este caso, les dimos a los usuarios acceso de lectura / escritura a todo el árbol FTP raíz.

Configurar /etc/vsftpd/vsftpd.conf "

[[email protected]]# vim /etc/vsftpd/vsftpd.conf
# Example config file /etc/vsftpd/vsftpd.conf
#
# The default compiled in settings are fairly paranoid. This sample file
# loosens things up a bit, to make the ftp daemon more usable.
# Please see vsftpd.conf.5 for all compiled in defaults.
#
# READ THIS: This example file is NOT an exhaustive list of vsftpd options.
# Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's
# capabilities.

Querremos cambiar las siguientes directivas en el archivo vsftp.conf .

  • Habilite la carga anónima descomentando anon_mkdir_write_enable = YES

  • convertir archivos cargados en propiedad del usuario de ftp del sistema

    chown_uploads = SÍ

    chown_username = ftp

  • Cambie el usuario del sistema utilizado por vsftp al usuario de ftp: nopriv_user = ftp

  • Configure el banner personalizado para que el usuario lea antes de iniciar sesión.

    ftpd_banner = Bienvenido a nuestro repositorio FTP anónimo. Todas las conexiones se supervisan y registran.

  • Establezcamos solo conexiones IPv4 -

    escuchar = SI

    listen_ipv6 = NO

Ahora, necesitamos reiniciar o HUP el servicio vsftp para aplicar nuestros cambios.

[[email protected]]# systemctl restart vsftpd

Vamos a conectarnos a nuestro servidor FTP y asegurarnos de que nuestro demonio FTP esté respondiendo.

[[email protected] rdc]# ftp 10.0.4.34 
Connected to localhost (10.0.4.34). 
220 Welcome to our Anonymous FTP Repo. All connections are monitored and logged. 
Name (localhost:root): anonymous 
331 Please specify the password. 
Password: 
'230 Login successful. 
Remote system type is UNIX. 
Using binary mode to transfer files. 
ftp>