
Ich arbeite in einem Team mit zwei anderen Leuten. Wir haben alle mit unseren persönlichen SSH-Schlüsseln Zugriff auf einen Server und können uns direkt beim Server anmelden. Wir verwenden ForwardAgent, genauer gesagt haben wir alle drei so etwas in unserem ~/.ssh/config
(der einzige Unterschied ist, dass ich id_rsa_osx
und sie haben id_rsa
):
Host api1.domain.com
User deployer
Port 10000
ForwardAgent yes
PreferredAuthentications publickey
IdentitiesOnly yes
IdentityFile ~/.ssh/id_rsa_osx
Durch das Eintippen ssh api1.domain.com
haben wir also alle als Benutzer „Deployer“ Zugriff auf den Server. Die Sache ist, dass ich der Einzige bin, der keinen direkten Zugriff vom Server auf GitHub hat. Wenn ich also eintippe, erhalte ich Folgendes : Bei den anderen funktioniert es einwandfrei.ssh -T [email protected]
Permission denied (publickey).
Mit diesem Schlüssel habe ich von meinem lokalen Rechner aus Zugriff auf GitHub und meine Konfiguration für GitHub sieht folgendermaßen aus:
Host github.com
User git
PreferredAuthentications publickey
IdentitiesOnly yes
IdentityFile ~/.ssh/id_rsa_osx
Ich habe auch diesen Befehl ausprobiert echo "$SSH_AUTH_SOCK"
und es kam zurück /tmp/ssh-yz4zn4fqMf/agent.16068
. Ich habe den Schlüssel auf GitHub und habe auch versucht, einen anderen Schlüssel hinzuzufügen, mit dem gleichen Ergebnis. Mir gehen die Ideen aus, was soll ich sonst noch versuchen?
Antwort1
Das Problem war, dass ich meinen Schlüssel nicht zum SSH-Agenten hinzugefügt habe. Ich habe ihn eingegeben ssh-add my_key_path
und es hat funktioniert (Um zu überprüfen, ob Sie ihn hinzugefügt haben, geben Sie ein ssh-add -l
).