Я упомянул некоторые из многих вещей, которые я пробовал, и дать пару диагностических данных. Я был бы признателен за любые подсказки о том, как отладить это:
me@myubuntu:~/.ssh$ ssh localhost
Permission denied (publickey).
Раньше я запускал
sudo ufw allow ssh/tcp
и настраивал переадресацию портов для порта 22 в моем маршрутизаторе и проверял, что (здесь, может быть, и не обязательно), ssh даже выходит на маршрутизатор, когда я сам ssh?).
В моем каталоге home / .ssh я сделал cat id_rsa.pub >> authorized_keys и настроил Разрешения с chmod 600 authorized_keys.
Запуск ssh -v localhost дает много результатов, и вот последние несколько строк, где я думаю, что проблема возникает:
debug1: Host 'localhost' is known and matches the ECDSA host key.
debug1: Found key in /home/me/.ssh/known_hosts:3
debug1: ssh_ecdsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /home/me/.ssh/id_rsa
debug1: Authentications that can continue: publickey
debug1: Offering RSA public key: me@myubuntu
debug1: Authentications that can continue: publickey
debug1: Trying private key: /home/me/.ssh/id_dsa
debug1: Trying private key: /home/me/.ssh/id_ecdsa
debug1: No more authentication methods to try.
Permission denied (publickey).
Мне удалось ssh в мой репозиторий bitbucket, поэтому я думаю, что это означает, что мой набор ключей id_rsa действителен и имеет правильные разрешения.
Обновление 1:
> ~/.ssh$ ls -l ~/.ssh/authorized_keys
-rw------- 1 me me 747 Oct 25 08:27 /home/me/.ssh/authorized_keys
(выглядит хорошо) [ ! d9]
Обновление 1:
~/.ssh$ ls -ld ~/.ssh
drwx------ 2 me me 4096 Oct 25 08:27 /home/me/.ssh
(выглядит хорошо)
Обновление 3: Последние несколько строк /var/log/auth.log сразу после I run ssh localhost:
Oct 25 09:49:47 me-myubuntu sshd[16442]: Connection from 127.0.0.1 port 36944
Oct 25 09:49:47 me-myubuntu sshd[16442]: User me from localhost not allowed because not listed in AllowUsers
Oct 25 09:49:47 me-myubuntu sshd[16442]: input_userauth_request: invalid user me [preauth]
Oct 25 09:49:47 me-myubuntu sshd[16442]: Connection closed by 127.0.0.1 [preauth]
Хорошо посмотрите на это! Я ранее испортил файл sshd_config и забыл правильно указать параметр AllowUsers.
РЕШЕНИЕ: Включить localhost в строку AllowUsers в sudo gedit /etc/ssh/sshd_config