Есть ли способ временно отключить аутентификацию с открытым ключом при ssh'ing и вместо этого использовать аутентификацию по паролю?
В настоящее время я хочу получить доступ к удаленному серверу, но я использую другой ноутбук, а не свой.
Просмотр этого ссылка на сайт, Я обнаружил, что команда ssh -o PreferredAuthentications=keyboard-interactive -o PubkeyAuthentication=no host1.example.org
не везде работает. И да, у меня это не работает. Я использую: OpenSSH_5.9p1 Debian-5ubuntu1, OpenSSL 1.0.1 14 марта 2012 г.
Изменить: я также пытался напечатать ssh -o PreferredAuthentications=password -o PubkeyAuthentication=no
но все еще есть "Permission denied (publickey)".
Итак, есть ли конкретная конфигурация на удаленном сервере, чтобы эта команда работала? Или, когда эта команда будет работать должным образом?
Большое спасибо за советы.
Если вы хотите обойти аутентификацию по ключу при входе на сервер, просто запустите:
ssh -o PubkeyAuthentication=no user@host
Это похоже на проблему конфигурации на стороне сервера.
Если сервер разрешает аутентификацию с открытым ключом и паролем, то даже если вы попытаетесь подключиться без файла с закрытым ключом, присутствующего на клиенте, он должен запросить пароль.
Если вы получаете сообщение об ошибке "Permission denied (publickey)"
тогда похоже, что аутентификация по паролю на вашем сервере не поддерживается.
Не видя файла / etc / sshd_config, это трудно понять, но я предполагаю, что вам нужно убедиться, что существует следующая строка:
PasswordAuthentication yes
Перезагрузите сервер ssh, и при подключении с клиента вам будет предложено ввести пароль, если закрытый ключ отсутствует или если закрытый ключ не совпадает с открытым ключом на сервере.
Более безопасной альтернативой этому, конечно же, было бы скопировать ваш закрытый ключ на ноутбук, который вы используете, или фактически создать новый закрытый ключ, который будет использоваться на этом ноутбуке, и добавить открытый ключ в .ssh/authorized_keys
Просто создайте пустой файл идентификатора.
touch $HOME/.ssh/blank
Если вы оставите разрешение 640 или 644, то ssh будет жаловаться, что разрешения недостаточно безопасны, и не будет его использовать. Если вы измените его до 600, он запросит пароль 3 раза и завершится ошибкой, потому что пароля нет. Так что оставьте 640 или 644.
Затем, когда вы используете ssh, используйте эту команду.
ssh -i $HOME/.ssh/blank servername-or-ip
Вы можете использовать .ssh / config и настроить запись хоста так, чтобы она не использовала ключ, но она менее временна, или вы можете создать псевдонимы для server и server-nokey, но это становится длинным, и его сложно поддерживать.