Sur Ubuntu 11.10, j'ai trouvé que je pouvais le bloc de commandes ssh, envoyé avec et sans l'option-T, et de bloquer scp copie, tout en permettant la redirection de port.
Plus précisément, j'ai un redis-server sur "somehost" lié à localhost:6379 que je souhaite partager en toute sécurité via les tunnels ssh à d'autres hôtes qui ont un keyfile et ssh, avec:
$ ssh -i keyfile.rsa -T -N -L 16379:localhost:6379 someuser@somehost
Ce sera la cause de la redis-le serveur "localhost" port 6379 sur "somehost" apparaissent localement sur l'ordinateur hôte de l'exécution de la commande ssh, réadressé à "localhost" port 16379.
Sur la télécommande "somehost" Voici ce que j'ai utilisé pour authorized_keys:
cat .ssh/authorized_keys (portions redacted)
no-pty,no-X11-forwarding,permitopen="localhost:6379",command="/bin/echo do-not-send-commands" ssh-rsa rsa-public-key-code-goes-here keyuser@keyhost
Le non-pty voyages plus ssh tentatives qui veulent ouvrir un terminal.
Le permitopen explique quels sont les ports peuvent être transférées, dans ce cas, le port 6379 le redis-server port je voulais avant.
La commande="/bin/echo do-not-send-commandes de" l'écho de retour "do-not-send-commandes" si quelqu'un ou quelque chose ne réussit pas à envoyer des commandes à l'ordinateur hôte via ssh -T ou autrement.
À partir d'un récent Ubuntu man sshd
, authorized_keys / commande est décrite comme suit:
command="commande"
Spécifie que la commande est exécutée à chaque fois que cette touche est utilisée
pour l'authentification. La commande fournie par l'utilisateur (le cas échéant) est
ignoré.
Les tentatives d'utilisation de scp sécurisé des fichiers de la copie échoue également avec un écho de "do-not-send-commandes" j'ai trouvé sftp échoue également avec cette configuration.
Je pense que le shell restreint suggestion, faite dans certaines réponses précédentes, est également une bonne idée.
Aussi, je suis d'accord que tout détaillé ici pourrait être déterminée à partir de la lecture de "l'homme sshd" et la recherche qui y est pour "authorized_keys"