2 votes

Accepter toute connexion SSH indépendamment de la clé du client

Imaginez que je suis en train de mettre en place un pot de miel, quel serait le moyen le plus rapide de configurer SSHD pour qu'il accepte n'importe quelle connexion ? et oui, ce n'est vraiment pas sécurisé, alors s'il vous plaît ne copiez pas :-)

Cela pourrait être utile (mettre pam_permit sur le auth stack)... Je n'ai pas beaucoup d'expérience avec PAM, et je suis en train de lire la documentation.

https://unix.stackexchange.com/questions/124187/accept-any-private-key-for-authentication


Pour situer le problème, j'ai un ordinateur client qui est derrière un pare-feu, et il essaie de configurer un tunnel SSH inverse en se connectant d'abord à l'extérieur (pour que je puisse me connecter à l'intérieur)... bien qu'il continue à essayer de se connecter, c'est comme si la clé qu'il utilise n'était plus valide (ce qui est étrange) ou que quelque chose d'autre échouait.

Les journaux des serveurs montrent que le client ferme la connexion, les autres clients peuvent se connecter sans problème...

debug1: Forked child 29472.
Set /proc/self/oom_score_adj to 0
debug1: rexec start in 5 out 5 newsock 5 pipe 7 sock 8
debug1: inetd sockets after dupping: 3, 3

Connection from CLIENT_IP port 46186
debug1: Client protocol version 2.0; client software version OpenSSH_6.0p1 Debian-4+deb7u2
debug1: match: OpenSSH_6.0p1 Debian-4+deb7u2 pat OpenSSH*

debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.0p1 Debian-4+deb7u2
debug1: permanently_set_uid: 105/65534 [preauth]
debug1: list_hostkey_types: ssh-rsa,ssh-dss [preauth]
debug1: SSH2_MSG_KEXINIT sent [preauth]
debug1: SSH2_MSG_KEXINIT received [preauth]
debug1: kex: client->server aes128-ctr hmac-md5 none [preauth]
debug1: kex: server->client aes128-ctr hmac-md5 none [preauth]

debug1: expecting SSH2_MSG_KEX_ECDH_INIT [preauth]

debug1: SSH2_MSG_NEWKEYS sent [preauth]
debug1: expecting SSH2_MSG_NEWKEYS [preauth]
debug1: SSH2_MSG_NEWKEYS received [preauth]
debug1: KEX done [preauth]
debug1: userauth-request for user tunnel service ssh-connection method none [preauth]
debug1: attempt 0 failures 0 [preauth]
debug1: PAM: initializing for "tunnel"
debug1: PAM: setting PAM_RHOST to "server"
debug1: PAM: setting PAM_TTY to "ssh"
debug1: userauth-request for user tunnel service ssh-connection method publickey [preauth]
debug1: attempt 1 failures 0 [preauth]
debug1: test whether pkalg/pkblob are acceptable [preauth]
debug1: Checking blacklist file /usr/share/ssh/blacklist.DSA-1024
debug1: Checking blacklist file /etc/ssh/blacklist.DSA-1024
debug1: temporarily_use_uid: 1001/1001 (e=0/0)
debug1: trying public key file /home/tunnel/.ssh/authorized_keys
debug1: fd 4 clearing O_NONBLOCK

debug1: restore_uid: 0/0
debug1: temporarily_use_uid: 1001/1001 (e=0/0)
debug1: trying public key file /home/tunnel/.ssh/authorized_keys2
debug1: Could not open authorized keys '/home/tunnel/.ssh/authorized_keys2': No such file or directory
debug1: restore_uid: 0/0
Failed publickey for tunnel from CLIENT_IP port 46186 ssh2
Connection closed by CLIENT_IP [preauth]
debug1: do_cleanup [preauth]
debug1: monitor_read_log: child log fd closed
debug1: do_cleanup
debug1: PAM: cleanup
debug1: Killing privsep child 29473

3voto

Craig Francis Points 603

Cela a fonctionné... mais comme cela supprime toute forme d'authentification, NE LE FAITES PAS...

/etc/pam.d/sshd
    auth    required    pam_permit.so

Où toutes les autres lignes qui commencent par auth (c'est-à-dire le module) ont été commentés... vous devez également vérifier si les fichiers @include car elles peuvent inclure des fichiers qui définissent d'autres auth modules, par exemple

#@include common-auth

Ensuite, j'ai dû m'assurer que la configuration du SSHD ne définissait aucun de ces paramètres :

/etc/ssh/sshd_config

  # PasswordAuthentication no
  # ChallengeResponseAuthentication no
  # GSSAPIAuthentication no
  # UsePAM no

Et pour faire bonne mesure, un mot de passe a été défini sur le compte (autrement traité comme désactivé).

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