ssh config jolly per evitare di digitare username


12

Frequento spesso le istanze di openstack. Tutte le istanze sono su una rete virtuale e subnet dedicate (10.2.xx). Tutte le istanze hanno lo stesso nome utente (bob)

Mi collego così:

ssh bob@10.2.x.x

o a volte come questo

ssh 10.2.x.x -l bob

È possibile configurare il mio laptop per utilizzare automaticamente il nome bob quando utilizzo SSH su qualsiasi VM sulla sottorete 10.2.xx? Non voglio usare automaticamente bob quando si inserisce una macchina su un'altra sottorete.

Sembra che ssh config non supporti i caratteri jolly. (Correggimi se sbaglio). Sto pensando che forse un alias potrebbe farlo, ma non sono sicuro di quale sarebbe la sintassi.

Risposte:


18

La pagina man ssh_config ha una sezione PATTERNSche descrive in dettaglio come puoi farlo, puoi usare i caratteri jolly di *e ?. Nel mio ~/.ssh/config:

Host 172.16.*.*
   User drav

e poi all'emissione 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 *

Nota che queste corrispondenze sono canoniche, quindi se "fred.mynetwork.com" in DNS è 172.16.13.1, l'emissione ssh fred.mynetwork.comnon corrisponderà alla Host 172.16.*.*voce. Tuttavia, è sempre possibile aggiungere una Host *.mynetwork.comvoce aggiuntiva per applicare le stesse opzioni quando si utilizza un nome DNS.


Sì, una voce Host 10.2*farà il trucco
Bananguin il

Ho trovato 10.2. *. * Causato il rifiuto della mia chiave. Passando a 10.2. * La connessione ha avuto esito positivo.
spuder,

1
Strano, per me il xx *. * Funziona: / Almeno c'è il tuo commento se la gente trova problemi!
Drav Sloan,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.