Instalar y habilitar acceso FTP en una instancia AWS EC2 con Linux Centos 7
Read in EnglishTe guiaré a través de la manera más rápida y fácil de configurar el acceso FTP a una instancia EC2 con la distribución Centos 7 en AWS (Amazon Web Services), vamos a usar VSFTPD (Very Secure FTP Daemon) así que el primer paso es instalarlo.
Instalación y configuración de VSFTPD
Paso 1: Instala VSFTPD
-
Actualiza el administrador de paquetes:
sudo yum update
-
Instala el software VSFTP:
sudo yum install vsftpd
-
Iniciar el servicio:
sudo systemctl start vsftpd
-
Configura el servicio inicie automáticamente cuando cargue el servidor:
sudo systemctl enable vsftpd
Creación de usuarios y configuración de permisos
Paso 2: Crea un nuevo usuario FTP
-
El siguiente comando crea el nuevo usuario:
sudo adduser ftpuser
-
Asigna un password para el usuario:
sudo passwd ftpuser
-
Agrega el nuevo usuario la lista de usuarios de VSFTP:
echo "ftpuser" | sudo tee -a /etc/vsftpd/user_list
Paso 3: Configura VSFTPD
-
Primero, crea una copia de respaldo del archivo de configuración:
sudo cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.default
-
Abre el archivo de configuración con vim:
sudo vi /etc/vsftpd/vsftpd.conf
-
Busca las siguientes variables en el archivo y actualízalas como se muestra a continuación:
Nota: Es probable que algunas de las variables no existan, solo agrégalas al final de archivo.anonymous_enable=NO local_enable=YES write_enable=YES chroot_local_user=YES allow_writeable_chroot=YES userlist_enable=YES userlist_file=/etc/vsftpd/user_list userlist_deny=NO
-
Reiniciar el servicio:
sudo systemctl restart vsftpd
Paso 4: Crea una carpeta para el nuevo usuario
-
Crea la carpeta dentro del directorio raíz del usuario:
sudo mkdir -p /home/ftpuser/ftp/upload
-
Asigna los permisos de acceso de la siguiente manera:
sudo chmod -R 755 /home/ftpuser/ftp sudo chown -R ftpuser: /home/ftpuser/ftp
Habilitar la autenticación por contraseña para el usuario FTP
Paso 5: Habilitar la autenticación por contraseña en SSH para el usuario FTP
-
Edita el archivo sshd_config:
sudo vi /etc/ssh/sshd_config
-
Agrega las siguientes líneas al final del archivo:
Match User ftpuser PasswordAuthentication yes ChrootDirectory /home/ftpuser/ftp
-
Reiniciar el servicio:
sudo service sshd restart