Как получить пароль без пароля ssh между любыми двумя узлами в кластере серверов

Я столкнулся с проблемой о том, как установить пароль без пароля между любыми двумя узлами в кластере серверов. Теперь у меня есть кластер серверов, состоящий из 10 узлов со следующими IP-адресами:

192.168.0.1 # node1 192.168.0.2 # node2 ... 192.168.0.10 # node10 

Мое имя пользователя на этих трех узлах – все xyz , а система на этих узлах – Ubuntu14.04 .

Кажется, это канонический вопрос, и во многих местах ему нужно было ответить, но мой поиск с использованием Google только подскажет мне решение для двух узлов. Например, передайте открытый ключ, сгенерированный в node1 в файл authorized_keys в node2, ..., node10 чтобы разрешить вход без пароля с node1 в остальные узлы. Но как масштабировать этот метод для любых двух узлов в кластере серверов? следует ли мы вручную генерировать открытый ключ в каждом узле и копировать открытый ключ каждого узла на остальные узлы? Есть ли общий и удобный метод?

  • Нет данных xauth; используя фальшивую аутентификацию. Не удается отобразить удаленные окна
  • терминал висит, когда потерянное соединение и ssh включено
  • daemonize rtorrent
  • Как SELinux / SEAndroid предотвращает или разрешает распределение псевдотерминалов?
  • Переадресация X11, но открытые ссылки локально
  • Исходный файл bashrc не работает с ssh -t
  • Подключиться к конкретному хосту
  • Как случайно выбрать одно из нескольких имен хостов под одним псевдонимом (~ / .ssh / config)
  • One Solution collect form web for “Как получить пароль без пароля ssh между любыми двумя узлами в кластере серверов”

    Если у вас есть настройка кластера, у вас, вероятно, есть общая файловая система. Если это так, то вы можете просто добавить SSH-ключ к самому серверу. Если он подключается к другому серверу, он найдет свой собственный ключ в списке авторизованных ключей. Затем вы можете подключиться с любого сервера на любой сервер.

    Если у них разные файловые системы, вам нужно сделать это вручную. Либо вы создаете новый SSH-ключ для пользователя xyz и ssh-copy-id который для каждого из других серверов. Это масштабируется как N² с количеством серверов, что не круто.

    Вы можете сгенерировать один SSH-ключ и скопировать его на все компьютеры в /home/xyz/.ssh/id_rsa и id_rsa.pub . Затем зарегистрируйте этот ключ со всей машиной. Теперь вы можете войти с любого сервера на любой другой сервер, используя тот же SSH-ключ.

    Чтобы развернуть это, я бы написал быстрый скрипт, который использует scp и for -loop для итерации по серверам.

    Interesting Posts

    Как я могу получить результаты seprate для каждого шаблона из нескольких grep

    Может ли команда «найти» работать более эффективно, чтобы удалить много файлов?

    Файловая система для Gentoo root?

    Возможно изменение цвета фона в unix через .profile?

    Как запустить 2FA-используя OpenVPN с systemd?

    wpa_supplicant дает ошибки rfkill при подключении?

    .screenrc, чтобы заставить уведомление о молчании оставаться

    Некоторые символы исчезают после обработки текстового файла

    VM в режиме моста, нет свободного места в буфере

    bash, который включает содержимое из файла как часть команды

    Что содержит исходное дерево ядра? Связано ли это с заголовками ядра Linux?

    Половина окна в одном рабочем пространстве, а другая половина в другом

    Как загрузить последний файл в папке с помощью scp?

    вывод сценария журнала в файл и терминал одновременно

    Как я могу определить, какие команды выполняются на процессоре?

    Linux и Unix - лучшая ОС в мире.