User Tools

Site Tools


cluster:chroot_eadb

Chroot users, ejemplo para EADB

reescrito porque tenia errores antes

Lo que quiero hacer

Quiero que cada usuario de eadb entre en su directorio y no vea absolutamente mas nada. Voy a crear un subsistema basico para cada usuario y cuando entre va a parecer que esta solo en la maquina.

Como lo hago

Ejemplo, usuario: eadb2. Para crear un entorno virtual en /nas/eadb/eadb2 ,

[root@detritus ~]# mkdir -p /nas/eadb/eadb2
[root@detritus ~]# mkdir -p /nas/eadb/eadb2/var/lib/rpm
[root@detritus ~]# rpm --rebuilddb --root=/nas/eadb/eadb2
[root@detritus ~]# rpm -i --root=/nas/eadb/eadb2 --nodeps centos-release-6-10.el6.centos.12.3.x86_64.rpm
warning: centos-release-6-10.el6.centos.12.3.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
[root@detritus ~]# yum --installroot=/nas/eadb/eadb2 install -y rpm-build yum
Loaded plugins: fastestmirror, refresh-packagekit, security
Setting up Install Process
....

y ahora hemos de crear los dispositivos virtuales, dar permisos correctos, etc

[root@detritus ~]# cd /nas/eadb/eadb2/
[root@detritus eadb2]# chown root:root /nas/eadb/eadb2
[root@detritus eadb2]# chmod 0755 /nas/eadb/eadb2 -R
[root@detritus eadb2]# mknod -m 666 null c 1 3
[root@detritus eadb2]# mknod -m 666 tty c 5 0
[root@detritus eadb2]# mknod -m 666 zero c 1 5
[root@detritus eadb2]# mknod -m 666 random c 1 8

Ahora ya creas el usuario

[root@detritus eadb2]# useradd -d /home/eadb2 eadb2
[root@detritus eadb2]# passwd eadb2
Changing password for user eadb2.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

Ahora copias el user y el skeleton al home de la maquina virtual,

[root@detritus eadb2]# grep eadb2 /etc/passwd >> etc/passwd
[root@detritus eadb2]# grep eadb2 /etc/group >> etc/group
[root@detritus eadb2]# cp -r /home/eadb2 home/

ahora se ha de editar el /etc/ssh/sshd_config y añadir estas lineas al final

Match User eadb2
ChrootDirectory /nas/eadb/eadb2

y reiniciar el sshd

[root@detritus eadb2]# service sshd restart
Stopping sshd:                                             [  OK  ]
Starting sshd:                                             [  OK  ]

Donde pongo lo que quiero compartir:

Aunque el usuario tendra en principio acceso a la maquina virtual en si, lo que se desee compartir debe ir, en este caso a:

/nas/eadb/eadb2/home/eadb2/

cluster/chroot_eadb.txt · Last modified: 2020/08/04 10:58 (external edit)