web-dev-qa-db-fra.com

Comment puis-je faire en sorte que ssh ignore .ssh / config?

J'ai ce qui suit dans ma ~/.ssh/config.

Host 10.2.192.*
        USER foo
        PreferredAuthentications publickey
        IdentityFile ~/.ssh/foo/id_rsa

La configuration ci-dessus me permet de me connecter à une machine tout en tapant la moitié du nombre de mots.

 ssh 10.2.192.x

Avant ma configuration ssh, je devais taper tout ça:

 ssh [email protected] -i ~/.ss/foo/id_rsa

Cependant, il y a une machine dans le sous-réseau 10.2.192.x à laquelle je veux me connecter avec une authentification par mot de passe au lieu d'une authentification par clé.

Parce que ssh regarde mon fichier de configuration et trouve une correspondance pour PreferredAuthentications publickey Je ne parviens pas à me connecter avec mon mot de passe uniquement.

Je n'ai pas l'intention de ssh dans ce vm spécial flocon de neige assez souvent pour justifier l'ajout d'une nouvelle règle à ma configuration ssh.

Comment puis-je faire en sorte que ssh ignore mon fichier de configuration une seule fois et me permette de m'authentifier avec un mot de passe?

45
spuder

Pour que votre client ssh ignore votre fichier de configuration, utilisez ssh -F /dev/null [email protected]. Parce que le fichier d'identité de votre sous-réseau est dans ~/.ssh/foo plutôt que ~/.ssh/, vous n'avez pas besoin de créer un tout nouveau fichier pour éviter votre clé privée existante.

Depuis la page de manuel ssh:

 -F configfile
     Specifies an alternative per-user configuration file.  If a
     configuration file is given on the command line, the system-wide
     configuration file (/etc/ssh/ssh_config) will be ignored. The default 
     for the per-user configuration file is ~/.ssh/config.
59
DopeGhoti

Je crois que cette question a déjà été répondue par: Comment forcer le client ssh à utiliser uniquement l'authentification par mot de passe?

ssh -o PubkeyAuthentication=no example.com
20
Andrew Stern