J'ai une version 6.4 de CentOs avec Digital Ocean et je voudrais créer avec succès des utilisateurs SFTP et les emprisonner dans le répertoire personnel de chroot de l'utilisateur, mais je crains d'en faire un gâchis.
J'ai essayé beaucoup de choses, beaucoup trop pour les énumérer ici, car la plupart sont probablement incorrectes ou n'auront pas beaucoup de sens, mais ce que je pense être le bon processus et ce que j'ai essayé est: -
Créez un groupe pour sftp
: -
groupadd sftp
Créez un utilisateur et définissez son répertoire personnel: -
useradd -d /var/www/vhosts/domain.com dummyuser
Définissez un mot de passe pour l'utilisateur: -
passwd dummyuser
Changez le groupe d'utilisateurs en 'sftp': -
usermod -g sftp dummyuser
Définissez le shell de l'utilisateur sur /bin/false
: -
usermod -s /bin/false dummyuser
Modifier le sous-système dans sshd_config
( /etc/ssh/
): -
#Subsystem sftp /usr/lib/openssh/sftp-server
Subsystem sftp internal-sftp
Ajoutez ce qui suit au bas du sshd_config
fichier: -
Match group sftp
X11Forwarding no
ChrootDirectory %h
AllowTcpForwarding no
ForceCommand internal-sftp
Je m'assure que tous les répertoires suivants sont root:root
: -
/var
/var/www
/var/www/vhosts
/var/www/vhosts/domain.com
Si j'essaie ensuite de me connecter au serveur via SFTP avec l'utilisateur dummyuser
(dans WinSCP), j'obtiens ce qui suit: -
Authentication log (see session log for details):
Using username "dummyuser".
Authentication failed.
Tout ce que je veux réaliser, c'est emprisonner un utilisateur dans son répertoire personnel. J'ai également installé et configuré vsftpd. Les utilisateurs pouvaient se connecter correctement mais auraient accès à l'ensemble du serveur - je n'ai tout simplement pas réussi à obtenir de l'emprisonnement au travail.
Éditer
Oublié de mentionner, j'ai ensuite redémarré sshd
aussi: -
service sshd restart
Lorsque l'erreur est produite dans WinSCP, leur page d'aide à ce sujet est ici .
Résultats du journal
/var/log/secure
J'ai remplacé le nom réel du serveur par server_name
.
Apr 28 14:20:56 server_name sshd[9944]: Accepted password for dummyuser from 80.194.255.4 port 44402 ssh2
Apr 28 14:20:56 server_name sshd[9944]: pam_unix(sshd:session): session opened for user dummyuser by (uid=0)
Apr 28 14:20:56 server_name sshd[9946]: fatal: bad ownership or modes for chroot directory component "/var/www/vhosts/"
Apr 28 14:20:56 server_name sshd[9944]: pam_unix(sshd:session): session closed for user dummyuser
/var/log/secure
.
vhosts
est root:root
.
sshd
? Que contiennent les fichiers journaux sur le serveur?