Je sais qu'il y a des dizaines de questions ici sur la façon de se connecter à un serveur SSH sans taper votre mot de passe à chaque fois , et la réponse est toujours «utilisez une clé publique». Eh bien, je me retrouve dans la rare circonstance où ce n'est vraiment pas une option. Pour une raison inexplicable, le démon OpenSSH sur le serveur auquel j'essaie de me connecter est configuré avec
RSAAuthentication no
PubkeyAuthentication no
dans /etc/ssh/sshd_config
. Je n'ai aucun accès administratif sur le serveur, je ne peux donc pas modifier ces options ni aucune autre option de configuration du serveur. (J'ai, bien sûr, un contrôle total sur la configuration du client: OpenSSH 5.8 sous Linux.)
Quelles sont mes options, et en particulier, quelle est l'option la plus sûre, pour éviter d'avoir à taper mon mot de passe chaque fois que je veux SSH sur ce serveur? Je garde mes propres ordinateurs assez bien sécurisés, supposons donc que les risques de sécurité liés au stockage du mot de passe dans un fichier sur le client sont suffisamment faibles, si cela est effectivement nécessaire.
Les autres méthodes d'authentification que le serveur peut accepter sont évidemment l'API GSS (dont je ne sais rien), le clavier interactif (dont je ne sais rien non plus) et le mot de passe. Voici quelques options de configuration pertinentes:
#ChallengeResponseAuthentication yes
#KerberosAuthentication no
GSSAPIAuthentication yes
GSSAPICleanupCredentials yes
#UsePAM no
et voici une -vv
trace debug ( ):
debug1: Authentications that can continue: gssapi-with-mic,password,keyboard-interactive
debug1: Next authentication method: gssapi-with-mic
debug1: Unspecified GSS failure. Minor code may provide more information
Credentials cache file '/tmp/krb5cc_1000' not found
debug1: Unspecified GSS failure. Minor code may provide more information
Credentials cache file '/tmp/krb5cc_1000' not found
debug1: Unspecified GSS failure. Minor code may provide more information
debug1: Unspecified GSS failure. Minor code may provide more information
debug2: we did not send a packet, disable method
debug1: Next authentication method: keyboard-interactive
debug2: userauth_kbdint
debug2: we sent a keyboard-interactive packet, wait for reply
debug1: Authentications that can continue: gssapi-with-mic,password,keyboard-interactive
debug2: we did not send a packet, disable method
debug1: Next authentication method: password
/etc/krb5.keytab
, mais c'est le cas /etc/krb5/krb5.keytab
. Je n'ai pas accès au contenu. Le nom du serveur est sftp.pass.psu.edu
(je ne pense pas qu'il y ait de mal à donner ce nom) s'il vous aide à expliquer la procédure.
/etc/krb5.keytab
t-il un ? GSSAPI (Kerberos) peut être simple à configurer côté client; Je dois cependant demander le nom d'hôte du serveur. (Aussi:keyboard-interactive
est très similaire àpassword
, mais sans s'y limiter, à une seule invite "Mot de passe:".)