it-swarm.com.de

Warum wird eine Cap-Bereitstellung verweigert (publickey)?

Ok, ich bin über etwas verwirrt ... Ich bin in der Lage, mich mit meinem Github-Repository zu verpflichten, aber wenn ich versuche, einen cap deploy von meinem lokalen Ordner zu meinem Staging-Server zu machen, bekomme ich Permission denied (publickey).

Wenn ich ssh [email protected] starte, erhalte ich tatsächlich einen Fehler PTY allocation request failed on channel 0

Also hier stimmt etwas nicht.

Wenn ich ssh -vT [email protected] starte, bekomme ich:

OpenSSH_5.6p1, OpenSSL 0.9.8r 8 Feb 2011
debug1: Reading configuration data /Users/myuser/.ssh/config
debug1: Reading configuration data /etc/ssh_config
debug1: Applying options for *
debug1: Connecting to github.com [207.97.227.239] port 22.
debug1: Connection established.
debug1: identity file /Users/myuser/.ssh/id_rsa type 1
debug1: identity file /Users/myuser/.ssh/id_rsa-cert type -1
debug1: identity file /Users/myuser/.ssh/id_dsa type -1
debug1: identity file /Users/myuser/.ssh/id_dsa-cert type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.1p1 Debian-5github2
debug1: match: OpenSSH_5.1p1 Debian-5github2 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.6
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Host 'github.com' is known and matches the RSA Host key.
debug1: Found key in /Users/myuser/.ssh/known_hosts:2
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/myuser/.ssh/github_rsa
debug1: Remote: Forced command: gerve technomad
debug1: Remote: Port forwarding disabled.
debug1: Remote: X11 forwarding disabled.
debug1: Remote: Agent forwarding disabled.
debug1: Remote: Pty allocation disabled.
debug1: Server accepts key: pkalg ssh-rsa blen 279
debug1: Remote: Forced command: gerve technomad
debug1: Remote: Port forwarding disabled.
debug1: Remote: X11 forwarding disabled.
debug1: Remote: Agent forwarding disabled.
debug1: Remote: Pty allocation disabled.
debug1: Authentication succeeded (publickey).
Authenticated to github.com ([207.97.227.239]:22).
debug1: channel 0: new [client-session]
debug1: Requesting [email protected]
debug1: Entering interactive session.
debug1: Sending environment.
debug1: Sending env LANG = en_US.UTF-8
debug1: client_input_channel_req: channel 0 rtype exit-status reply 0
debug1: client_input_channel_req: channel 0 rtype [email protected] reply 0
Hi technomad! You've successfully authenticated, but GitHub does not provide Shell access.
debug1: channel 0: free: client-session, nchannels 1
Transferred: sent 2384, received 2888 bytes, in 0.1 seconds
Bytes per second: sent 42630.8, received 51643.3
debug1: Exit status 1

Meine Schlüssel befinden sich im Ordner ~/.ssh, also was ist das Problem und warum kann ich mich beim Repository festlegen, wenn ein Schlüsselproblem vorliegt?

UPDATE: Ich habe etwas bemerkt, als ich in meinen .ssh-Ordner ging. Es gibt ein neues Schlüsselpaar, das erstellt wurde, als ich Github für Mac installierte. Warum konnte es nicht einfach mein vorhandenes Schlüsselpaar verwenden, das ich nicht weiß.

39
GiH

Ich würde sicherstellen, dass Ihr Staging-Server über ssh-Zugriff auf github verfügt. Führen Sie den gleichen Befehl "ssh -vT [email protected]" über ein Terminal auf Ihrem Staging-Server aus. So können Sie feststellen, ob es sich bei der Remote-Maschine um ein SSH-Problem handelt.

18
Dave Bettin

Ich musste folgendes tun:

   $ ssh-add -D   #remove existing identities
   $ ssh-agent    #copy the lines & run them
   $ ssh-add      #uses the output from above
111
olore

Ich erhalte diese Fehlermeldung manchmal und tippe einfach $ ssh-add -k ein, um meine Identität hinzuzufügen, und dann funktioniert es. Sie wissen nicht genau, warum dies funktioniert oder warum die Fehlermeldung nicht darauf hinweist, aber es kommt immer zur Rettung!

30
Catfish

Das gleiche Problem hatte ich nach der Installation von GitHub für Mac OS X. Die Anwendung hat einen neuen privaten ssh-Schlüssel in ~/.ssh/github_rsa erstellt und dem ssh-Authentifizierungsagenten hinzugefügt.

Prüfen Sie, welchen Schlüssel der ssh auth agent zwischengespeichert hat:

$ ssh-add -l
2048 63:0c:a6:51:63:c1:35:76:5d:02:77:97:39:48:0e:4a /Users/jiangxin/.ssh/github_rsa (RSA)

Wenn Sie eine Verbindung zu github.com oder einem anderen ssh-Dienst herstellen, wird dieser Schlüssel zuerst verwendet.

Löschen Sie die zwischengespeicherten Schlüssel von ssh-agent mit folgendem Befehl:

$ ssh-add -D

Jetzt sollte der ssh-Client normal arbeiten, wobei der in ~/.ssh/config oder ~/.ssh/id_rsa definierte Schlüssel verwendet wird.

2
Jiang Xin

Wenn Sie MAC verwenden. Möglicherweise wird Ihr SSH-Schlüssel nicht zum Authentifizierungsagenten hinzugefügt. Der folgende Befehl wird das tun

ssh-add path_to_private_key

zum Beispiel

ssh-add ~/.ssh/id_rsa
1
Rajat Bansal

Der Fehler ist darauf zurückzuführen, dass ssh-add nicht mit dem Authentifizierungsagenten kommunizieren kann .. Das Problem kann durch Festlegen der Umgebungsvariablen SSH_AUTH_SOCK gelöst werden.

Wenn Sie ssh-agent ausführen, sollten Sie folgende Ausgabe erhalten:

SSH_AUTH_SOCK=/tmp/ssh-agVZL13989/agent.13989; export SSH_AUTH_SOCK;
SSH_AGENT_PID=13990; export SSH_AGENT_PID;
echo Agent pid 13990;SSH_AUTH_SOCK=/tmp/ssh-agVZL13989/agent.13989; export SSH_AUTH_SOCK;
SSH_AGENT_PID=13990; export SSH_AGENT_PID;
echo Agent pid 13990;

Führen Sie das aus:

eval $(ssh-agent)

Und dann :

ssh-add -D
0
Sankalp Singha