РЕШЕННЫЙ. Это была группа перезаписываемый бит на user_B
s корневой каталог, который обманул меня.
У меня заканчиваются идеи об этом. Каждая подсказка высоко ценилась бы.
Рассмотрите эту установку:
S
под управлением Ubuntu, пользователи boldewyn
, user_A
и user_B
A
и B
, каждый с локальным пользователем boldewyn
(имеет id_rsa
ключ для входа в систему S
) и второй ключ id_rsa_A
/ id_rsa_B
. Все ключи хранятся в /home/boldewyn/.ssh
. Обе под управлением Ubuntu.user_A
и user_B
на S
имейте пустые пароли, вход в систему должен быть возможным только через открытый ключ и SSH.
+--------+ +-------------------+ +--------+
| laptop | | server | | laptop |
| A | | S | | B |
| | | | | |
+--------+ SSH +-------------------+ SSH +--------+
|id_rsa_A|------------|< user_A user_B >|------------|id_rsa_B|
+--------+ +-------------------+ +--------+
|id_rsa |------------|< boldewyn >|------------|id_rsa |
+--------+ +-------------------+ +--------+
Какие работы:
Войдите в систему от любого ноутбука как boldewyn
(использование id_rsa
и S:/home/boldewyn/.ssh/authorized_keys
Войдите в систему от ноутбука A
как пользователь user_A
(использование id_rsa_A
и S:/home/user_A/.ssh/authorized_keys
: ssh -i id_rsa_A user_A@S
)
Моя проблема: На ноутбуке B
точно та же установка перестала работать для user_B
. Я не могу войти в систему на S
, потому что по любой причине ключ не принят, и подсказка пароля происходит (user_B
не имеет никакого пароля, это не опция).
Что я проверил:
На ноутбуке B
:
~/.ssh
и все его содержаниеid_rsa_B
в boldewyn
s .authorized_keys
и ssh -i id_rsa_B boldewyn@S
: работы (ключ не поврежден или так),ssh -vvv
: Ну, не действительно полезный: Просто говорит мне однажды, что это пропускает publickey
метод теперь. Никакая причина не приведена.На сервере S
:
user_B
s .authorized_keys
файл/home/*/.ssh
и все их содержание (особенно сравненный user_A
и user_B
)$HOME
установлен (через sudo -u user_B -i
)/etc/ssh/sshd_config
s AllowUsers
(и AllowGroups
, между прочим)Другой материал:
Единственная разница я могу придумать между user_A
и user_B
с которым я создал последнего adduser -M
(не создавайте корневой каталог; это уже существовало прежде). Однако я трижды проверенный, это /home/user_B
и все соответствующие дочерние элементы принадлежат user_B
и его основная группа.
Вы тройная проверка это /home/user_B
(а также /home/user_B/.ssh
и /home/user_B/.ssh/authorized_keys
) имел верные полномочия: не перезаписываемый кроме пользователю, т.е. режиму 755 или больше строгих?
Я думаю, что это могло бы быть связано со способом, которым Вы генерировали те ключи. Я попробовал бы еще раз. Ключи сгенерированы с ssh-keygen средством. Возможно, когда один набор ключей был сгенерирован, пароль использовался в процессе поколения. Вы могли бы попытаться просто поразить клавишу Enter, когда Вам предлагают пароль. Скопируйте часть паба того ключа к человечности. Удостоверьтесь, что Вы удаляете к оскорблению записи в .ssh/authorized_keys файле. Долгое размышление: если кошка, файл паба удостоверяется, что Вы используете a>> (добавляет), а не> (replace_, когда Вы копируете файл паба в authorized_keys файл. (кошка id_rsa.pub>> .ssh/authorized_keys).
Я немного удивлен. Я использовал свои методы на работе, с помощью Соляриса и Cygwin, и дома на моей LAN Linux, состоявшей из Centos, Slackware, Debian и Ubuntu. Действительно ли возможно, что Вы закрытый ключ не соответствуете общедоступному? При генерации ключей, Вы получаете пару, лобковый будет скопирован традиционно в .ssh/authorized файл ключей в соответствии с корневым каталогом целевой машины. Если Вы повторно создаете ключи, новый .pub файл должен быть скопирован. Новый закрытый ключ не соединится со старым общедоступным. Я замечаю, что у Вас, кажется, есть .authorized_keys папка в корневом каталоге. Я никогда не пробовал это. Я думаю, что нормальное размещение находится в/home/user_name/.ssh/authorized_keys папке. У меня никогда не было проблем с помощью любой версии Соляриса приблизительно от 6 на, Freebsd, и различные повторения и разновидности Linux.Удачи
Alan