#addacl GroupeAUF:read,write = Limitation des accès shell au serveur = == Outils utilisé : LSHELL == * https://github.com/ghantoos/lshell * http://lshell.ghantoos.org * http://www.informathic.com/post/2010/01/25/Restriction-utilisation-Shell-avec-Lshell * http://blog.gaetan-grigis.eu/systeme/limiter-les-droits-dun-utilisateur-sur-debianubuntu-lshell == Exemple de configuration (pour l'envoie de la LUF) == NB : lshell n'étant disponible que dans squeeze (le serveur est sous Lenny), j'ai fais une installation manuellement après avoir téléchargé l'archive. NB : backports pour lenny http://www.simc.be/debian/pool/main/l/lshell/ * configuration de lshell {{{ [global] logpath : /var/log/lshell/ loglevel : 4 [default] allowed : ['ls','echo','cd','ll'] forbidden : [';', '&', '|','`','>','<', '$(', '${'] warning_counter : 3 aliases : {'ll':'ls -l', 'vi':'vim'} intro : "== Serveur ceca.auf.org ==\nBienvenue : vous etes dans un shell a acces limite -- soyez prudent !\nTaper '?' ou 'help' pour avoir la liste des les commandes que vous pouvez utiliser" overssh : ['ls', 'rsync'] [grp:letters-senders] allowed : ['ls','cd','mv','vi','rm','passwd','at','/usr/local/sbin/envoie-lettres/scripts/job','/usr/local/sbin/envoie-lettres/scripts/lettre-info-envoi.sh'] # A VOIR : ajouter /usr/local/sbin/envoie-lettres/scripts à la variable env_path, et autoriser toutes les commandes de ce dossiers # les utilisateurs ne peuvent accéder qu'à ce dossiern en plus de leur home path : ['/usr/local/sbin/envoie-lettres'] # les commandes qu'on peut lancer par ssh overssh : ['scp','/usr/local/sbin/envoie-lettres/scripts/job','/usr/local/sbin/envoie-lettres/scripts/lettre-info-envoi.sh','at'] scp : 1 #scpforce : '/usr/local/sbin/envoie-lettres' ==> désactivé car on n'avait même plus accès aux sous-répertoires du dossier concerné }}} * configuration des comptes utilisateurs * mettre le shell des comptes concernés à /usr/bin/lshell * dans mon cas : j'ai créé un groupe "letters-senders" et y ai ajouté tous ceux qui doivent envoyer des lettres et donc passer par lshell * config ssh ordinaire, avec la clé public dans le home de l'utilisateur