web-dev-qa-db-fra.com

Comment stocker la clé de l'hôte SSH dans IntelliJ IDEA

Lors de l'utilisation de SSH comme connexion pour l'intégration git de IDEA, IDEA continue à demander de stocker la signature rsa de l'hôte dans la base de données de clés de l'hôte. Appuyer sur Oui fonctionne, mais ne stocke pas la clé dans une base de données. Lors de la prochaine utilisation de la connexion, IDEA pose la même question. Si vous appuyez sur Non, la connexion échoue. 

Je n'arrive pas à trouver de configuration pour la connectivité SSH de IDEA, et Google ne fournit aucun résultat utile ... Avez-vous des idées sur la façon de supprimer le dialogue de magasin de clés?

En utilisant: 

IntelliJ IDEA 10.5.1 avec JDK 1.6.0_22 sous Windows XP

MySysGit 1.7.6 avec ses deux dossiers bin/et mingw/bin dans% PATH% 

"git.exe" comme exécutable git dans IDEA 

"IDEA ssh" en tant qu'exécutable SSH dans IDEA 

openssh-server 1: 5.5p1-6 (Debian Squeeze) côté serveur 

32
akaIDIOT

Il semble que Windows ne laisse pas IDEA modifier vos paramètres personnels aussi facilement que prévu. S'assurer que la signature de l'hôte peut être enregistrée résout le problème. Pour permettre à IDEA de le faire, exécutez IDEA en tant qu'administrateur sur Vista/Win7 ou désactivez l'option " Protéger mon ordinateur des activités de programme non autorisées " dans XP Exécuter en tant que . Après avoir établi une connexion SSH et enregistré la signature, le dialogue gênant est corrigé. Après avoir enregistré la signature, IDEA accepte l'hôte même s'il est exécuté en tant qu'utilisateur mortel. 

11
akaIDIOT

Je viens d'avoir le même problème avec IDEA 13 sur Win7, et le problème a été résolu en basculant sur l'exécutable SSH "natif" dans la page Paramètres Git. Je l'ai fait tout en exécutant Intellij en tant qu'administrateur, comme le suggérait la réponse acceptée, mais la réponse acceptée n'a pas résolu le problème jusqu'à ce que j'ai modifié l'exécutable SSH.

38
Cameron Stone

J'ai eu le même problème avec IDEA 13 et 14. Par défaut, IDEA essayera de créer/d'accéder au fichier .ssh/known_hosts dans le répertoire% HOME%.

Cependant,% HOME% n'a pas été défini sur mon système (Windows 7 Enterprise x64). IDEA ne stockerait pas la clé; au contraire, il le demanderait pour chaque opération.

Quand j'ai défini% HOME% (%HOME% = %HOMEDRIVE% dans mon cas), tout a fonctionné comme annoncé.

Ceci est un bug confirmé dans IDEA; il devrait chercher:

  • %MAISON%
  • % HOMEDRIVE%
  • % HOMEPATH%
  • %PROFIL DE L'UTILISATEUR%

Vérifiez également ce problème _.

19

J'ai aussi mSysGit et j'ai mis "C:\Program Files (x86)\Git\bin" sur le PATH.

Il existe au moins deux problèmes lors de l’utilisation d’IntelliJ avec mSysGit et du protocole ssh avec clés privée/publique:

IntelliJ ne sait pas comment afficher le message "L'authenticité de l'hôte ... ne peut pas être établi". Il est donc utile de lancer la commande git une fois à la main pour obtenir le fichier .ssh/known_hosts mis à jour.

mSysGit quand il est démarré directement en dehors de "Git Bash" ne "sait" pas où se trouve votre répertoire personnel et utilise le dossier .ssh "C:\Program Files\Git\.ssh".

Je me demande si le fait de définir une variable d’environnement HOME pointant vers son répertoire personnel Windows pourrait aider. Ajoutant à la confusion, différents outils ont une notion différente de l'emplacement de votre répertoire personnel. 

  • Cygwin pense que mon répertoire personnel est sous C:\Users\myself\AppData\Roaming.
  • Les applications Java pensent que mon répertoire personnel est sous C:\Users\myself
  • mon lecteur de réseau domestique est H:\sur le réseau d'entreprise et certains outils pensent que mon véritable domicile est H:\
2
antoine

Avez-vous essayé la ligne de commande ssh sur le serveur, puis accepté la clé de l'hôte? Cela devrait le stocker, car il ne passera pas par certaines contorsions Java/JNI/Windows.

1
Art Taylor

Je ne suis pas sûr à 100% de la nature de votre problème, mais jetbrains a une page dans sa documentation sur la configuration des clés ssh pour git: using-git-integration.html

Je lance une idée sur un mac et ai mes clés ssh dans le fichier unix standard ~/.ssh et je n'ai jamais de questions sur les magasins de clés . Sous Windows, vous devriez probablement placer vos clés ssh sous C:\Documents and settings\username.ssh

Jetez également un coup d'œil à l'onglet de contrôle de version pour des messages plus spécifiques lors du dépannage de problèmes de vcs.

0
Tommy