it-swarm-eu.dev

ssh-add si stěžuje: Nelze otevřít připojení k vašemu ověřovacímu agentovi

Snažil jsem se dostat ssh-add pracuje na RaspberryPi s Raspbian.

Můžu začít ssh-agent, když to udělám, dává následující výstup do terminálu:

SSH_AUTH_SOCK=/tmp/ssh-06TcpPflMg58/agent.2806; export SSH_AUTH_SOCK;
SSH_AGENT_PID=2807; export SSH_AGENT_PID;
echo Agent pid 2807;

Pokud spustím ps aux | grep ssh Vidím, že běží.

Pak se pokusím spustit ssh-add za účelem přidání mého klíčového hesla, a dostanu následující:

Could not open a connection to your authentication agent.

Nějaké nápady?

161
Daniel Groves

Vaše Shell má vyhodnotit, že výstup Shell kódu je ssh-agent. Místo toho spusťte:

eval "$(ssh-agent)"

Nebo pokud jste již začali ssh-agent, zkopírujte jej do svého Shell Prompt (za předpokladu, že provozujete Bourne-like Shell).

Příkazy ssh musí vědět, jak mluvit s ssh-agent vědí, že z SSH_AUTH_SOCK proměnná prostředí.

244

Zkus tohle:

$ ssh-agent /bin/sh
$ ssh-add $yourkey
30
user48656

Tato otázka byla velmi dobře pokryta také Stackoverflow .

eval `ssh-agent -s`

ssh-add
13
xaa

Pokud použijete csh jako Shell ( FreeBSD PI ), mohlo by to fungovat:

eval `ssh-agent -c`

dále stačí udělat něco jako:

ssh-add ~/.ssh/id_rsa
6
nbari

Vyzkoušejte toto: přejděte na C:\$Installation_Folder$\Git\cmd a spusťte:

start-ssh-agent 

Otevře příkaz cmd a spustí ssh-agent správná cesta.

ssh-add ~/.ssh/id_rsa by pak mělo fungovat.

2
sab125

To bylo matoucí a mělo to 2 možné dobré odpovědi v závislosti na tom, zda se uživatel pokouší přidat ssh klíč v systému Linux nebo Windows (jako já). To pravděpodobně neodpovídá na OP, ale jde o rozšíření o git-bash. Provozuji Windows i Ubuntu pro vývoj a moje instalace git se v každém z nich trochu liší.

Zkuste to: přejděte na C:\$ Installation_Folder $\Git\cmd a proveďte:

start-ssh-agent Otevře příkaz cmd a spustí ssh-agent správným způsobem.

.. byla dobrá odpověď systému Windows, ale nepodařilo se vám určit, že jste měli procházet Průzkumníkem Windows a najít instalační složku Git, a spuštění okna Windows Shell by se otevřelo po dokončení kroku 1.
"Přejít na C:\$ Installation_Folder $\Git\cmd"

Krok 2: stačí jen dvakrát kliknout

start-ssh-agent

V kroku 3 přejdete zpět k git-bash nebo k libovolnému emulátoru terminálu * nix, který používáte, a spusťte ssh-add. Pokud jste pro veřejný klíč ssh použili výchozí název, nemusíte jej přidávat, protože ssh-add používá automaticky.

2
Wolf Halton

Můžete také použít následující syntaxi:

ssh-agent sh -c 'ssh-add && echo Do some stuff here.'
2
kenorb

Existuje několik způsobů, jak si přejete použít totožnost se Sudem, např. Sudo npm install.

Dlouhá cesta, ale také vám dává přístup rootovi, takže nebudete muset hodně používat Sudo.

  1. Běh
    Sudo ssh-agent bash
    Toto vás požádá o heslo a poté se spustí ssh-agent s oprávněními superuživatele,
  2. Přejděte do složky .ssh vašich uživatelů
    cd /home/user/.ssh
  3. Odtud můžete běžet

    ssh-add id_rsa
    npm install git+ssh://[email protected] -g && npm link PROJECT-NAME
    

Krátká cesta, pouze váš uživatel (pokud nechcete hodně Sudo)

eval "$(ssh-agent)"
ssh-add
Sudo SSH_AUTH_SOCK="$SSH_AUTH_SOCK" npm install git+ssh://[email protected] -g && Sudo npm link PROJECT-NAME
1
Belldandu