symbole wieloznaczne konfiguracji ssh, aby uniknąć wpisywania nazwy użytkownika

12

Często ssh do instancji openstack. Wszystkie instancje znajdują się w dedykowanej sieci Vlan i podsieci (10.2.xx). Wszystkie instancje mają tę samą nazwę użytkownika (bob)

Łączę się tak:

ssh [email protected]

lub czasami tak

ssh 10.2.x.x -l bob

Czy możliwe jest skonfigurowanie mojego laptopa do automatycznego używania nazwy bob, gdy ssh do dowolnej maszyny wirtualnej w podsieci 10.2.xx? Nie chcę automatycznie używać boba, gdy sshing do komputera w innej podsieci.

Wygląda na to, że ssh config nie obsługuje symboli wieloznacznych. (Popraw mnie, jeśli się mylę). Myślę, że może to zrobić alias, ale nie jestem pewien, jaka byłaby składnia.

spuder
źródło

Odpowiedzi:

18

Strona ssh_config człowiek posiada sekcję PATTERNSktórych szczegóły, jak można to zrobić, można użyć symboli wieloznacznych z *i ?. W moim ~/.ssh/config:

Host 172.16.*.*
   User drav

a następnie po wydaniu ssh -vvv 172.16.13.1:

debug1: Reading configuration data /home/drav/.ssh/config
debug1: /home/drav/.ssh/config line 4: Applying options for 172.16.*.*
debug1: /home/drav/.ssh/config line 46: Applying options for *

Pamiętaj, że te dopasowania są kanoniczne, więc jeśli „fred.mynetwork.com” w DNS to 172.16.13.1, wystawianie ssh fred.mynetwork.comnie będzie pasować do Host 172.16.*.*wpisu. Zawsze możesz jednak dodać dodatkowy Host *.mynetwork.comwpis, aby zastosować te same opcje, gdy zamiast tego używana jest nazwa DNS.

Drav Sloan
źródło
Tak, wpis Host 10.2*rade
Bananguin
Znalazłem 10.2. *. * Spowodowało odrzucenie mojego klucza. Zmiana na 10.2. * Spowodowała udane połączenie.
spuder
1
Dziwne, dla mnie xx *. * Działa: / Przynajmniej jest twój komentarz, jeśli ludzie znajdą problemy!
Drav Sloan,