chrooter un utilisateur (SSH)

Tous les sujets touchant à la sécurité du système.
Répondre
mpedro
Messages : 1517
Enregistré le : dim. 8 nov. 2015 22:13
Contact :

chrooter un utilisateur (SSH)

Message par mpedro »

... d'abord se référer au sujet Réseau SSH (secure shell) pour une meilleure compréhension ou bien via les nombreuses références du net https://www.forum-francophone-linuxmint ... =29&t=2188" onclick="window.open(this.href);return false;

Image

Enfermer un utilisateur dans un chroot, c'est à dire l'isoler dans une prison sans avoir accès au système. D'une prison d'où on ne s'évade pas... (théoriquement). Facile à mettre en place.

Création d'un groupe nommé photos_famille

Code : Tout sélectionner

groupadd photos_famille
Création d'un utilisateur appartenant au groupe photos_famille

Code : Tout sélectionner

useradd -m soeur
passwd soeur
usermod -a -G photos_famille soeur
un home soeur existe maintenant


Il faut que root ai accès au home (obligatoire sinon ça ne fonctionnera pas)

Code : Tout sélectionner

chown root: /home/soeur
(attention à ne pas mixer la création d'utilisateurs en mode graphique et en ligne de commande sinon ce sera le bordel pour s'y retrouver donc n'utiliser qu'une seule méthode)


Installation de bash-static et création du répertoire bin puis copie de bash-static dans /home/soeur/bin

Code : Tout sélectionner

apt-get install bash-static
mkdir /home/soeur/bin
cp /bin/bash-static /home/soeur/bin/
Ouverture du fichier sshd_config

Code : Tout sélectionner

sudo xed /etc/ssh/sshd_config*
Ajout dans sshd_config

Code : Tout sélectionner

UsePAM yes
Subsystem sftp internal-sftp
Match user soeur  # ou # Match group famille
ChrootDirectory /home/soeur # ou # ChrootDirectory /home/%u
X11Forwarding no
AllowTcpForwarding no
Redémarrer le serveur sshd et vérifier son status (actif)

Code : Tout sélectionner

service ssh restart
service ssh status
Ensuite vous pouvez utiliser par ex nemo ou filezilla pour se connecter au serveur sshd et vérifier que l'utilisateur soit bien enfermé dans son shell
Modifié en dernier par mpedro le mar. 19 juil. 2016 11:59, modifié 18 fois.
Stretch 32bits cinnamon/Fedora25/Sarah
Compaq 8510p/MSI GE70/Raspberry Pi2

mpedro
Messages : 1517
Enregistré le : dim. 8 nov. 2015 22:13
Contact :

Re: chrooter un utilisateur (SSH)

Message par mpedro »

Par la suite... on sécurise sshd_config (redirection de port etc, failband2 ou Iptables donc prioritaire...).
Maintenant le serveur est mis en place, confiné tout les utilisateur's, chacun avec un répertoire home nominatif; ils n'ont pas accès au shell (shell restreint) des autres utilisateurs. Ils peuvent naviguer, visualiser et faire des modifications de fichiers.

En créant des groupes utilisateurs on peut définir leurs accès : chrooté, pas chrooté etc.

L'intérêt de la création des prisons chroot est la séparation des environnements de serveurs de l'environnement principal du serveur. Si votre serveur emprisonné est compromis, vous n'avez pas à craindre que le serveur hôte (c'est le PC) soit infecté. Il vous suffit donc de remplacer l'environnement chroot compromis par une sauvegarde propre.

Pour aller plus loin dans la notion de chroot, voir rssh, schroot, debootstrap ...
Modifié en dernier par mpedro le dim. 24 juil. 2016 12:48, modifié 8 fois.
Stretch 32bits cinnamon/Fedora25/Sarah
Compaq 8510p/MSI GE70/Raspberry Pi2

Avatar du membre
débitant
modérateur
Messages : 11564
Enregistré le : mar. 14 juil. 2015 18:22
Localisation : Lorraine France

Re: chrooter un utilisateur (SSH)

Message par débitant »

c'est donc comparable au fameux bacs à sable ?
un genre de mach vir ? ;)

mpedro
Messages : 1517
Enregistré le : dim. 8 nov. 2015 22:13
Contact :

Re: chrooter un utilisateur (SSH)

Message par mpedro »

Les enfants adorent les bacs à sable ;)

Est-ce que ce n'est pas de la virtualisation un bac à sable je ne sais pas ce que c'est.
Stretch 32bits cinnamon/Fedora25/Sarah
Compaq 8510p/MSI GE70/Raspberry Pi2

Répondre