J'ai l'intention de créer une deuxième sshd
sur un port non privilégié (par exemple 2222) avec mon propre fichier de configuration.
Il est évident que le sshd
Le processus ne peut pas setuid
Ainsi, en se connectant en tant qu'utilisateur autre que celui qui exécute l'application sshd
est manifestement impossible.
Cependant, est-il possible d'avoir une sshd
qui fonctionnera pour l'utilisateur en cours d'exécution ? Pour mon cas d'utilisation, ce serait parfait.
J'ai essayé de démarrer un sshd
avec mon propre fichier de configuration et ma propre clé d'hôte et l'instance sshd
démarre (je ne me plains pas de ne pas être root, comme certaines commandes), mais lorsque j'essaie de me connecter à ce port, la commande sshd
Le processus s'arrête.
$ /usr/sbin/sshd -dD -h .ssh/id_rsa -p 2222
debug1: sshd version OpenSSH_5.6p1
debug1: read PEM private key done: type RSA
debug1: private host key: #0 type 1 RSA
debug1: setgroups() failed: Operation not permitted
debug1: rexec_argv[0]='/usr/sbin/sshd'
debug1: rexec_argv[1]='-dD'
debug1: rexec_argv[2]='-h'
debug1: rexec_argv[3]='.ssh/id_rsa'
debug1: rexec_argv[4]='-p'
debug1: rexec_argv[5]='2222'
debug1: Bind to port 2222 on 0.0.0.0.
Server listening on 0.0.0.0 port 2222.
debug1: Bind to port 2222 on ::.
Server listening on :: port 2222.
debug1: fd 6 clearing O_NONBLOCK
debug1: Server will not fork when running in debugging mode.
debug1: rexec start in 6 out 6 newsock 6 pipe -1 sock 9
debug1: inetd sockets after dupping: 5, 5
Connection from ::1 port 57670
debug1: Client protocol version 2.0; client software version OpenSSH_5.6
debug1: match: OpenSSH_5.6 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.6
debug1: list_hostkey_types:
No supported key exchange algorithms
debug1: do_cleanup
debug1: do_cleanup
debug1: audit_event: unhandled event 12
En debug1: setgroups() failed: Operation not permitted
se détache manifestement, mais elle ne meurt pas tant qu'elle n'essaie pas d'accepter une connexion.