GNU/Linux >> Tutoriels Linux >  >> Linux

CentOS / RHEL :Comment définir la prison chroot pour vsftp uniquement pour des utilisateurs spécifiques

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 utilisateurs

Dé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=YES
Remarque  :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


Linux
  1. CentOS / RHEL :Comment autoriser ou refuser aux utilisateurs de se connecter au serveur VSFTP

  2. Comment définir l'affinité CPU pour le processus SYSTEMD dans CentOS/RHEL 7

  3. CentOS / RHEL 6 :Comment limiter les ressources mémoire pour un utilisateur spécifique à l'aide de cgroups

  4. Comment différencier un répertoire uniquement pour les fichiers d'un type spécifique ?

  5. Comment définir umask pour un utilisateur système ?

Comment configurer SSH sur CentOS et RHEL

CentOS / RHEL :Comment configurer SFTP pour Chroot Jail uniquement pour un groupe spécifique

CentOS / RHEL :Comment définir la prison chroot pour vsftp pour tous les utilisateurs

CentOS / RHEL :Comment configurer la prison chroot SFTP

Comment définir l'ID de processus sous Linux pour un programme spécifique

Comment chown répertoire pour plusieurs utilisateurs?