Le 10/01/2013 19:19, JC PAROLA a écrit :
[...]
Solution simpliste qui n'est pas adaptée au final à votre cas car ne permettant pas de laisser l'accès "complet" à un shell à l'utilisateur mais pratique si l'on veut restreindre à l'usage de rsync (ou de scripts/commandes données) là où rssh par exemple limitera l'accès au seul SFTP (rsync impossible) et où lshell sera bien plus complexe :

   Mettre dans le .ssh/authorized_keys2 :

       
command="/root/.ssh/validate-ssh.sh",no-pty,no-agent-forwarding,no-port-forwarding
       ssh-rsa LA_CLE_SSH_ICI
       (possibilité aussi de limiter à certaines IP en rajoutant from="IP"

   Puis dans le validate-ssh.sh (si commande contient des caractères
   permettant d'échapper tels que ;`&| elle est rejetée et doit ensuite
   correspondre à l'un des cas autorisés) :

       #!/bin/mksh
       case "$SSH_ORIGINAL_COMMAND" {
            (*\&*|*\(*|*\{*|*\;*|*\<*|*\`*|*\|*)
                print "Rejected"
            ;;
            ("rsync --server"*)
                ionice -c3 nice $SSH_ORIGINAL_COMMAND
            ;;
            ("/root/unscript.sh"|"/root/autrescript.sh")
                "$SSH_ORIGINAL_COMMAND"
            ;;
            (*)
                print "Rejected"
            ;;
       }

_______________________________________________
Liste de diffusion du FRsAG
http://www.frsag.org/

Répondre à