Wie geben wir eine SSH-Standardidentität an?

32

id_rsa ist normalerweise ein Standardschlüssel.

Ich habe einen neuen Schlüssel mit dem Namen "keyhello" erstellt.

Update: Ich habe diesen Schlüssel auch folgendermaßen hinzugefügt:

ssh-add /home/myuser/.ssh/keyhello

Aber ich glaube, es ist immer noch nicht mein Standardschlüssel.

Wie können wir keyhello als Standardidentität anstelle von id_rsa festlegen?

Ich sehe ein -t aber ich habe versucht:

ssh-agent /home/mysuser/.ssh/keyhello -t 

Kein Glück damit. Ich erhalte die Meldung "Erlaubnis verweigert" (wenn ich sudo ssh-agent verwende ... erhalte ich die gleiche Meldung "Erlaubnis verweigert, ohne dass ich meinen sudo-Pass erhalte).

MEM
quelle

Antworten:

49

Tragen Sie in Ihre ~ / .ssh / config-Datei ein:

IdentityFile /home/myuser/.ssh/keyhello

Dadurch werden die ausgehenden SSH-Verbindungen angewiesen, diese als Standardidentität zu verwenden

Wes Hardaker
quelle
1
Geh es. Wenn die Konfigurationsdatei nicht existiert. Ich muss es schaffen.
MEM
5

Sie können eine alternative Schlüsseldatei in der Befehlszeile mit der -iOption angeben oder sie dauerhaft mit IdentityFilein der Konfigurationsdatei des ssh-Clients ändern .

MattBianco
quelle
2

/ usr / bin / ssh-copy-id verwendet die zuletzt erstellte Datei, die mit der ID _ *. pub übereinstimmt. Um die Standardeinstellung zu ändern, berühren Sie sie einfach.

me@my-machine:~/.ssh$ touch id_rsa id_rsa.pub
Benoit Bourgault
quelle
1

In meiner Datei /usr/bin/ssh-copy-idin Zeile 59:

most_recent_id="$(cd "$HOME" ; ls -t .ssh/id*.pub 2>/dev/null | grep -v -- '-cert.pub$' | head -n 1)"

DEFAULT_PUB_ID_FILE="${most_recent_id:+$HOME/}$most_recent_id"

Die aktuellste Datei ist die Standarddatei, und Sie können dies wahrscheinlich ändern. Beachten Sie, dass Ihre Datei mit 'id' beginnen muss.

Patafikss
quelle
-2

Wenn Sie die von Ihnen gesendete Standardeinstellung ändern möchten, wechseln Sie id_*.pubzu keyhello.pubin Datei /usr/bin/ssh-copy-id. Sie finden das in Zeile 60 oder so. Die Zeile beginnt mit DEFAULT_PUB_ID_FILEund danach sehen Sie "$HOME/$(cd "$HOME" ; ls -t .ssh/id_*.pub".

ramsey322
quelle
Ernst? Die einzige Möglichkeit für diesen Benutzer, eine Konfigurationsänderung vorzunehmen, die sie betrifft (und nur sie), besteht darin, eine Systemdatei zu ändern (die möglicherweise alle Benutzer im System betrifft). Ist Ihre Antwort besser als die der anderen (6½ Jahre alten) Antworten auf diese Frage?
Scott