Festlegen des Standardspeicherorts für den SSH-Schlüssel
-
01-07-2019 - |
Frage
ssh sucht standardmäßig im Ordner ~/.ssh nach seinen Schlüsseln.Ich möchte es zwingen, immer an einem anderen Ort zu suchen.
Die von mir verwendete Problemumgehung besteht darin, die Schlüssel vom nicht standardmäßigen Speicherort zum Agenten hinzuzufügen:
ssh-agent
ssh-add /path/to/where/keys/really/are/id_rsa
(unter Linux und MingW32-Shell unter Windows)
Lösung
Wenn Sie nur für Sie Identitätsdatei an einen anderen Ort zu Punkt suchen, können die Sie ändern Ihre ~ / .ssh / config-Datei mit folgendem Eintrag:
IdentityFile ~/.foo/identity
man ssh_config
andere Konfigurationsoptionen zu finden.
Andere Tipps
man ssh
Gibt mir, dass diese Optionen nützlich sein könnten.
-I identity_file wählt eine Datei aus, aus der die Identität (privater Schlüssel) für die RSA- oder DSA -Authentifizierung gelesen wird.Die Standardeinstellung ist ~/.Ssh/Identität für Protokollversion 1 und ~/.Ssh/id_rsa und ~/.ssh/id_dsa für pro-tocol Version 2.Identitätsdateien können in der Konfigurationsdatei auch auf einer Hostbasis angegeben werden.Es ist möglich, mehrere -i -Optionen (und mehrere in Konfigurationsdateien angegebene Identitäten) zu haben.
Sie könnten also in Ihrer Bash-Konfiguration einen Alias mit etwas wie „
alias ssh="ssh -i /path/to/private_key"
Ich habe mir keine SSH-Konfigurationsdatei angesehen, aber sie gefällt mir -i
Option, auch dies könnte ein Alias sein
-F configFile gibt eine alternative Konfigurationsdatei pro Benutzer an.Wenn in der Befehlszeile eine Konzerndatei angegeben ist, wird die systemweite Konfigurationsdatei (/etc/ssh/ssh_config) ignoriert.Die Standardeinstellung für die Konfigurationsdatei pro Benutzer ist ~/.ssh/config.