%

SSH : ChrootDirectory fatal: bad ownership or modes for chroot directory

Article publié, le et modifié le
2 minutes de lecture

Cet article contient 289 mots.
Source brute de l'article :
Commit version : 90bf963

Description

S’il y a bien un mode qui en fait baver, c’est l’option ChrootDirectory pour le serveur SSH !

En effet, vous avez défini des utilisateurs qui ont le droit d’utiliser

  • càd de se connecter - à votre serveur SSH, et mieux, vous gérez cela finement par des accès de groupe, mais vous tenez absolument à emprisonner les utilisateurs dans leur répertoire privé, et c’est très bien !

Une règle, telle que la suivante devrait permettre d’agir ainsi, dans le fichier de config /etc/ssh/sshd_config :

Code : 

Match group sshusers
        ForceCommand internal-sftp
        ChrootDirectory /chroot/%u
Astuce

Mais, voilà, à chaque tentative de connexions, le serveur SSH vous jette et vous avertit de l’erreur suivante :

Citation :

Feb 12 19:56:30 server sshd[64689]: Accepted password for user from 192.168.xxx.yyy port 40829 ssh2 Feb 12 19:56:30 server sshd[64691]: fatal: bad ownership or modes for chroot directory "/chroot/user"

Ce qui bloque, ce sont les droits d’accès, vers le répertoire prison !

Il faut impérativement que les droits soient attribués à `root`, et en accès `0755`

Puis ensuite créer le répertoire utilisateur, et attribuer les droits à l’utilisateur en question

Code : 

# avec les droits administrateurs:
chmod 0755 /chroot
chown root:root /chroot
mkdir /chroot/user_id
chmod 0705 /chroot/user_id
chown user_id:user_id /chroot/user_id

Si vous aviez déjà créé les répertoires en question, vérifiez les droits d’accès et d’appartenances utilisateurs !

Voilà, à partir de ce moment-là, vous devriez pouvoir réussir enfin la connexion ssh.