Рейтинг:0

SSH запрашивает пароль даже после того, как я скопировал открытый ключ на удаленные машины

флаг co

Надеюсь, кто-то может помочь мне разрешить этот кошмар. Я сделал проект по бродячей подготовке 4 машин с Ubuntu, 1 контроллера и 3 серверов. Создан ключ SSH на контроллере и команда ssh-copy-id для 3 серверных узлов. Я вижу открытый ключ в author_keyes на 3 серверах.

дамп etc/ssh/sshd_config кажется в порядке, судя по тому, что я могу найти в Интернете.

# $OpenBSD: sshd_config,v 1.101 14.03.2017 07:19:07 djm Exp $

# Это общесистемный файл конфигурации сервера sshd. Видеть
# sshd_config(5) для получения дополнительной информации.

# Этот sshd был скомпилирован с PATH=/usr/bin:/bin:/usr/sbin:/sbin

# Стратегия, используемая для опций в sshd_config по умолчанию, поставляемой с
# OpenSSH должен указать параметры со значением по умолчанию, где
# возможно, но оставьте их комментариями. Незакомментированные параметры переопределяют
# значение по умолчанию.

#Порт 22
#AddressFamily любой
#ListenAddress 0.0.0.0
#ListenAddress ::

#HostKey /etc/ssh/ssh_host_rsa_key
#HostKey /etc/ssh/ssh_host_ecdsa_key
#HostKey /etc/ssh/ssh_host_ed25519_key

# Шифры и ключи
#RekeyLimit по умолчанию нет

# Логирование
#SyslogFacility АУТЕНТИФИКАЦИЯ
#LogLevel ИНФОРМАЦИЯ

# Аутентификация:

#LoginGraceTime 2 м
#PermitRootLogin запретить пароль
#Строгиережимы да
#MaxAuthTries 6
#МаксСеансов 10

#PubkeyАутентификация да

# Ожидайте, что .ssh/authorized_keys2 в будущем будет игнорироваться по умолчанию.
#Файл авторизованных ключей .ssh/authorized_keys .ssh/authorized_keys2

#AuthorizedPrincipalsFile нет

#AuthorizedKeysCommand нет
#AuthorizedKeysCommandUser никто

# Для этого вам также понадобятся ключи хоста в /etc/ssh/ssh_known_hosts
#HostbasedAuthentication нет
# Измените на yes, если вы не доверяете ~/.ssh/known_hosts для
# Аутентификация на основе хоста
#IgnoreUserKnownHosts нет
# Не читать пользовательские файлы ~/.rhosts и ~/.shosts
#ИгнорироватьRhosts да

# Чтобы отключить туннелируемые пароли в открытом виде, измените здесь на no!
#Аутентификация по паролю да
#PermitEmptyPasswords нет

# Измените на yes, чтобы включить пароли типа «запрос-ответ» (остерегайтесь проблем с
# некоторые модули и потоки PAM)
ВызовОтветАутентификация нет

# Опции Kerberos
#KerberosAuthentication нет
#KerberosOrLocalPasswd да
#KerberosTicketCleanup да
#KerberosGetAFSToken нет

# Параметры GSSAPI
#GSSAPIAНомер аутентификации
#GSSAPICleanupCredentials да
#GSSAPIStrictAcceptorПроверить да
#GSSAPIKeyExchangeнет

# Установите значение «да», чтобы включить аутентификацию PAM, обработку учетных записей,
# и обработка сеанса. Если этот параметр включен, аутентификация PAM будет
# быть разрешенным через ChallengeResponseAuthentication и
# Аутентификация по паролю. В зависимости от вашей конфигурации PAM,
# Аутентификация PAM через ChallengeResponseAuthentication может обойти
# настройка "PermitRootLogin без пароля".
# Если вы просто хотите, чтобы учетная запись PAM и проверка сеанса выполнялись без
# Аутентификация PAM, затем включите это, но установите PasswordAuthentication
# и ChallengeResponseAuthentication на «нет».
ИспользоватьPAM да

#AllowAgentForwarding да
#AllowTcpForwarding да
#GatewayPorts нет
X11Переадресация да
#X11DisplayOffset 10
#X11UseLocalhost да
#PermitTTY да
Версия для печати
#PrintLastLog да
#TCPKeepAlive да
#UseLogin нет
#PermitUserEnvironment нет
# Сжатие отложено
#ClientAliveInterval 0
#ClientAliveCountMax 3
#UseDNS нет
#PidFile /var/run/sshd.pid
#Макс.Запусков 10:30:100
#PermitTunnel нет
#ChrootDirectory нет
#VersionAddendum нет

# нет пути к баннеру по умолчанию
#Баннер нет

# Разрешить клиенту передавать переменные среды локали
AcceptEnv ЯЗЫК LC_*

# переопределить значение по умолчанию отсутствия подсистем
Подсистема sftp /usr/lib/openssh/sftp-сервер

# Пример переопределения настроек для каждого пользователя
#Соответствие пользователю anoncvs
# X11Переадресация нет
# AllowTcpForwarding нет
# РазрешитьTTY нет
# cvs-сервер ForceCommand
ИспользуемыйDNS-номер
GSSAPIAАутентификация №

