SFTP en Chroot
Par Bishop le mardi 22 juillet 2014, 10:45 - Administration - Lien permanent
Pour réaliser cette recette, il nous faut un utilisateur (Lazare) et sshd. Ce dernier pourra utiliser le SFTP, mais pourra pas se connecter en ssh au serveur. De plus il sera restreint (jail) dans sont répertoire utilisateur (home)
Nous commençons par crée un groupe dédié au utilisateurs SFTP :
Si Lazare n'existe pas, nous le crééons :
Sinon :
* pour changer le répertoir utilisateur, utiliser l'option
Nous éditons ensuite le fichier de configuration ssh
Il faut commenter la ligne :
et ajouter les options suivantes :
Pour finir cette étape, nous redémarrons le service :
Nous devons ensuite attribuer les droits sur le dossier utilisateurs :
Nous commençons par crée un groupe dédié au utilisateurs SFTP :
# groupadd sftp_users
Si Lazare n'existe pas, nous le crééons :
# useradd -G sftp_users -s /sbin/nologin lazare
# passwd lazare
Sinon :
usermod –G sftp_users -s /sbin/nologin
* pour changer le répertoir utilisateur, utiliser l'option
-d
dans les deux cas précédents.Nous éditons ensuite le fichier de configuration ssh
/etc/ssh/sshd_config
.Il faut commenter la ligne :
#Subsystem sftp /usr/libexec/openssh/sftp-server
et ajouter les options suivantes :
Subsystem sftp internal-sftp
Match Group sftp_users
X11Forwarding no
AllowTcpForwarding no
ChrootDirectory %h
ForceCommand internal-sftp
Pour finir cette étape, nous redémarrons le service :
# service sshd restart
Nous devons ensuite attribuer les droits sur le dossier utilisateurs :
# chmod 755 /home/lazare # chown root /home/lazare # chgrp -R sftp_users /home/lazareLe tour est joué :)
Commentaires
Petite correction :
usermod –G sftp_users -s /sbin/nologin lazard
Il manque le username dans l'article.