Apparence
Uubu.fr

Les systèmes Linux, l’open source, les réseaux, l’interopérabilité, etc.
« Il vaut mieux viser la perfection et la manquer que viser l’imperfection et l’atteindre. » (Bertrand Arthur William RUSSEL)
28 mars 2016

shell sécurité           Accès distant


restricted-ssh-commands

restricted-ssh-commands

Restreindre les utilisateurs SSH à un jeu prédéfinis de commandes

   restricted-ssh-commands est conçu pour être appelé par SSH pour restreindre un utilisateur à lancer uniquement certaines commandes. Une liste d'expressions régulière permises peuvent être configurés dans /etc/restricted-ssh-commands. La commande demandé doit correspondre à au moins une expression régulière. Sinon elle sera rejetée.

   Le paramètre optionnel est le nom du fichier de configuration sous /etc/restricted-ssh-commands à utiliser. Si omis, le nom de l'utilisateur sera utilisé.

Créer un fichier de configuration dans /etc/restricted-ssh-commands/$config et ajouter la ligne suivant dans ~/.ssh/authorized_keys pour l'utiliser:
command="/usr/lib/restricted-ssh-commands",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-rsa [...]

Codes de sortie

124 Le fichier de configuration contient au moins une expression régulière, mais la commande demandée ne matche pas
125 Pas de fichier de configuration ou ne contient pas d'expressions régulière

Exemple

Supposons un dépôt de package Debian sur un hôte en utilisant reprepro pour uploader les paquets. La configuration de package est dans /srv/reprepro, et le fichier de configuration est /etc/restricted-ssh-commands/reprepro contenant les expressions régulières suivante:
^scp -p( -d)? -t( --)? /srv/reprepro/incoming(/[^ /]*)?$
^chmod 0644 /srv/reprepro/incoming/[^ /]*$
^reprepro ( -V)? -b /srv/reprepro processincoming foobar$