ssh config wildcards, щоб увести ім'я користувача


12

Я часто впадаю в випадки opentack. Усі екземпляри знаходяться на виділеній vlan і підмережі (10.2.xx). Усі екземпляри мають однакове ім’я користувача (bob)

Я підключаюсь так:

ssh bob@10.2.x.x

або іноді так

ssh 10.2.x.x -l bob

Чи можна налаштувати мій ноутбук для автоматичного використання bob імен, коли я впадаю в будь-який vm підмережі 10.2.xx? Я не хочу автоматично використовувати bob під час роботи в машині в будь-якій іншій підмережі.

Схоже, ssh config не підтримує символи. (Виправте мене, якщо я помиляюся). Я думаю, що псевдонім міг би це зробити, але я не впевнений, яким би був синтаксис.

Відповіді:


18

На сторінці "ssh_config man" є розділ, в PATTERNSякому детально описано, як ви можете це зробити, ви можете використовувати підмітні символи *та ?. По-моєму ~/.ssh/config:

Host 172.16.*.*
   User drav

а потім про видачу 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 *

Зауважте, що ці збіги є канонічними, тому якщо "fred.mynetwork.com" у DNS дорівнює 172.16.13.1, видача ssh fred.mynetwork.comне відповідатиме Host 172.16.*.*записи. Однак ви завжди можете додати додатковий Host *.mynetwork.comзапис, щоб застосувати ті самі параметри, коли натомість використовується ім'я DNS.


Так, запис Host 10.2*зробить трюк
Bananguin

Я знайшов 10.2. *. *, Що призвело до відхилення мого ключа. Зміна на 10.2. * Призвела до успішного з'єднання.
спудер

1
Дивно, для мене працює xx *. *: / Принаймні, є ваш коментар, якщо люди знайдуть проблеми!
Drav Sloan
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.