Comment configurer sftp pour qu'un utilisateur ne puisse pas sortir de son répertoire personnel, en s'assurant qu'aucun autre utilisateur n'est affecté ? Eh bien, il existe un moyen facile de le faire. Nous pouvons chrooter tous les utilisateurs locaux dans le répertoire $HOME par défaut ou le faire uniquement pour un utilisateur spécifique. Ce message répertorie spécifiquement les étapes pour chrooter vsftpd uniquement pour des utilisateurs spécifiques.
CentOS / RHEL :Comment définir la prison chroot pour vsftp pour tous les utilisateursDéfinir chroot jail sur le répertoire $HOME par défaut pour tous les utilisateurs locaux sauf quelques-uns
1. Dans le fichier de configuration du serveur VSFTP /etc/vsftpd/vsftpd.conf, définissez :
# vi /etc/vsftpd/vsftpd chroot_local_user=YES chroot_list_enable=YES
2. Ajoutez des utilisateurs qui n'ont PAS besoin de chroot jail dans /etc/vsftpd/chroot_list dossier. Pour cet exemple, nous ajouterons les utilisateurs user01 et user02 :
# cat /etc/vsftpd/chroot_list user01 user02
3. Redémarrez le service vsftpd sur le serveur VSFTP :
# service vsftpd restart Shutting down vsftpd: [ OK ] Starting vsftpd for vsftpd: [ OK ]
4. Testez un utilisateur user01 défini sur chroot jail et créez un répertoire sous le répertoire chroot :
# ftp ftp_host Connected to ftp_host (192.168.149.10). 220 (vsFTPd 2.0.5) Name (192.168.149.10:root): user01 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> pwd 257 "/" ftp> ls 227 Entering Passive Mode (192.168.149.10,61,227) 150 Here comes the directory listing. 226 Directory send OK. ftp> cd / 250 Directory successfully changed. ftp> ls 227 Entering Passive Mode (192.168.149.10,61,163) 150 Here comes the directory listing. 226 Directory send OK. ftp> mkdir chroot_jail 257 "/chroot_jail" created ftp>
5. Vérifiez le répertoire créé sur le serveur VSFTP :
[root@ftp_host ~]# ls / | grep chroot_jail [root@ftp_host ~]# ls /home/user01/ | grep chroot_jail chroot_jail
6. Testez un utilisateur user03 qui est exclu du chroot jail :
[root@ftpclient ~]# ftp ftp_host Connected to ftp_host (192.168.149.10). 220 (vsFTPd 2.0.5) Name (192.168.149.10:root): user03 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> pwd 257 "/home/user03" ftp> cd / 250 Directory successfully changed. ftp> mkdir chroot_jail 257 "/chroot_jail" created ftp>
7. Vérifiez le répertoire créé sur le serveur VSFTP :
[root@ftp_host ~]# ls / | grep chroot_jail chroot_jail
Définissez chroot jail sur le répertoire $HOME par défaut pour seulement quelques utilisateurs locaux
1. Dans le fichier de configuration du serveur VSFTP /etc/vsftpd/vsftpd.conf , définissez :
chroot_list_enable=YESRemarque :Assurez-vous que "chroot_local_user ” n'est PAS défini sur "OUI “.
2. Répertorier les utilisateurs nécessitant une prison chroot dans /etc/vsftpd/chroot_list , ajoutez les utilisateurs user01 et user02 :
[root@ftp_host ~]# cat /etc/vsftpd/chroot_list user01 user02
3. Redémarrez le service vsftpd sur le serveur VSFTP :
[root@ftp_host ~]# service vsftpd restart Shutting down vsftpd: [ OK ] Starting vsftpd for vsftpd: [ OK ]
4. Testez un utilisateur user01 défini sur chroot jail et créez un répertoire sous le répertoire chroot :
[root@ftpclient ~]# ftp ftp_host Connected to ftp_host (192.168.149.10). 220 (vsFTPd 2.0.5) Name (192.168.149.10:root): user01 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> pwd 257 "/" ftp> ls 227 Entering Passive Mode (192.168.149.10,238,61) 150 Here comes the directory listing. 226 Directory send OK. ftp> cd / 250 Directory successfully changed. ftp> ls 227 Entering Passive Mode (192.168.149.10,83,211) 150 Here comes the directory listing. 226 Directory send OK. ftp> mkdir chroot_jail 257 "chroot_jail" created ftp>
5. Vérifiez le répertoire créé sur le serveur VSFTP :
[root@ftp_host ~]# ls / | grep chroot_jail [root@ftp_host ~]# ls /home/user01/ | grep chroot_jail chroot_jail
6. Testez un utilisateur user03 qui est exclu du chroot jail :
[root@ftpclient ~]# ftp ftp_host Connected to ftp_host (192.168.149.10). 220 (vsFTPd 2.0.5) Name (192.168.149.10:root): user03 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> pwd 257 "/home/user03" ftp> ls 227 Entering Passive Mode (192.168.149.10,231,117) 150 Here comes the directory listing. 226 Directory send OK. ftp> cd / 250 Directory successfully changed. ftp> mkdir chroot_jail 257 "chroot_jail" created ftp>
7. Vérifiez le répertoire créé sur le serveur VSFTP :
[root@ftp_host ~]# ls / | grep chroot_jail chroot_jail