0x01. BASH
Sous GNU/Linux et MacOSX bash est installé par défaut. Ce n'est pas le cas des *BSD.
C'est une particularité de Bash qui sera utilisée dans cette page : l'option "--restricted"
sudo ln /bin/bash /bin/rbash
Il faut ensuite l'ajouter à la liste des shells disponibles :
echo '/bin/rbash'|sudo tee -a /etc/shells
0x02. CREER UN COMPTE SPECIFIQUE
Pour des raisons de sécurité, l'accès SSH ne sera pas permi pour le compte courant.
Sous MacOSX, je n'ai pas trouvé la commande dans le terminal, il faut donc passer le panneau de préférences système :
Préférences système > Comptes
L'utilisateur n'est pas administrateur. C'est un compte standard.
Une fois le compte créé, il faut faire un clic droit (ou CTRL+clic sur un *Mac) et choisir comme shell : /bin/rbash
Pour le restreindre encore plus : (voir Chapitre 4 pour l'intérêt de restreindre le PATH)
mkdir -p /opt/chroot/ cp /bin/* /opt/chroot/ rm -fv /opt/chroot/*sh*
Dans le .bashrc de ce compte, ajouter ou mettre :
export PATH=/opt/chroot
Puis protéger les dossiers & fichiers :
chmod 550 /Users/UtilisateurSSH chmod 550 /Users/UtilisateurSSH/.bashrc
Sous MacOSX on peut supprimer les dossiers inutiles créés (pour un compte SSH uniquement)
rm -rf /Users/UtilisateurSSH/{Desktop,Documents,Downloads,Library,Movies,Music,Pictures,Sites,Public}
0x03. CONFIGURER SSH
Préférences système > Partage > Session à distance : Uniquement ces utilisateurs
Et choisir et l'utilisateur tout juste créé.
rbash-3.2$ cd / rbash: cd: restricted rbash-3.2$ export PATH=/sbin rbash: PATH: readonly variable rbash-3.2$
=> Écrit par : Nicolas, le 04 janvier 2012