domingo, 23 de octubre de 2011

SSH Enjaulado en Slackware




Saludos ..


Paso #1 “Descarga de script para hacer el Enjaulado automático y ligero”:

http://www.fuschlberger.net/programs/ssh-scp-sftp-chroot-jail/

En esta web encuentran un script que se llama make_chroot_jail.sh el cual hace todo el proceso de crear la jaula para los usuario que queramos.

Descargar desde terminal:

#wget http://www.fuschlberger.net/programs/ssh-scp-sftp-chroot-jail/make_chroot_jail.sh



Paso #2 “Ejecutar el script”:

Antes de ejecutar el script, debemos de tener en mente donde va a quedar la jaula o el sistema raíz que queremos emular, y que shell va a usar el usuario cuando se logee; en este ejemplo tomamos los siguiente valores:


Jaula = /home/jail

Shell = /bin/bash


Ejemplo de Ejecución:


#./make_chroot_jail.sh USER SHELL JAULA


Ejecución:

#./make_chroot_jail.sh slackuser /bin/bash /home/jail


Al ejecutarlo nos imprime lo siguiente; donde escribimos “yes” y luego "Enter":

Are you sure you want to overwrite it?

(you want to say yes for example if you are running the script for the second

time when adding more than one account to the jail)

(yes/no) -> yes


Luego Nos pide el password del usuario, el cual estamos creando al mismo tiempo en el sistema:

Please use a combination of upper and lower case letters and numbers.

New password:xxxxxxxx

Re-enter new password: xxxxxxxx

passwd: password changed.



Paso #3 “Configurar el ssh para que haga el chroot automático”:


Editar el archivo /etc/ssh/sshd_config y:


Comentar la linea:

#Subsystem sftp /usr/libexec/sftp-server

y

Agregar las siguientes lineas:


Subsystem sftp internal-sftp

Match User slackuser

ChrootDirectory /home/jail/

AllowTcpForwarding no



Luego reinicar el servicio de ssh:

#/etc/rc.d/rc/sshd restart



Paso #4 “Probar la jaula realizando una conexión”:


#ssh -l slackuser localhost

slackuser@localhost's password: XXXXX

-bash-4.1$ ls

bin dev etc home lib64 sbin usr

-bash-4.1pwd

/


Ahora debes comparar la los archivos que hay en la raíz de esa conexión ssh que acabaste de hacer, con los del sistema real; lo cual te darás cuenta que no es el mismo.


Otra formas es listar en el sistema real la carpeta /home/jail y la compara con el listado de la raíz “/” de la conexión ssh con el usuario slackuser.


NOTA:

Con esta configuración que acabamos de hacer; el usuario slack solo puede ejecutar lo que esta seteado en la linea 121 del script make_chroot_jail.sh; si desean agregar mas comandos para que ese usuario pueda ejecutarlos solo es que agreguen el path completo del comando, tal y como esta en la linea 121 y y por ultimo ejecutar el script de nuevo pero con la opción update:


#./make_chroot_jail.sh update


Gracias ...

No hay comentarios:

Publicar un comentario en la entrada