Crear cuentas ftp con acceso a ciertas carpetas en CentOS 7

Crear cuentas ftp para acceder a ciertas carpetas nos ayudara a proteger archivos privados.

Primero instalamos el servidor ftp

yum install vsftpd

Luego de instalar debemos considerar los nuevos comandos para manejar los servicios en la versión 7 de CentOS.

Para activar el arranque desde el inicio del sistema

systemctl enable vsftpd.service

Para desactivar

systemctl disable vsftpd.service

Para iniciar

systemctl start vsftpd.service

Para detener

systemctl stop vsftpd.service

Para reiniciar

systemctl restart vsftpd.service

Si tenemos el firewall activados, debemos habilitar el puerto

firewall-cmd --permanent --add-service=ftp

Y reiniciamos nuestro firewall

systemctl restart firewalld.service

Luego configuramos el servidor ftp ingresando a:

nano /etc/vsftpd/vsftpd.conf

Y modificamos los siguientes parametros: (estos puntos son gracias al blog https://rootear.com/ubuntu-linux/instalar-servidor-ftp )

listen = YES : Para que se inicie con el sistema.

anonymous_enable = NO : No permitimos que usuarios anónimos puedan conectarse a nuestro servidor. Es por seguridad.

local_enable = YES : Para poder conectarse con los usuarios locales del servidor donde está instalado.

write_enable = YES : Si quieres que los usuarios puedan escribir y no sólo descargar cosas.

local_umask = 022 : Esta máscara hace que cada vez que subas un archivo, sus permisos sean 755. Es lo más típico en servidores FTP.

chroot_local_user = YES

chroot_list_enable = YES : Sirven para que los usuarios locales puedan navegar por todo el árbol de directorios del servidor. Evidentemente esto sólo queremos permitírselo a ciertos usuarios, para ello tenemos el siguiente parámetro.

chroot_list_file = /etc/vsftpd/chroot_list : Indicamos el fichero donde están listados los usuarios que pueden navegar hacía arriba por los directorios del servidor, lo normal es que sea el administrador del servidor.

Comentamos la línea:

# Listen_ipv6 = YES

Grabamos y salimos. Adicionalmente agregamos una linea mas a nuestro archivo de configuración:

echo 'allow_writeable_chroot=YES' >> /etc/vsftpd/vsftpd.conf

Luego creamos un grupo

groupadd ftp

Creamos un shell fantasma

mkdir /bin/ftp

Editamos el shell del sistema

nano /etc/shells

y agregamos en la última linea

/bin/ftp

Grabamos y salimos. Ahora crearemos un usuario:

sudo useradd -g ftp -d /ruta_carpeta_destino -c "Nombre del Usuario" nombre_usuario

Le asignamos una clave

sudo passwd usuarioftp

Buscamos a nuestro usuario recien creado en:

nano /etc/passwd

Copiamos (CTRL+C) la linea de nuestro usuario parecida a:

usuario:x:1004:118:Nombre del Usuario:/ruta_carpeta_destino:/bin/ftp

Y lo pegamos con un clic en:

nano /etc/vsftpd/chroot_list

NOTA: Si chroot_list no existe debemos crearlo

Finalmente reiniciamos y listo!

systemctl restart vsftpd.service

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


El periodo de verificación de reCAPTCHA ha caducado. Por favor, recarga la página.