Отладочный вывод, когда я пытаюсь подключиться к одному из серверов с моего контроллера.

OpenSSH_7.6p1 Ubuntu-4ubuntu0.3, OpenSSL 1.0.2n 7 декабря 2017 г.
debug1: Чтение данных конфигурации /etc/ssh/ssh_config     
debug1: /etc/ssh/ssh_config строка 19: Применение параметров для *
debug1: подключение к server1 [172.16.1.51] порт 22.       
отладка1: соединение установлено.
debug1: файл идентификации /home/vagrant/.ssh/id_rsa типа 0
debug1: key_load_public: нет такого файла или каталога
debug1: файл идентификации /home/vagrant/.ssh/id_rsa-cert type -1
debug1: key_load_public: нет такого файла или каталога
debug1: файл идентификации /home/vagrant/.ssh/id_dsa тип -1
debug1: key_load_public: нет такого файла или каталога
debug1: файл идентификации /home/vagrant/.ssh/id_dsa-cert type -1
debug1: key_load_public: нет такого файла или каталога
debug1: файл идентификации /home/vagrant/.ssh/id_ecdsa тип -1
debug1: key_load_public: нет такого файла или каталога
debug1: файл идентификации /home/vagrant/.ssh/id_ecdsa-cert type -1
debug1: key_load_public: нет такого файла или каталога
debug1: файл идентификации /home/vagrant/.ssh/id_ed25519 тип -1
debug1: key_load_public: нет такого файла или каталога
debug1: файл идентификации /home/vagrant/.ssh/id_ed25519-cert type -1
debug1: строка локальной версии SSH-2.0-OpenSSH_7.6p1 Ubuntu-4ubuntu0.3
debug1: удаленный протокол версии 2.0, удаленная версия программного обеспечения OpenSSH_7.6p1 Ubuntu-4ubuntu0.3
debug1: соответствие: OpenSSH_7.6p1 Ubuntu-4ubuntu0.3 pat OpenSSH* compat 0x04000000
debug1: Аутентификация на server1:22 как «бродяга»
debug1: SSH2_MSG_KEXINIT отправлен
debug1: SSH2_MSG_KEXINIT получен
debug1: kex: алгоритм: curve25519-sha256
debug1: kex: алгоритм ключа хоста: ecdsa-sha2-nistp256
debug1: kex: server->client шифр: [email protected] MAC: <неявное> сжатие: нет
debug1: kex: client->server шифр: [email protected] MAC: <неявное> сжатие: нет
debug1: ожидается SSH2_MSG_KEX_ECDH_REPLY
debug1: ключ хоста сервера: ecdsa-sha2-nistp256 SHA256:Qe4c4KKdHXNjhZ3PMFqTKrVFASCX3O8kvtCRKTifkfs
debug1: Хост server1 известен и соответствует ключу хоста ECDSA.
debug1: найден ключ в /home/vagrant/.ssh/known_hosts:1
debug1: сменить ключ после 134217728 блоков
debug1: SSH2_MSG_NEWKEYS отправлено
debug1: ожидается SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS получен
debug1: сменить ключ после 134217728 блоков
debug1: SSH2_MSG_EXT_INFO получен
debug1: kex_input_ext_info: server-sig-algs=<ssh-ed25519,ssh-rsa,rsa-sha2-256,rsa-sha2-512,ssh-dss,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2 -nistp521>
debug1: SSH2_MSG_SERVICE_ACCEPT получен
debug1: Аутентификации, которые могут продолжаться: открытый ключ, пароль
debug1: следующий метод аутентификации: открытый ключ
debug1: Предлагая открытый ключ: RSA SHA256:gmW3Caq3TNEnCYHCa+BMgMm7lINsBlo7Y73bE596LZo /home/vagrant/.ssh/id_rsa
debug1: сервер принимает ключ: pkalg rsa-sha2-512 blen 279
Введите кодовую фразу для ключа '/home/vagrant/.ssh/id_rsa':

Я пробовал большинство вещей, которые я мог найти по этому вопросу. Тем не менее я не могу получить доступ без пароля к своим серверным машинам. Любые советы приветствуются.

Спасибо.

Рейтинг:4
флаг cz

Вас не спрашивают пароль для удаленного хоста. Вас просят ввести парольную фразу для созданного вами ключа ssh.

Чтобы устранить проблему, введите парольную фразу.

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

Kirra Lissa avatar
флаг co
Рад сообщить, что вчера пришел к такому же выводу. Это было так глупо с моей стороны. В любом случае, спасибо за ваш ответ.Оглядываясь назад, теперь, когда я читаю вывод отладки, он говорит об этом. Я думаю, это урок.
Рейтинг:-1
флаг cn

проверьте, существует ли файл на узлах:

ssh user@node1 ls -la ~user/.ssh

Rex Mueller ESU3 avatar
флаг cn
Десять лет назад я наткнулся на скрипт KSH.
Рейтинг:-1
флаг in

Просто скопировав ключ SSH контроллера через ssh-копия-идентификатор команда для 3 серверных узлов, которым вы разрешаете доступ ОТ узлы К сервер.

Вы должны сделать то же самое в обратном порядке (т. ssh-копия-идентификатор от каждого узла НА сервер), чтобы разрешить доступ с контроллера к узлам.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.