2 votes

Configuration Unix Shell/SSH pour permettre le transfert de port TCP sans afficher une invite de commande

J'utilise une Debian Linux. J'aimerais avoir un compte utilisateur capable de se connecter via SSH pour la redirection TCP. nur sans invite de commande.

Par exemple, l'opération suivante fonctionnerait (à partir d'un ordinateur distant) :

ssh -D1234 user@myhost

mais aucune invite de commande n'apparaît.

L'utilisation d'un Shell comme /bin/false ou /sbin/nologin est trop restrictive car elle ne permet même pas à l'utilisateur de se connecter. Un Shell qui n'autorise que les commandes "exit" ou Ctrl+D ferait l'affaire.

Je sais que quelque chose de similaire est possible pour n'autoriser que SFTP, mais je ne trouve pas l'équivalent pour la redirection TCP.

Merci

6voto

tylerl Points 14785

On dirait que vous cherchez le -N option :

-N      Do not execute a remote command.  This is useful 
        for just forwarding ports (protocol version 2 only).

Comme ça :

ssh -D 8080 -N foo@bar.com

Vous pouvez également consulter le -f option :

 -f      Requests ssh to go to background just before command execution.  
         This is useful if ssh is going to ask for passwords or passphrases, 
         but the user wants it in the background.  This implies -n. 
         The recommended way to start X11 programs at a remote site is 
         with something like ssh -f host xterm.

Si vous voulez restreindre ce que les connexions entrantes peuvent :

  • Configurez une commande personnalisée dans votre authorized_keys (en supposant que vous utilisez des clés ssh)
  • Modifier le Shell de votre utilisateur

La commande/Shell que vous utilisez dépend de ce que vous voulez autoriser. Par exemple :

  • /bin/cat maintiendra la connexion ouverte mais ne fera absolument rien
  • rssh vous permettra de personnaliser les actions disponibles.
  • Un chroot jailed Shell fournira une personnalisation similaire.
  • bash peut être exécuté en mode restreint ( rbash ) qui vous permet uniquement d'exécuter des commandes dans votre configuration PATH . Ce n'est pas infaillible, mais c'est mieux que rien.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X