So richten Sie SSH auth mit Windows/git/tortoisegit/putty/Synology ein
Ich bin hoffnungslos verwirrt. Ich versuche zu verhindern, dass tortoisegit mich bei jedem Ziehen/Drücken zur Eingabe eines Passworts auffordert (es macht mir nichts aus, wenn ich mich bei Windows anmelde, aber danach möchte ich, dass es automatisch ist).
Mein Git-Server wird auf meinem Synology NAS über das offizielle Git Server-Paket ausgeführt. Ich klone über ssh://user@server/foo/bar.
Folgendes habe ich getan/versucht:
- habe selbst ein öffentliches und privates Schlüsselpaar erstellt über Puttygen.
- startete Putty Authentication Agent (Pageant) und fügte meinen privaten Schlüssel hinzu.
- erstellt eine authorized_keys Datei auf dem Server unter / root/.ssh/. Ich habe es nur mit dem Base64-codierten Teil der öffentlichen Schlüsseldatei und auch mit dem Header
---- BEGIN SSH2 PUBLIC KEY ----
und der entsprechenden Fußzeile versucht. - set up tortoisegit verwenden TortoiseGitPLink.exe - als SSH-client (der Standard, glaube ich). Ich habe auch versucht pageant.exe, aber das führt zu einem fehler:"Dieser Schlüssel konnte nicht geladen werden (Datei kann nicht geöffnet werden)"
Ich werde immer noch nach einem Passwort gefragt, und der Putty-Agent scheint in keiner Weise an dem Prozess beteiligt zu sein (auch nach der Authentifizierung keine Schlüssel). Jeder Rat wäre sehr dankbar.
3 answers
Stellen Sie sicher, dass Sie heavyd Anweisungen auf den SSH-Tasten gefolgt sind
Windows Git UND TortoiseGit erfordern 2 in Windows festgelegte Umgebungsvariablen.
GIT_SSH=C:\Programme\TortoiseGit\bin\TortoiseGitPlink.exe -
SVN_SSH=C:\Programme\TortoiseGit\bin\TortoiseGitPlink.exe -
(ersetzen Sie mit Ihren Pfaden, wenn anders)
Sie müssen auch sicherstellen, dass das PLINK_PROTOCOL nicht überschrieben wird. Sonst, PLINK_PROTOCOL=ssh -
Nachdem Sie diese gemacht haben änderungen, überprüfen Sie den Zugriff wie folgt:
Öffnen Sie ein Dos-Befehlsfenster geben Sie den Befehl plink git@git-depot-server name -
Wenn eine Liste von Git-Repositorys zurückgegeben wird, kommunizieren Sie mit Git.
Wenn ein Fehler zurückgegeben wird, müssen Sie möglicherweise Ihre bearbeiten .ssh / config und / oder etc / hosts Windows-Dateien
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2013-12-19 23:34:35
Sie möchten den öffentlichen Schlüssel, der mit der Schaltfläche "Öffentlichen Schlüssel speichern" gespeichert wird, nicht verwenden. In der PuTTY Key Generator-Benutzeroberfläche sollten Sie den Text im oberen Feld in Ihre authorized_keys
- Datei kopieren:
Es sollte genau kopiert werden und sollte eine einzelne Zeile in Ihrer authorized_keys
Datei sein.
Verwenden Sie auch ssh://root@server/foo/bar
, um Ihr Repo zu klonen? Wenn nicht, müssen Sie sicherstellen, dass Sie Ihren öffentlichen Schlüssel der Datei authorized_keys
für den richtigen Benutzer hinzufügen.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2013-12-16 17:30:35
Hinzufügen eines ssh-Schlüssels im OpenSSH-Format, der von Putty generiert wurde, zu Ihrem Linux-Konto und Testen, ob Sie sich bei Github oder einem anderen Linux-Server anmelden können
Kopieren Sie die Ordner
id_rsa
undid_rsa.pub
in den Ordner~/.ssh
. Ändern Sie die Berechtigungen der Dateiid_rsa
in400/600
mitchmod 600 ~/.ssh/id_rsa
https://stackoverflow.com/a/9270753/4752883Überprüfen Sie, ob
ssh-agent
miteval $(ssh-agent -s) and start/restart
ssh-agent ' (https://stackoverflow.com/a/17848593/4752883 )Fügen Sie
ssh
privaten Schlüssel hinzussh-agent
:ssh-add ~/id_rsa
(https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/#adding-your-ssh-key-to-the-ssh-agent)Stellen Sie sicher, dass der öffentliche Schlüssel an Ihr Konto angehängt ist (https://help.github.com/articles/error-permission-denied-publickey/):
ssh-add -l -E md5
. Ausgabe sollte so etwas wie sein2048 MD5:de:5d… /home/username/.ssh/id_rsa (RSA)
Stellen Sie sicher, dass Sie sich mit
ssh
beigithub
oder anderem anmelden können server( https://help.github.com/articles/testing-your-ssh-connection/) :ssh -T [email protected]
. Ausgabe sollte lesenHi username! You've successfully authenticated, but GitHub does not provide shell access.
Wenn ein Fehler wie
key_load_public: invalid format
angezeigt wird, bedeutet dies, dass Sie das öffentliche SchlüsselformatPuttygen
verwenden. Um zuOpenSSH
Version des öffentlichen Schlüssels zu wechseln, folgen Sie den Schritten: (https://stackoverflow.com/a/44391850/4752883 )
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-01-15 17:17:58