Mostra la pàginaRevisions anteriorsQuè hi enllaçaExporta a PDFTorna dalt Aquesta pàgina és només de lectura. Podeu veure'n el codi font, però no podeu canviar-la. Consulteu el vostre administrador si penseu que això és degut a algun error. = chroot (enjaulado) los usuarios se quedan encerrados en un directorio y no pueden salir de ahí (excepciones con ''mount %%--%%bind'') <code bash sshd_config> # override default of no subsystems ##Subsystem sftp /usr/libexec/openssh/sftp-server Subsystem sftp internal-sftp # Example of overriding settings on a per-user basis #Match User anoncvs # X11Forwarding no # AllowTcpForwarding no # ForceCommand cvs server AllowGroups ConexionSFTP Match group ConexionSFTP ChrootDirectory /home/conexionesdftp ForceCommand internal-sftp </code> * http://debianyderivadas.blogspot.com.es/2011/03/enjaular-sftp-algunos-usuarios.html * http://www.esdebian.org/wiki/enjaulado-sftp == ssh chroot * paso a paso: [[https://www.tecmint.com/restrict-ssh-user-to-directory-using-chrooted-jail/]] * <code bash>mkdir -p /home/test ls -l /dev/{null,zero,stdin,stdout,stderr,random,tty} mkdir -p /home/test/dev/ cd /home/test/dev/ mknod -m 666 null c 1 3 mknod -m 666 tty c 5 0 mknod -m 666 zero c 1 5 mknod -m 666 random c 1 8 chown root:root /home/test chmod 0755 /home/test ls -ld /home/test mkdir -p /home/test/bin cp -v /bin/bash /home/test/bin/ ldd /bin/bash mkdir -p /home/test/lib64 cp -v /lib64/{libtinfo.so.5,libdl.so.2,libc.so.6,ld-linux-x86-64.so.2} /home/test/lib64/ useradd tecmint passwd tecmint mkdir /home/test/etc cp -vf /etc/{passwd,group} /home/test/etc/</code> * ''vi /etc/ssh/sshd_config'':<code>#define username to apply chroot jail to Match User tecmint #specify chroot jail ChrootDirectory /home/test</code> * <code bash>systemctl restart sshd</code> * test de conexión. Sin comandos externos. * añadir $HOME y otros comandos:<code bash>mkdir -p /home/test/home/tecmint chown -R tecmint:tecmint /home/test/home/tecmint chmod -R 0700 /home/test/home/tecmint cp -v /bin/ls /home/test/bin/ cp -v /bin/date /home/test/bin/ cp -v /bin/mkdir /home/test/bin/ ldd /bin/ls cp -v /lib64/{libselinux.so.1,libcap.so.2,libacl.so.1,libc.so.6,libpcre.so.1,libdl.so.2,ld-linux-x86-64.so.2,libattr.so.1,libpthread.so.0} /home/test/lib64/ </code> == quick reference - crear grupo : <code bash>groupadd sftpusers</code> - añadir usuario: <code bash>useradd -g sftpusers -d /incoming -s /sbin/nologin guestuser; passwd guestuser</code> * o modificar uno existente: <code bash>usermod -g sftpusers -d /incoming -s /sbin/nologin john</code> - modificar **/etc/ssh/sshd_config**:<code bash> #Subsystem sftp /usr/libexec/openssh/sftp-server Subsystem sftp internal-sftp</code> - añadir al final del fichero **/etc/ssh/sshd_config**:<code bash> Match Group sftpusers ChrootDirectory /sftp/%u ForceCommand internal-sftp</code> * en este caso, el directorio usado para almacenar los usuarios de SFTP es **/sftp/<user>/** - comprobar que esté habilitado el login por contraseña en **/etc/ssh/sshd_config**:<code bash> PasswordAuthentication no</code> - crear el directorio home : en este caso <code bash>mkdir -p /sftp/guestuser/incoming</code> - asignar permisos (respetar el root:root de **/sftp/** y **/sftp/guestuser/**): <code bash>chown guestuser:sftpusers /sftp/guestuser/incoming</code> - reiniciar el servicio: <code bash>service sshd restart</code> /via: [[https://www.thegeekstuff.com/2012/03/chroot-sftp-setup]] == umask en conexiones SFTP enjauladas método 1 (no probado): <code bash sshd_config> Subsystem sftp internal-sftp -u 0002 </code> http://jeff.robbins.ws/articles/setting-the-umask-for-sftp-transactions método 2 (probado, funciona): <code bash sshd_config> Subsystem sftp internal-sftp UsePAM yes Match user username ChrootDirectory /path/to/directory ForceCommand internal-sftp </code> <code bash /etc/pam.d/sshd> session optional pam_umask.so umask=0002 </code> <code bash /etc/profile> umask 022 # añadir al fichero para que las sesiones interactivas tengan un umask diferente al establecido en ''/etc/pam.d/sshd'' </code> * [[http://sysadmin.circularvale.com/server-config/setting-a-umask-for-chrooted-sftp-users/]] * otras opciones? (2019-11-11): [[https://rm-rf.es/configurar-umask-para-sesiones-sftp/]] linux/ssh/chroot.txt Darrera modificació: 08/05/2024 02:29per mate