Directorio de usuario de la cárcel SSH a Home en Linux
- 4684
- 545
- Jaime Delgadillo
El encarcelamiento de un usuario de SSH a su directorio de inicio le permite (el administrador) ejercer mucho control y seguridad sobre las cuentas de los usuarios en un sistema Linux.
El usuario encarcelado todavía tiene acceso a su directorio de inicio, pero no puede atravesar el resto del sistema. Esto mantiene todo lo demás en el sistema privado y evitará que algo sea manipulado por un usuario de SSH. Es una configuración ideal para un sistema que tiene varios usuarios y los archivos de cada usuario deben mantenerse privados y aislados de los demás.
En esta guía, le mostraremos las instrucciones paso a paso para encarcelar a un usuario de SSH a su directorio de inicio.
En este tutorial aprenderás:
- Cómo encarcelar el usuario del usuario de SSH al directorio de inicio
Categoría | Requisitos, convenciones o versión de software utilizada |
---|---|
Sistema | Cualquier distribución de Linux |
Software | Servidor openssh |
Otro | Acceso privilegiado a su sistema Linux como root o a través del sudo dominio. |
Convenciones | # - requiere que los comandos de Linux dados se ejecuten con privilegios raíz directamente como un usuario raíz o mediante el uso de sudo dominiops - Requiere que los comandos de Linux dados se ejecuten como un usuario regular no privilegiado |
Directorio de usuario de la cárcel a casa con chroot
Abra una terminal y prepárese para escribir muchos comandos, ya que el proceso para configurar un chroot seguro está bastante prolongado. Querrá elevar a la cuenta de usuario root o usar sudo para cada comando.
- Comience haciendo el directorio Chroot, que contendrá los diversos nodos, libs y shell para nuestros usuarios encarcelados.
# mkdir /var /chroot
- A continuación, copiemos algo esencial
/desarrollo
nodos al directorio chroot, que permite a los usuarios el uso básico del terminal.# mkdir/var/chroot/dev # cd/var/chroot/dev # mknod -m 666 null c 1 3 # mknod -m 666 tty c 5 0 # mknod -m 666 cero c 1 5 # mknod -m 666 aleator 1 8
- A continuación, establezca permisos en el directorio de chroot. El usuario raíz deberá poseer el directorio para asegurarse de que los usuarios encarcelados no puedan dejarlo. Otros usuarios solo pueden leer y ejecutar permisos.
# root chown: root /var /chroot # chmod 755 /var /chroot
- A continuación, le dé a nuestros usuarios encarcelados un shell. Usaremos el shell bash en este ejemplo, aunque podría usar uno diferente si quisiera.
# mkdir/var/chroot/bin # cp/bin/bash/var/chroot/bin
- La cáscara de Bash requiere varios
libraciones
para ejecutarse, por lo que también deberán copiarse en elcroote
directorio. Puedes ver quelibraciones
son necesarios con elLDD
dominio:# ldd /bin /bash linux-vdo.entonces.1 (0x00007ffd59492000) Libtinfo.entonces.6 =>/lib/x86_64-linux-gnu/libtinfo.entonces.6 (0x00007f91714cd000) libdl.entonces.2 =>/lib/x86_64-linux-gnu/libdl.entonces.2 (0x00007f91714c7000) libc.entonces.6 =>/lib/x86_64-linux-gnu/libc.entonces.6 (0x00007f91712d5000) /lib64 /ld-linux-x86-64.entonces.2 (0x00007f917163a000)
Copie esos archivos al directorio de chroot:
# mkdir -p/var/chroot/lib/x86_64-linux-gnu/var/chroot/lib64 # cp/lib/x86_64-linux-gnu/libtinfo.entonces.6, libdl.entonces.2, libc.entonces.6/var/chroot/lib/x86_64-linux-gnu # cp/lib64/ld-linux-x86-64.entonces.2/var/chroot/lib64
- Ahora podemos crear el usuario y establecer una contraseña para la cuenta.
# Ejemplo de userAdd # Ejemplo de aprobación
- Añade el
/etc/passwd
y/etc/grupo
archivos en el directorio de chroot.# mkdir/var/chroot/etc # cp/etc/passwd, group/var/chroot/etc
- A continuación, necesitamos hacer algo de edición en el archivo de configuración SSH. Usar
nano
o tu editor de texto favorito para abrirlo.# sudo nano/etc/ssh/sshd_config
Agregue las siguientes líneas a la parte inferior del archivo.
Ejemplo de usuario de coincidencia chrootdirectory /var /chroot
Configurar chroot para encarcelar a un usuario de SSHGuarde sus cambios y reinicie el servicio SSH para que los cambios entren en vigencia.
# SystemCTL reiniciar SSHD
- Cree un directorio de inicio para el usuario y le dé permisos adecuados.
# mkdir -p/var/chroot/home/ejemplo # Ejemplo de chown: ejemplo/var/chroot/home/ejemplo # chmod 700/var/chroot/home/ejemplo
- En este punto, el usuario debería poder iniciar sesión y usar comandos de bash nativos, pero no tendrán acceso a mucho. Déámenos acceso a más conceptos básicos como LS, CAT, ECHO, RM, VI, FECHA, MKDIR. En lugar de copiar manualmente todas las bibliotecas compartidas para estos comandos, puede usar el siguiente script para agilizar el proceso.
Copiar#!/bin/bash # Este script se puede usar para crear un entorno chroot simple # escrito por LinuxConfig.org # (c) 2020 LinuxConfig en GNU GPL V3.0+ #!/bin/bash chroot = '/var/chroot' mkdir $ chroot para i en $ (ldd $* | grep -v dinámica | corta -d "" -f 3 | sed 's/: //' | sort | uniq ) hacer cp--parents $ i $ chroot hecho # arch amd64 if [-f /lib64 /ld-linux-x86-64.entonces.2]; Luego CP--Parents /Lib64 /Ld-Linux-X86-64.entonces.2 /$ chroot fi # arch i386 if [-f /lib /ld -linux.entonces.2]; luego CP--parents /lib /ld-linux.entonces.2 /$ chroot fi echo "chroot cárcel está lista. Para acceder a él ejecutar: chroot $ chroot "
Usando ese script, habilitemos algunos de estos comandos.
# ./croot.sh /bin /ls, cat, eco, rm, vi, fecha, mkdir
Finalmente hemos terminado. Puede SSH con el usuario que creó para asegurarse de que todo funcione correctamente.
# ejemplo ssh@localhostEl usuario de SSH es encarcelado a la chroot pero tiene acceso a comandos básicos
Como puede ver, nuestro usuario tiene acceso a los comandos que le hemos dado y no puede acceder al resto del sistema fuera de Chroot.
Conclusión
En esta guía, vimos cómo encarcelar a un usuario de SSH a su directorio de inicio en Linux. Es un proceso largo, pero el script que hemos proporcionado debe ahorrar una gran cantidad de trabajo tedioso. Cailar a un usuario a un solo directorio es una muy buena manera de mantener la privacidad para los usuarios individuales en un servidor compartido.
Tutoriales de Linux relacionados:
- Cosas para instalar en Ubuntu 20.04
- Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
- Una introducción a la automatización, herramientas y técnicas de Linux
- Archivos de configuración de Linux: los 30 principales más importantes
- Cómo eliminar el bloatware de su móvil Samsung Android ..
- Manejo de la entrada del usuario en scripts bash
- ¿Puede Linux obtener virus?? Explorando la vulnerabilidad de Linux ..
- Mint 20: Mejor que Ubuntu y Microsoft Windows?
- Descarga de Linux
- Cómo arrancar dual Kali Linux y Windows 10
- « Cómo eliminar el usuario en el sistema Linux
- Encuentre todos los archivos que contienen texto específico »