Вы можете использовать полные регулярные выражения в вашем 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.