Отказано в доступе (открытый ключ) при попытке подключения к серверу через Интернет

Отказано в доступе (открытый ключ) при попытке подключения к серверу через Интернет

Запуск Ubuntu Server 20.04.01

После переадресации порта 22 на моем маршрутизаторе я смог получить доступ к своему серверу через ssh, подключившись к IP-адресу. Подключение localhost к IPv4 также работало. Однако после настройки двухфакторной аутентификации с помощью Google Authenticator я больше не могу подключиться, используя IP-адрес, работает только IPv4, и он проверяет код аутентификации.

Каждый раз он говорит:

sudo ssh [email protected] 
[email protected]: Permission denied (publickey).

Я убедился, что ключ, сгенерированный в WSL перед подключением к серверу (/home/username/.ssh/id_rsa.pub), также находится в файле сервера (/home/username/.ssh/authorized_keys) при входе в систему.

Какие-либо предложения?

решение1

Продолжу свой комментарий, так как он решил проблему.

Я думаю, что добавление Google Authenticator было событием, не связанным с вашей проблемой. По сути, запуск команды с sudoзапускает ее в контексте пользователя root. Когда вы запускаете команду ssh user@server, она будет искать /home/$USER/.ssh/закрытые ключи для использования. Когда вы запускаете ее с sudo ssh user@server, она будет искать /root/.ssh/закрытые ключи в. Я предполагаю, что ваши ключи находятся под учетной записью вашего пользователя, а не root.

Связанный контент