Назад | Перейти на главную страницу

SSH из PuTTy в Debian Ошибка «authorized_keys не является обычным файлом»

Я не могу подключиться со своего компьютера под управлением Windows 7 с помощью PuTTy к недавно настроенному серверу Debian Squeeze с использованием аутентификации по ключу SSH RSA.

Я получаю эту ошибку при запуске SSH в режиме отладки: User myuser authorized keys /home/myuser/.ssh/authorized_keys is not a regular file


Что я уже сделал:

  1. ssh-keygen -t rsa
  2. Установите кодовую фразу.
  3. Скопировал файл id_rsa.pub в ~/.ssh/authorized_keys
  4. Скопировал id_rsa в текстовый файл на моем компьютере с Windows 7
  5. Импортировал ключ в puttygen.exe и преобразовал его в .ppk файл закрытого ключа.
  6. Загрузил этот файл закрытого ключа в pageant.exe и убедился, что в методах Connection-> SSH-> Auth Authentation установлен флажок «Попытка аутентификации с использованием Pageant».
  7. Загрузил профиль.

На основе FAQ от OpenSSH.org, Я изменил разрешения на следующие:

drwxr-xr-x 3 root   root   4096 Aug 13 14:16 /home
drwxr-xr-x 7 myuser myuser 4096 Aug 17 12:55 /home/myuser
drwx------ 3 myuser myuser 4096 Aug 17 13:24 /home/myuser/.ssh
drw------- 2 myuser myuser 4.0K Aug 17 13:23 /home/myuser/.ssh/authorized_keys
-rw------- 1 myuser myuser  396 Aug 17 13:17 /home/myuser/.ssh/authorized_keys/id_rsa.pub

Я запустил режим отладки по ssh и получил следующее:

debug1: userauth-request for user myuser service ssh-connection method publickey
debug1: attempt 1 failures 0
debug1: test whether pkalg/pkblob are acceptable
debug1: Checking blacklist file /usr/share/ssh/blacklist.RSA-2048
debug1: Checking blacklist file /etc/ssh/blacklist.RSA-2048
debug1: temporarily_use_uid: 1000/1000 (e=0/0)
debug1: trying public key file /home/myuser/.ssh/authorized_keys
User myuser authorized keys /home/myuser/.ssh/authorized_keys is not a regular file
debug1: restore_uid: 0/0
Failed publickey for myuser from 10.1.1.1 port 50710 ssh2

Я не знаю, что еще проверить. Я не настраивал SELinux или что-то еще. Будем очень признательны за любые идеи.

Проблема в:

User myuser authorized keys /home/myuser/.ssh/authorized_keys is not a regular file

Похоже, вы создали каталог с именем authorized_keys и поместите в него все свои ключевые файлы. Вот почему это не работает. authorized_keys предназначен для обычного файла, и вы можете поместить все свои ключи в ~/.ssh.

Основная проблема в том, что ~/.ssh/authorized_keys не должен быть каталог. Это текстовый файл, содержащий открытые ключи, добавленные одна за другой строкой.

Поскольку у вас только одна клавиша, просто вытащите ~/.ssh/authorized_keys/id_rsa.pub файл во временную папку, удалите ~/.ssh/authorized_keys каталог, затем переместите файл открытого ключа назад, переименовав его в ~/.ssh/authorized_keys. Теперь у вас должна быть возможность подключиться без пароля для входа.