EC2: Wie Clone Git-Repository
Ich versuche zur Kasse ein eigenes repo aus github.com auf meinem dev-Instanz von EC2.
$ git clone [email protected]:Org/Product.git
Initialized empty Git repository in /home/ec2-user/Product/.git/
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
Wie mache ich das? Ich habe versucht SSH-forwarding, aber das hat nicht funktioniert.
- Haben Sie richten Sie Ihren SSH-Schlüssel korrekt?
- Ich bin mir nicht sicher, können Sie mir sagen, was zu überprüfen, um zu überprüfen?
- Versuchen Sie
ssh -v [email protected]
. Sie sollten eine Meldung erhalten von github mit Ihrem Benutzernamen, Sie aber wahrscheinlich nicht, wenn es gibt Probleme. Das -v-wird Ihnen eine ausführliche Ausgabe an, damit Sie sehen, was ssh ist und möglicherweise auf die Spur des Problems. - mögliche Duplikate von ssh-Klonen nicht die Arbeit mit github
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen wir erzeugen einen SSH key (zwei Dateien - einen öffentlichen Schlüssel, die Sie mit der Welt teilen und einen privaten Schlüssel, den Sie sicher aufbewahren), die verknüpfen wir mit unserem Git-account. Dies wird uns erlauben, clone das Git-repository auf einer EC2-Instanz, ohne dass Sie manuell geben Sie Ihren Benutzernamen und Passwort oder (noch schlimmer) setzen Sie Ihr Kennwort in Klartext, wenn Sie ein script.
Können Sie erzeugen einen SSH key auf Ihrem lokalen Verzeichnis und kopieren Sie dann auf Ihrer EC2-Instanz. Sie können es auch tun, auf Ihrer EC2-Instanz direkt, aber jedes mal, wenn Sie erzeugen ein SSH-Schlüsselpaar auf Ihrem neuen Instanz müssen Sie sich den neuen Schlüssel in GitHub zu jeder Zeit.
In Ihrem lokalen terminal, erstellen einen SSH-Schlüssel, ersetzen Ihre E-Mail-Adresse.
Speichern Sie die-Taste, um die Standard-Verzeichnis, ~/.ssh
Geben Sie eine Passphrase Ihrer Wahl.
Überprüfen Sie, dass die öffentlichen und privaten Schlüssel in /.ssh gehen Sie zu dem Verzeichnis und der Eingabe von "ls -l id_rsa*". Sollten Sie zwei Dateien aus, den öffentlichen Schlüssel mit dem Namen “id_rsa.pub" und der private Schlüssel mit dem Namen "id_rsa"
Vom terminal, stellen Sie sicher, dass dieser private Schlüssel ist nicht öffentlich sichtbar.
Fügen Sie Ihre SSH-private-key dem ssh-agent und speichern Sie Ihre passphrase im Schlüsselbund.
Gehen Sie zu den Einstellungen, die unter Ihrem GitHub-account und klicken Sie dann auf SSH-Schlüssel und Neue SSH-Schlüssel
In terminal kopieren Sie Ihren öffentlichen Schlüssel in die Zwischenablage. Oder zeigen Sie auf der EC2-terminal:
Fügen Sie diesen in das Feld Schlüssel auf GitHub und klicken Sie auf speichern. Dieser Schlüssel ist für ALLE Git-repositories.
Manchmal müssen Sie zu bewegen, den öffentlichen Schlüssel zu “/.ssh/authorized_keys" zu machen, den öffentlichen Schlüssel in LINUX funktioniert.
Folgen Sie diesem Artikel https://help.github.com/articles/error-permission-denied-publickey/ um zu sehen, ob der Schlüssel funktioniert und debug.
ssh-add -k ~/.ssh/id_rsa
bekam ich "Konnte nicht geöffnet werden eine Verbindung zum authentication agent." Nach help.github.com/en/articles/... muss ich zuerst starten Sie ssh-agent miteval $(ssh-agent -s)
. Das scheint getan haben, der trick.pbcopy < ~/.ssh/id_rsa.pub
gab mir "pbcopy: Befehl nicht gefunden."cat ~/.ssh/id_rsa.pub
arbeitete und schickte den öffentlichen Schlüssel auf dem Bildschirm, die ich war dann in der Lage zu kopieren/einfügen in meinem GitHub-account.Beim arbeiten mit git oder bei der Einrichtung von ssh-Schlüsseln auf der ec2-Instanz betrachten, da nur der m/c. Also Schritte, die verwendet wurden, wie generieren von ssh-keys hinzufügen id_rsa.pub Schlüssel, um akzeptiert ssh-Schlüssel auf git-Konto durchgeführt werden sollte. Nach dem kopieren des ssh-Schlüssels, prüfen Sie, ob die Verbindung hergestellt ist.
Die Kasse links in der obigen Antworten Sie direkt auf Ihre Lösung.
Sehen diese Antwort.
Brauchen Sie nur, um Ihre öffentlichen und privaten Schlüssel, um die Authentifizierung bei GitHub, wie hier beschrieben: https://help.github.com/articles/generating-ssh-keys