Вы можете использовать полные регулярные выражения в вашем ssh_config
.
Соответствующая документация IMO очень сложна для чтения и понимания. Я понимаю это только потому, что у меня 13+ лет опыта работы в Linux и 8+ лет использования ssh
. Итак, вот мое резюме документации:
man ssh_config
описывает функцию под названием Match
- затем есть функция,
exec
которая позволяет использовать произвольную команду оболочки для определения соответствия
- Передача входных параметров в произвольную команду оболочки возможна и описана в разделе
TOKENS
В моем случае я использовал~/.ssh/config
:
Match exec "echo %h | grep -q 'NAME[0-9]\+$'"
User USER
IdentityFile /path/to/identity/file
Hostname %h.fully.qualified.domain.name
Тестирование должно быть сделано с чем-то хитрым, как это. И чтобы сделать это тестирование вы звоните ssh -vvv HOSTNAME
. Который точно покажет, что происходит, и правильно ли Match
реализовано ваше новое .
man ssh_config
.