GNU/Linux >> Tutoriales Linux >  >> Linux

¿Limitar el acceso FTP solo a /var/www con Vsftpd?

Estoy ejecutando vsftpd como servidor ftp en mi linux (rasbian), inicio sesión en la máquina como usuario root.

Me gustaría seguir bloqueado para usar solo /var/www, ¿cómo puedo configurar vsftpd conf para lograrlo?

Respuesta aceptada:

Método 1:cambiar el directorio de inicio del usuario

Asegúrese de que exista la siguiente línea

chroot_local_user=YES

Configure el directorio HOME del usuario en /var/www/ , si desea cambiar para un usuario existente, puede usar:

usermod --home /var/www/ username

luego establezca el permiso requerido en /var/www/

Método 2:Usar user_sub_token

Si no desea cambiar el directorio de inicio del usuario, puede usar:

chroot_local_user=YES
local_root=/ftphome/$USER
user_sub_token=$USER

Acerca de user_sub_token :

Genere automáticamente un directorio de inicio para cada usuario virtual, basado en una plantilla.
Por ejemplo, si el directorio de inicio del usuario real especificado a través de guest_username es
/ftphome/$USER, y user_sub_token se establece en $ USER, luego, cuando el usuario virtual test
inicie sesión, terminará (normalmente con chroot()) en el directorio /ftphome/test.
Esta opción también tiene efecto si local_root contiene user_sub_token.

Crear directorio y configurar permisos:

mkdir -p /ftphome/{test,user1,user2}
chmod 770 -R /ftphome
chown -R ftp. /ftphome
usermod -G ftp test

Una vez que reinicie vsftpd y prueba tu configuración.

Ejemplo de resultado de éxito:

[[email protected] tmp]# ftp localhost
Connected to mail.linuxian.local.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (localhost:root): test
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> mput vhosts
mput vhosts? 
227 Entering Passive Mode (127,0,0,1,146,41)
150 Ok to send data.
226 File receive OK.
24 bytes sent in 3.3e-05 seconds (7.1e+02 Kbytes/s)
ftp> ls -rlt
227 Entering Passive Mode (127,0,0,1,97,90)
150 Here comes the directory listing.
-rw-r--r--    1 787      787            24 Oct 11 19:57 vhosts
226 Directory send OK.
ftp> 221 Goodbye.

Linux
  1. ¿Usando –exclude con el comando Du?

  2. Buscar solo ciertas cadenas (dominio) ¿Extraer otro archivo?

  3. Use un repositorio git en /var/www/html/

  4. Django static_root en /var/www/... - sin permisos para recopilar estática

  5. cómo buscar un directorio desde la terminal en ubuntu

Cómo limitar el acceso del usuario al sistema Linux

Configuración de un servidor FTP con vsFTPd en Raspberry Pi

¿Cómo maneja Linux múltiples separadores de rutas consecutivas (/home////username///file)?

Debian – ¿No se puede crear un usuario Sftp Debian 7?

¿Por qué el chroot_local_user de vsftpd es inseguro?

FTP no permite el usuario /usr/sbin/nologin