Czy mogę mieć wiele kluczy ssh w moim folderze .ssh?


19

Czy mogę utworzyć wiele kluczy ssh i zmienić ich nazwy na przyjazne dla użytkownika, aby wiedzieć, który klucz jest przeznaczony dla danej witryny itp.

Czy to bezpieczne?

na przykład:

github_id_rsa
github_id_rsa.pub
..
...

Skąd będzie wiedział, z którym kluczem sprawdzić, kiedy się łączy?

Teraz na moim komputerze, gdy patrzę na znane_hosty, wszystkie mają ten sam klucz po nazwie hosta?



Również znane klucze hosta zdecydowanie nie są takie same, wystarczy spojrzeć na końce linii dla każdego hosta.
slhck

Odpowiedzi:


12

Tak, możesz mieć różne klucze ssh. Na stronie pomocy GitHub jest bardzo dobra dokumentacja Help.GitHub - Wiele kluczy SSH . Zasadniczo użyjesz ssh-add, aby dodać dodatkowe klucze, aby agent mógł je wykorzystać. Następnie ustawiasz konfigurację hostów ssh, tak aby wszystkie połączenia ssh z różnymi domenami były sprawdzane tutaj i użyty zostanie odpowiedni klucz. powodzenia!


1
Link już nie działa
danwellman


27

Możesz zmodyfikować plik ~ / .ssh / config, aby użyć innego pliku tożsamości dla różnych serwerów. Edytuj ~ / .ssh / config w swoim ulubionym edytorze i dodaj wpis, który jest odpowiedni dla twojej sytuacji:

Host *
IdentityFile ~/.ssh/id_rsa

Host *.github.*
IdentityFile ~/.ssh/github_id.rsa

Host *.someother.com
IdentityFile ~/.ssh/someother_id.rsa

Pierwsza część powyżej ustawia wartości domyślne dla wszystkich hostów, a pozostałe sekcje zastępują to, co powinno być używane dla każdego hosta pasującego do wzorców. Jeśli masz inną nazwę użytkownika dla każdego hosta, możesz dodać Użytkownik klucz, a po nim nazwa użytkownika na pilocie do sekcji.


2
Jest to najbardziej przydatna odpowiedź na to pytanie, niezależnie od tego, czy miejsce docelowe to GitHub, czy inne witryny.
Pierre
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.