ProFTPD es un servidor FTP de código abierto en un sistema operativo similar a Unix. ProFTPD significa "demonio de Protocolo de transferencia de archivos profesional (FTP) ” y viene bajo licencia GPL. El archivo de configuración de ProFTPD es similar al de 'Servidor Apache HTTPD ‘ y puede configurarse como servidor autónomo o vía Xinetd.
En este artículo instalaremos y configuraremos ProFTPD en Fedora 23 . El nombre de host y la dirección IP de mi máquina son:
- nombre de host =fedora23.linuxtechi.com
- dirección IP =192.168.1.21
Paso:1 Instale el paquete ProFTPD usando el siguiente comando.
Use el siguiente comando dnf para instalar proftpd y proftpd-utils.
[[email protected] ~]# dnf install proftpd proftpd-utils
Paso:2 Edite el archivo de configuración de ProFTPD.
Configure ProFTPD realizando los cambios necesarios en el archivo de configuración ‘/etc/proftpd.conf’
Establezca los siguientes parámetros en el archivo de configuración.
[[email protected] ~]# vi /etc/proftpd.conf ServerName "fedora23.linuxtechi.com" ServerIdent on "FTP Server ready." ServerAdmin [email protected] DefaultServer on ExtendedLog /var/log/proftpd/access.log WRITE,READ default ExtendedLog /var/log/proftpd/auth.log AUTH auth DefaultRoot ~ !adm AuthPAMConfig proftpd AuthOrder mod_auth_pam.c* mod_auth_unix.c
Cambie el nombre del servidor y la dirección de correo electrónico del administrador del servidor según su configuración.
Nota: Todos los usuarios serán chroot a su directorio de inicio, lo que significa que los usuarios no pueden acceder a los archivos fuera de su directorio de inicio.
Iniciar y habilitar el servicio ProFTPD.
[[email protected] ~]# systemctl start proftpd [[email protected] ~]# systemctl enable proftpd Created symlink from /etc/systemd/system/multi-user.target.wants/proftpd.service to /usr/lib/systemd/system/proftpd.service. [[email protected] ~]#
Ahora cree grupos y usuarios para ProFTPD y establezca los permisos necesarios en el directorio de inicio del usuario.
[[email protected] ~]# groupadd proftp_grp [[email protected] ~]# mkdir /opt/ftp_dir [[email protected] ~]# useradd -G proftp_grp -s /sbin/nologin -d /opt/ftp_dir pradeep [[email protected] ~]# [[email protected] ~]# chmod 1775 /opt/ftp_dir [[email protected] ~]# chgrp proftp_grp /opt/ftp_dir [[email protected] ~]# ls -ld /opt/ftp_dir/ drwxrwxr-t. 2 root proftp_grp 4096 Jan 24 09:55 /opt/ftp_dir/ [[email protected] ~]#
Ahora asigne una contraseña al usuario.
[[email protected] ~]# passwd pradeep
Paso:3 Establezca las reglas de SELinux y cortafuegos.
En caso de que SELinux esté habilitado, configure las siguientes reglas de selinux para FTP.
[[email protected] ~]# setsebool -P ftp_home_dir=1 [[email protected] ~]# setsebool -P allow_ftpd_full_access=1
Abra el puerto FTP en el cortafuegos del sistema operativo (SO)
[[email protected] ~]# firewall-cmd --permanent --add-port=21/tcp success [[email protected] ~]# firewall-cmd --reload success [[email protected] ~]#
Paso:4 Habilitar el cifrado entre el servidor ProFTPD y los clientes FTP
La conexión entre el servidor ProFTPD y su cliente se considera menos segura, por lo que para realizar una comunicación segura entre el servidor y sus clientes podemos utilizar certificados SSL.
Para generar certificados SSL utilizaremos openssl comando, use el siguiente comando para instalar openssl si no está instalado.
[[email protected] ~]# dnf install openssl
Ahora genere certificados SSL
[[email protected] ~]# openssl req -x509 -nodes -newkey rsa:2048 -keyout /etc/pki/tls/certs/ftpserver.pem -out /etc/pki/tls/certs/ftpserver.pem
Le pedirá que ingrese la información asociada con el certificado y creará una clave privada '/etc/pki/tls/certs/ftpserver.pem'
Establecer el permiso en clave privada:
[[email protected] ~]# chmod 600 /etc/pki/tls/certs/ftpserver.pem [[email protected] ~]#
Agregue las siguientes líneas en '/etc/proftpd.conf ‘
[[email protected] ~]# vi /etc/proftpd.conf TLSEngine on TLSRequired on TLSProtocol SSLv23 TLSLog /var/log/proftpd/tls.log TLSRSACertificateFile /etc/pki/tls/certs/ftpserver.pem TLSRSACertificateKeyFile /etc/pki/tls/certs/ftpserver.pem
Reiniciar el servicio ProFTPD.
[[email protected] ~]# systemctl restart proftpd [[email protected] ~]#
Abra los puertos en el firewall del sistema operativo para TLS.
[[email protected] ~]# firewall-cmd --add-port=1024-65534/tcp success [[email protected] ~]# firewall-cmd --add-port=1024-65534/tcp --permanent success [[email protected] ~]# firewall-cmd --reload success
Paso:5 Conéctese al servidor ProFTPD usando Filezilla.
Haga clic en Conectar…
Haga clic en 'Aceptar' para confiar en el certificado.
Como podemos iniciar sesión correctamente, ahora puede descargar y cargar archivos en su directorio de inicio.
Espero que te gusten los pasos de instalación y configuración 🙂