Introducción

Introducción

En este artículo veremos cómo chroot automáticamente la cárcel seleccionada SSH inicio de sesión en función del grupo de usuarios. Esta técnica puede ser bastante útil si usted le proporcionará un entorno de sistema limitado y al mismo tiempo mantenerlos separados de su sistema principal. También puede usar esta técnica para crear un ssh honeypot simple. En este tutorial, aprenderá cómo crear un entorno de chroot básico y cómo configurar el SSHD de su sistema principal para cárcel chroot automáticamente a los usuarios seleccionados al inicio de sesión SSH.

Creación de entorno básico de chroot

Primero necesitamos crear un entorno de chroot simple. Nuestro entorno de chroot consistirá en un caparazón de fiesta. Para hacer esto, primero, necesitamos crear un directorio de chroot:

# mkdir /var /chroot

En el siguiente paso, necesitamos copiar el binario bash y sus dependencias de la biblioteca compartida.
Puede ver las dependencias de la biblioteca compartida de la bash ejecutando el LDD dominio:


# ldd /bin /bash
Linux-VDSO.entonces.1 => (0x00007fff9a373000)
libtinfo.entonces.5 =>/lib/x86_64-linux-gnu/libtinfo.entonces.5 (0x00007f24d57af000)
libdl.entonces.2 =>/lib/x86_64-linux-gnu/libdl.entonces.2 (0x00007f24d55ab000)
libc.entonces.6 =>/lib/x86_64-linux-gnu/libc.entonces.6 (0x00007f24d51eb000)
/lib64/ld-linux-x86-64.entonces.2 (0x00007f24d59f8000)


Ahora, necesitamos crear manualmente todos los directorios necesarios y copiar /bin /bash y todas las bibliotecas al nuevo directorio de chroot en una ubicación apropiada:

# cd/var/chroot/
# mkdir bin/ lib64/ lib/
# cp/lib/x86_64-linux-gnu/libtinfo.entonces.5 lib/
# cp/lib/x86_64-linux-gnu/libdl.entonces.2 lib/
# cp/lib/x86_64-linux-gnu/libc.entonces.6 lib/
# CP /LIB64 /LD-LINUX-X86-64.entonces.2 lib64/
# CP/Bin/Bash Bin/

En este punto, todo está listo y podemos chrootear

# chroot /var /chroot
bash-4.2# ls /
bash: ls: comando no encontrado

De lo anterior puede ver que Bash está listo, pero no hay mucho que hacer, ya que ni siquiera el comando LS está disponible. En lugar de copiar manualmente todos los comandos y bibliotecas requeridas, he creado un script de bash simple para ayudar con este propósito. Cree un script con el siguiente contenido:

#!/bin/bash # Este script se puede usar para crear un entorno de chroot simple # Escrito por LinuxCareer.comunicarse  # (c) 2013 LinuxCareer en GNU GPL V3.0+ #!/bin/bash Chroot = '/var/chroot' mkdir $ Chroot para i en ps LDD ps | grep -V Dynamic | cortar -D "" -f 3 | sed 's/://' | clasificar | uniq ) hacer CP --Padres $ i $ chroot hecho # Arch AMD64 si [ -f /lib64 /ld-linux-x86-64.entonces.2 ]; entonces CP --Padres /lib64 /ld-linux-x86-64.entonces.2 /$ chroot FI # Arch i386 si [ -f /lib /ld-linux.entonces.2 ]; entonces CP --padres /lib /ld-linux.entonces.2 /$ chroot FI eco "La cárcel de chroot está lista. Para acceder a él ejecutar: chroot $ chroot "


Por defecto, el script anterior creará chroot in /var /chroot según lo definido por la variable $ chroot. Siéntase libre de cambiar esta variable de acuerdo con sus necesidades. Cuando esté listo, haga que el script se ejecute y ejecute con la ruta completa del archivo a sus ejecutables y archivos que desea incluir. Por ejemplo, si necesita: LS, CAT, ECHO, RM, BASH, VI Entonces usa el cual Comando para obtener una ruta completa y suministrarlo como un argumento al chroot anterior.SHIR SCRIPT:

# ./croot.sh/bin/ls, cat, echo, rm, bash/usr/bin/vi/etc/hosts
Chroot Jail está lista. Para acceder a él ejecutar: chroot /var /chroot

Ahora, puede acceder a su nueva cárcel Chroot con:


# chroot /var /chroot
bash-4.2# Echo LinuxCareer.com> archivo
bash-4.2# archivo CAT
Linuxcareer.comunicarse
bash-4.2# archivo rm
bash-4.2# VI -Versión
Vim - vi mejorado 7.3 (2010 15 de agosto, compilado el 4 de mayo de 2012 04:25:35)

Crear chroot usergroup

En este punto, necesitamos crear un USGerourp separado, que SSHD utilizará para redirigir a todos los usuarios que pertenecen a este grupo de usuarios a la cárcel de Chroot.

$ sudo groupadd chrootjail

Ahora, agregue los usuarios existentes a este grupo. Por ejemplo, para agregar el probador de usuario, ejecutaremos:

$ sudo adduser tester chrootjail
Agregar usuarios 'probador' a agrupar 'chrootjail' ..
Agregar probador de usuario a agrupar chrootjail
Hecho.


Configurar SSHD para la cárcel de chroot

Todo lo que queda es configurar SSHD para redirigir automáticamente a todos los usuarios desde el grupo de usuario de Chrootjail hasta la cárcel Chroot AT /VAR /Chroot. Esto se puede hacer fácilmente editar el archivo de configuración SSHD /etc/ssh/sshd_config. Agregue lo siguiente a/etc/ssh/sshd_config:

Match Group Chrootjail
Chrootdirectory/var/chroot/

y reiniciar ssh:

$ sudo servicio ssh reiniciar
ssh parada/espera
SSH Inicio/Ejecución, Proceso 17175

Inicie sesión en la cárcel de Chroot usando SSH

En este punto, puede probar su configuración iniciando sesión en su servidor con SSHD configurado:

$ ssh tester@localhost
La contraseña de tester@localhost:
-bash-4.2 $ LS
bin lib 64 USR
-bash-4.2 $

Luce familiar?

Conclusión

Como puede ver, configurar la cárcel SSH Chroot es un proceso bastante simple. Si un usuario no tiene su directorio de usuario doméstico disponible en una cárcel de chroot después de iniciar sesión, terminará en /. Puede crear y configurar aún más su chroot creando un directorio de inicio de usuario, definiendo el entorno bash, etc.

Tutoriales de Linux relacionados:

  • Directorio de usuario de la cárcel SSH a Home en Linux
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Cosas para instalar en Ubuntu 20.04
  • Una introducción a la automatización, herramientas y técnicas de Linux
  • Cómo eliminar el bloatware de su móvil Samsung Android ..
  • Sistema colgado de Linux? Cómo escapar a la línea de comando y ..
  • Cosas que hacer después de instalar Ubuntu 22.04 Jellyfish de Jammy ..
  • Cómo aprovechar al máximo OpenSsh
  • Mint 20: Mejor que Ubuntu y Microsoft Windows?
  • Cómo arrancar dual Kali Linux y Windows 10