Se va a montar un servidor FTP con usuarios enjaulados y opción de usuario anónimo
Primero instalaremos el servicio FTP (actualizamos los repositorios si no lo hemos hecho):
$ sudo apt-get update
$ sudo apt-get install vsftpd
Lo siguiente sera crear dos usuarios, uno para que haga de administrador y otro de usuario normal, ademas se podrá acceder como usuario anónimo$ sudo apt-get update
$ sudo apt-get install vsftpd
Nombre: admin contraseña: admin
Nombre: usuario contraseña: usuario
Los usuarios se crearan mediante el comando normal de ubuntu "adduser":
$ sudo adduser admin
$ sudo adduser usuario
Nos aseguraremos de que tengan sus carpetas personales en /home (la carpeta alvar hace referencia al usuario administrador, al que he llamado así ):
Dentro crearemos una directorio de archivos, al cual podrán acceder (sustituimos #usuario# por el usuario al que queramos crearle el directorio):
$ sudo mkdir /home/#usuario#/archivos
Y le daremos permisos a admin para que pueda editarla (el servidor ftp usara los permisos del servidor)
$ sudo chown admin:admin /home/#usuario#/archivos
Jaulas para usuarios
Una vez instalado ya se podrá acceder al servidor por FTP, pero los usuarios podrían moverse por todos los archivos, así que vamos a hacer una jaula para los usuario

(podemos ver que cualquier usuario puede entrar a /etc, lo que es bastante peligroso)
Antes de nada tenemos que permitir que los usuarios locales puedan entrar el servidor, asegurandonos de que tenemos descomentada la linea "local_enable = YES"


Primero amos a su archivo de configuración (/etc/vsftpd.conf)
y descomentamos estas 3 lineas
chroor_local_user -- Si escribimos "YES" nos permitira enjaular a los usuarios en su directorio personal
chroot_list_enable -- Si escribimos "YES" podremos usar un archivo para poder elegir que usuarios enjaular
chroot_list_file -- Escribimos la ruta del archivo mencionado en el comando anterior
Después de esto cuando entremos al servidor con un usuario enjaulado y queremos ir a un directorio padre nos pasara esto:
(vemos que estamos en /home/usuario)
(aunque intentemos salir nos dejara en el mismo directorio)
(comprobamos también que tenga los permisos correctos y puede crear carpetas)
Finalmente reiniciamos el servidor para que se apliquen los cambios
$ sudo service vsftpd restart
Si estamos usando Ubunt 16.04 podemos escribir este comando para comprobar que el archivo de configuración se ha cargado correctamente
$ sudo service vsftpd status
Usuarios anónimos
Ahora vamos a activar los usuarios anónimos asi que volvemos a /etc/vsftpd.conf,tendremos que descomentar o añadir estas 3 lineas
(la linea anonymous_enable hace fallar al servidor, y curiosamente es innecesaria si ponemos las demas)
anon_root -- Aquí ponemos el directorio raíz del usuario anónimo
ftp_username --Aquí ponemos el nombre que tendrá el usuario anónimo, el nombre standard es "anonymous"
no_anon_passwors -- Si ponemos "YES" no pedirá contraseña al usuario anónimo
Reiniciamos el servidor para que se guarden los cambios y comprobamos que funcione
$ sudo service vsftpd restart
Y ya estará terminado
Otras características útiles
-- Si queremos que haya unos permisos predeterminados para los usuarios podemos descomentar la linea "local_umask" esto permitirá cambiar los permisos, pero si los que tiene la carpeta son mas restrictivos, serán estos los que se apliquen Ej.:- Si en la carpeta local los permisos son 733 y en la mascara le ponemos 755 (022 en la mascara) se aplicara 733

-- Si queremos que aparezca un mensaje cuando te conectas al servidor, tenemos la opción "ftpd_banner", donde pondremos en mensaje que queremos que aparezca

el mensaje aparecerá cuando nos conectamos, aunque no nos hayamos logeado

-- En cuanto a los logs hay 3 directivas básicas: "xferlog_enable", "xferlog_log_file" y "dual_log_enable"
- xferlog_enable -- Si la activamos registraremos las subidas y descargas
- xferlog_log_file -- Aquí tendremos que poner donde se encontrara el log anterior
- dual_log_enable -- Si la activamos se registraran dos logs con formatos diferentes

No hay comentarios:
Publicar un comentario