Первый шаг: перезапустите SSH с /etc/init.d/sshd restart
. Также убедитесь, что права доступа к файлу Authorized_users указаны правильно. Чтобы проверить, использовать chmod 600 ~/.ssh/authorized_keys
и убедиться, что он принадлежит пользователю, вошедшему в систему как.
Почему SSH не использует мои авторизованные ключи?
У меня дома 2 ноутбука, на обоих работает Ubuntu 12.04 (Desktop), и оба используют один и тот же Wi-Fi-маршрутизатор NetGear. Я использовал метод под названием «MAC-привязка» на одной из машин, чтобы маршрутизатор всегда назначал ему один и тот же IP-адрес 192.168.1.52 при каждой попытке подключения к Интернету. ( Не связано: привязка MAC-адреса означает только настройку маршрутизатора для постоянной привязки определенного MAC-адреса к определенному IP-адресу. )
Итак, у меня есть 1 ноутбук, которому всегда присваивается случайный IP-адрес в диапазоне от 192.168.1.1 до 192.168.1.50, и 1 ноутбук (мой «сервер сборки»), которому всегда назначается 192.168.1.52.
Я пытаюсь написать сценарий bash, который я буду запускать на «клиентском» ноутбуке (случайном IP-компьютере), который будет ssh
подключен к серверу сборки (192.169.1.52); отсюда необходимость для сервера сборки иметь «выделенный» IP из моей локальной сети. Я не хочу явно указывать пароль для этих скриптов bash, поэтому я следовал инструкциям в этой статье, чтобы сгенерировать ключи SSH. В частности, я:
- Генерация ключей SSH на моем клиентском ноутбуке (создание
id_rsa.pub
файла) - Я
scp
поместилid_rsa.pub
файл на свой сервер сборки иcat
поместил его в~/.ssh/authorized_keys
файл. Я проверил, что ключ SSH моего клиентского ноутбука теперь существует внутриauthorized_keys
файла на сервере сборки. - Я закрыл терминал на своем клиентском ноутбуке, а затем снова открыл новый, просто для хорошей меры (на случай, если Linux понадобится, чтобы что-нибудь перезапустить и т. Д.)
- Затем я попытался подключиться по SSH к серверу сборки, и мне все еще предлагается пароль!
Что тут происходит? Почему SSH на моем сервере сборки не поддерживает авторизованные ключи от моего клиентского ноутбука? Нужно ли перезапускать что-либо на сервере сборки ( sshd
и т. Д.)? Я пропустил какие-либо важные шаги здесь? Как начать устранение неполадок? Заранее спасибо!
Обновление : Видимо Ubuntu не имеет /var/log/secure.log
, но это есть /var/log/auth.log
. Когда я подключаю этот журнал на сервере сборки, а затем пытаюсь подключиться к серверу сборки SSH с моего клиентского ноутбука, вот что происходит:
- Я бегу
ssh myuser@buildserver
с клиентского ноутбука - Мне предлагается пароль.
- Как только я ввожу пароль, я вижу следующий вывод в
auth.log
файле сервера сборки :
May 21 12:02:07 buildserver sshd[28930]: error: RSA_public_decrypt failed: error:0407006A:lib(4):func(112):reason(106) May 21 12:02:10 buildserver sshd[28930]: pam_sm_authenticate: Called May 21 12:02:10 buildserver sshd[28930]: pam_sm_authenticate: username = [myuser] May 21 12:02:10 buildserver sshd[28930]: pam_sm_authenticate: /home/myuser is already mounted May 21 12:02:10 buildserver sshd[28930]: Accepted password for myuser from 192.168.1.3 port 39821 ssh2 May 21 12:02:10 buildserver sshd[28930]: pam_unix(sshd:session): session opened for user myuser by (uid=0) May 21 12:02:10 buildserver sshd[29003]: Received disconnect from 192.168.1.3: 11: disconnected by user May 21 12:02:10 buildserver sshd[28930]: pam_unix(sshd:session): session closed for user myuser
Что-то, что, возможно, я должен был упомянуть: на обеих машинах (на клиентском ноутбуке и на моем сервере сборки имя пользователя / имя учетной записи myuser
) - может ли Linux запутаться из-за одного и того же имени пользователя на обеих машинах?
3 ответа на вопрос
Для меня удаление id_rsa.pub помогло (я использовал ключ ~ / .ssh / id_rsa). Это было вызвано тем, что id_rsa.pub не соответствовал моему ключу id_rsa.
What format is your public key in?
I find a lot of tools generate keys like this:
---- BEGIN SSH2 PUBLIC KEY ---- Comment: "1024-bit RSA, converted from OpenSSH by me@example.com" AAAAB3NzaC1yc2EAAAABIwAAAIEA1on8gxCGJJWSRT4uOrR13mUaUk0hRf4RzxSZ1zRb YYFw8pfGesIFoEuVth4HKyF8k1y4mRUnYHP1XNMNMJl1JcEArC2asV8sHf6zSPVffozZ 5TT4SfsUu/iKy9lUcCfXzwre4WWZSXXcPff+EHtWshahu3WzBdnGxm5Xoi89zcE= ---- END SSH2 PUBLIC KEY ----
And my authorized_keys
file always contained the key like this:
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEA1on8gxCGJJWSRT4uOrR13mUaUk0hRf4RzxSZ1zRbYYFw8pfGesIFoEuVth4HKyF8k1y4mRUnYHP1XNMNMJl1JcEArC2asV8sHf6zSPVffozZ5TT4SfsUu/iKy9lUcCfXzwre4WWZSXXcPff+EHtWshahu3WzBdnGxm5Xoi89zcE=
(The public key concatenated together all on one line)
Похожие вопросы
-
9
В чем разница между командами "su -s" и "sudo -s"?
-
4
Требуется хороший бесплатный образ Ubuntu Server VMWare
-
4
Каковы различия между основными дистрибутивами Linux? Я замечу?
-
-
2
Ограничить использование процессора для Flash в Firefox?
-
2
Как мне заставить мой микрофон работать под Debian GNOME?
-
2
Конки установки - образцы / идеи?
-
3
Каковы различия между оконными менеджерами Linux?
-
2
ThunderBird / Синхронизация освещения с SE k770i
-
4
Файловая система Linux
-
6
Полноэкранная медленная вспышка в KDE 4