%C2%BB.png)
Итак, я пытаюсь создать ssh-соединения между контейнером кластера Google, содержащим 1 главный узел и 2 рабочих узла. Я использовал ssh-keygen для генерации пар ключей для всех трех узлов, отправил два закрытых ключа 2 рабочих узлов на главный узел и в файл .ssh/autherized_keys. Затем я также поделился этим файлом с двумя рабочими узлами.
Этот подход позволяет успешно устанавливать ssh-подключения сразу после этого. Ssh-подключение было в порядке, и я также мог использовать scp для отправки файлов. Однако на более поздних этапах, когда я выходил из системы и снова входил в виртуальные машины, ssh-подключение становилось очень нестабильным, так как иногда оно возвращало ошибку сбоя подключения: Permission denied (publickey), а иногда соединение могло быть снова запущено.
Кто-нибудь знает в чем проблема? Спасибо заранее!
решение1
Если когда-то это работало, а сейчас нет, сделайте следующее:
# Adjust paths as necessary. May need to add sudo if you're not running it as root.
chmod 700 ~/.ssh && chmod 600 ~/.ssh/* && chmod 644 ~/.ssh/authorized_keys
Если все еще нет ответа, проверьте содержимое authorized_keys и проверьте следующие значения в /etc/ssh/sshd_config (или в файле конфигурации sshd). Это отключит аутентификацию по паролю и включит аутентификацию только по ssh для системы.
RSAAuthentication yes
PubkeyAuthentication yes
PasswordAuthentication no
UsePAM no # Just my choice.
Примечание по безопасности: Я рекомендую использовать защищенный паролем закрытый ключ при доступе к вашей облачной среде и устанавливать его только для одной системы, сервера перехода. Оттуда вы можете более уверенно использовать беспарольную аутентификацию ssh для остальной части вашей среды.