168 votes

Comment exécuter ssh-add sous Windows ?

Je suis #335 Déploiement sur un VPS et vers la fin de l'épisode, nous devons exécuter ssh-add pour donner au serveur l'accès au repo github.

Le problème est de savoir comment l'exécuter sous Windows. Que faut-il installer ?

Je sais que pour courir ssh pour accéder au serveur distant, je peux utiliser Putty . Mais cette commande doit être exécutée localement. Je sais comment utiliser la commande suivante Putty pour le faire.

130voto

RaymondChou Points 1293

On pourrait installer Git pour Windows et ensuite exécuter ssh-add :

Étape 3 : Ajouter votre clé au ssh-agent

Pour configurer le programme ssh-agent afin qu'il utilise votre clé SSH :

Si vous avez installé GitHub pour Windows, vous pouvez l'utiliser pour cloner des dépôts sans avoir à vous soucier des clés SSH. Il est également fourni avec l'outil Git Bash, qui est le moyen privilégié d'exécuter des commandes git sous Windows.

  1. Assurez-vous que ssh-agent est activé :

    • Si vous utilisez Git Bash, activez ssh-agent :

      # start the ssh-agent in the background
      ssh-agent -s
      # Agent pid 59566
    • Si vous utilisez une autre invite de terminal, telle que msysgit, activez ssh-agent :

      # start the ssh-agent in the background
      eval $(ssh-agent -s)
      # Agent pid 59566
  2. Ajoutez votre clé SSH au ssh-agent :

    ssh-add ~/.ssh/id_rsa

55voto

Cameron Tacklind Points 343

2021 Réponse

Microsoft a amélioré la prise en charge des clés ssh au cours des dernières années. Il existe désormais un "service" complet inclus dans Windows. À partir de Serveur Windows (s'applique également aux autres versions) Documentation :

Dans (Admin) Powershell :

# By default the ssh-agent service is disabled.
Get-Service -Name ssh-agent | Set-Service -StartupType Automatic

Start-Service ssh-agent

Puis à partir de n'importe quel shell utilisateur :

ssh-add path/to/.ssh/id_rsa

Les programmes qui ont besoin du chemin d'accès à la socket de l'agent doivent utiliser : \\.\pipe\openssh-ssh-agent .

34voto

Chris Karpyszyn Points 592

Si vous n'utilisez pas GitBash - vous devez démarrer votre ssh-agent en utilisant cette commande

start-ssh-agent.cmd

Si votre agent ssh n'est pas configuré, vous pouvez ouvrir PowerShell en tant qu'administrateur et le configurer en mode manuel.

Get-Service -Name ssh-agent | Set-Service -StartupType Manual

17voto

Brian Ng Points 545

Si vous essayez de configurer une clé pour utiliser git avec ssh, il y a toujours une option pour ajouter une configuration pour le fichier d'identité.

vi ~/.ssh/config

Host example.com
IdentityFile ~/.ssh/example_key

13voto

farizmamad Points 109

J'ai déjà été dans une situation similaire. Dans l'invite de commande, vous tapez 'start-ssh-agent' et voilà ! Le ssh-agent est lancé. Entrez la phrase de passe si elle vous est demandée.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X