Как случайно выбрать одно из нескольких имен хостов под одним псевдонимом (~ / .ssh / config)
Можно ли сделать ssh выбрать случайный IP-адрес (с помощью подстановочного знака) для подключения? У нас есть 30 компьютеров с IP-адресами от «asd 1 .asd.asd.asd.com» до «asd 30.asd.asd.asd.com», и я хочу подключиться к одному из них (случайным образом выбранному) с использованием псевдонима хххх. Есть ли простой способ сделать это с помощью файла ~ / .ssh / config?
Я попытался использовать этот шаблон:
- Есть ли способ настроить vim для запуска внешних команд через cpanel jailshell?
- Запретить SSH для конкретного пользователя из внешней сети
- Синхронизация Pi с локальным каталогом
- Запуск разницы между локальными и удаленными файлами
- Обратная пересылка X11 без SSH на сервере
Host xxxx Hostname asd[0-30].asd.asd.asd.com User my_username
Но это не сработает. Есть идеи? Возможно ли это?
2 Solutions collect form web for “Как случайно выбрать одно из нескольких имен хостов под одним псевдонимом (~ / .ssh / config)”
Если вам действительно нужно, вы можете сделать что-то вроде этого:
Host xxxx User my_username ProxyCommand nc asd$((1+$((RANDOM %% 30)))).asd.asd.asd.com 22
Предполагается, что вы используете оболочку bash – иначе вы можете поместить прокси-команду в качестве аргумента для вызова bash, например
ProxyCommand /bin/bash -c "exec nc asd$((1+$((RANDOM %% 30)))).asd.asd.asd.com 22"
Я не думаю, что сам ssh может это сделать.
Вы можете сделать это с помощью dns, если вы назначаете все номера IP одному имени хоста в какой-либо зоне, которую вы контролируете.
Другой вариант – написать простую оболочку (например, в Python), которая вызывает ssh со случайным выбранным адресом.