Skonfiguruj ścieżkę klucza ssh do użycia dla określonego hosta


13

Podczas łączenia przez SSH mój terminal domyślnie chce używać id_rsa. Nie chcę używać tego klucza dla tego konkretnego serwera. Więc jestem zmuszony określić właściwą ścieżkę klucza podczas łączenia:

Działa to w celu połączenia: ssh -i /Users/myuser/.ssh/mykey serveruser@server.com

Ale wolałbym użyć następujących do połączenia: ssh użytkownik@server.com

Moje pytanie : Czy istnieje sposób wskazania w znane_hostach lub innej konfiguracji, że SSH powinien używać klucza znajdującego się w /Users/myuser/.ssh/mykey, gdy serveruser łączy się z server.com ?

Dzięki!


Czy rozważałeś użycie funkcji lub skryptu do zamiany ssh? Jest to proste zadanie, aby przeskanować parametry i dodać dodatkowy parametr, aby użyć drugiego klucza podczas łączenia się z server.com.
AFH,

Odpowiedzi:


19

Jedną z opcji, którą można rozważyć, byłoby użycie pliku .ssh / config.

Przykład: .ssh / config

Host server.com
    HostName server.com
    User serveruser
    IdentityFile /Users/myuser/.ssh/mykey

W ten sposób możesz uruchomić „ssh server.com”. Plik konfiguracyjny użyje określonej nazwy użytkownika i pliku tożsamości.


Dodanie: Możesz użyć ~/.ssh/mykeydo pliku klucza lokalnego, także w systemie Windows.
Lii

0

Dodatkową opcją byłoby użycie ssh-agent.

Jeśli dodasz do niej wszystkie swoje tożsamości

ssh-add .ssh/id_rsa
ssh-add .ssh/mykey

Kiedy łączysz się ze zdalnym hostem, działa ten, który działa.

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.