Cómo configurar un servidor VSFTPD en un VPS Ubuntu 16.04 o un servidor dedicado | Hosting mas barato

Los datos FTP suelen ser inseguros porque la información (nombres de usuario, contraseñas, datos) se transmite sin cifrar en texto sin cifrar. Es muy IMPORTANTE cifrar las conexiones FTP a servidores FTP de Linux con VSFTPD (SSL / TLS).
Este breve tutorial es muy importante para los administradores de sistemas avanzados y los usuarios que normalmente transfieren datos muy sensibles (documentos, imágenes, etc.) a los servidores FTP de Linux de su empresa u organización.
Nota especial: visite la página de los mejores servicios de hosting de Linux de Hosting mas Baratopara encontrar los mejores servidores web en esta categoría, incluidas las calificaciones de expertos y usuarios.
Instale los paquetes vsftpd y openssl en el servidor Linux Ubuntu 16.04
$ sudo apt-get install vsftpd openssl
Genere un certificado autofirmado para proteger las conexiones del servidor FTP.
$ sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 –keyout /etc/ssl/private/vsftpd.key -out /etc/ssl/private/vsftpd.pem
Edita el archivo de configuración /etc/vsftpd.conf
$ sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak $ sudo vim /etc/vsftpd.conf
Asegúrese de las configuraciones como se muestra a continuación:
# Allow anonymous FTP? (Disabled by default). anonymous_enable=NO # # Uncomment this to allow local users to log in. local_enable=YES # # Uncomment this to enable any form of FTP write command. write_enable=YES
# This option specifies the location of the RSA certificate to use for SSL # encrypted connections. rsa_cert_file=/etc/ssl/private/vsftpd.pem rsa_private_key_file=/etc/ssl/private/vsftpd.key ssl_enable=YES #DO NOT allow anonymous users to use SSL allow_anon_ssl=NO #Force local users to use SSL force_local_data_ssl=YES force_local_logins_ssl=YES #Enable latest SSL and TLS version 1 and disable old versions ssl_tlsv1=YES ssl_sslv2=NO ssl_sslv3=NO #Enter username in local_root directory to enable this config to work for ftp users added in future user_sub_token=$USER #Path to share and send files from local_root=/srv/ftp/$USER #Users in the vsftpd_userlist are the ONLY ones allowed for FTP access userlist_enable=YES userlist_file=/etc/vsftpd_userlist userlist_deny=NO
Inicie el servicio vsftpd
$ sudo systemctl start vsftpd $ sudo systemctl status vsftpd
Habilitar conexiones vsftpd a través de ufw
$ sudo ufw status
Nota especial: de forma predeterminada, ufw generalmente se instala en Ubuntu, pero si por alguna razón no está allí, puede usarlo para instalarlo.
$ sudo apt-get install ufw
Asegúrese de que el firewall permita conexiones FTP
$ sudo ufw allow 20/tcp $ sudo ufw allow 21/tcp $ sudo ufw status
Nota especial: Vsftpd también usa el puerto SSH que es 22, así que asegúrese de que ufw permita conexiones SSH
Cambie al usuario root e ingrese la contraseña de root
$ su –
Cree un usuario como root que pueda iniciar sesión en el directorio FTP de Mark.
# adduser --home /srv/ftp/mark mark
-d Establece / srv / ftp / mark como el directorio de inicio para ftpuser
Hacer que el directorio raíz de FTP sea propiedad de ftpuser
# chown –R mark /srv/ftp/mark
Cambiar desde el usuario root
# su - linuxuser
Agregue la etiqueta en / etc / vsftpd_userlist para obtener acceso FTP
# sudo vim /etc/vsftpd_userlist
Luego escriba “marca” en el archivo.
Inicie el servicio VSFTPD
$ sudo systemctl restart vsftpd
Confirme que el servicio VSFTPD se está ejecutando
$ sudo systemctl status vsftpd
Inicie sesión desde una computadora Linux local
$ ftp -p ubuntu16-hostadvice
Si intenta iniciar sesión sin SSL de forma predeterminada, el inicio de sesión fallará y producirá un error como se muestra a continuación:
Ahora intente acceder usando SSL, es decir, el protocolo SFTP (FTP seguro) como se muestra a continuación:
$ sftp mark@ubuntu16-hostadvice
Tenga en cuenta la conexión exitosa.
Nota especial: tenga en cuenta que esto SOLO funciona si se realiza una de las siguientes acciones:
La autenticación de contraseña está habilitada en / etc / ssh / sshd_config /.
Si la autenticación de contraseña está deshabilitada y solo está habilitada la autenticación de clave privada SSH, deberá configurar la autenticación de clave privada SSH para ese usuario FTP en particular con el servidor Linux.