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

Ключ SSH не найден при входе в CentOS 5.5 из Windows (Cygwin)

У меня возникают трудности со входом в VPS под управлением CentOS 5.5 с использованием аутентификации с открытым ключом. Я могу войти как в стандартную учетную запись пользователя, так и в учетную запись root, используя аутентификацию по паролю. Я использую Windows и Cygwin, все Cygwin и Windows уже несколько месяцев работают нормально; Я уверен, что проблема на стороне сервера.

Я использовал ssh-keygen для создания закрытого ключа id_rsa и открытого ключа id_rsa.pub. Я скопировал это в каталог пользователя на сервере и сделал cat id_rsa.pub >> authorized_keys. Мой каталог /home/myuser/.ssh установлен на 700, файл authorized_keys установлен на 600.

При входе в систему моя система сообщает следующее (-vvv):

Next authentication method: publickey
Offering RSA public key /.ssh/id_rsa
send_pubkey_test
we sent a publickey packet, wait for reply
Authentications that can continue: publickey,password

Затем спрашивает у меня пароль. Из файла / var / log / auth моего сервера у меня есть следующее, связанное с процессом открытого ключа

sshd[28249]: input_userauth_request: try method publickey
sshd[28249]: test whether pkalg/pkblob are acceptable
sshd[28249]: mm_key_allowed entering
sshd[28249]: mm_request_send entering: type 21
sshd[28249]: mm_key_allowed: waiting for MONITOR_ANS_KEYALLOWED
sshd[28249]: mm_request_receive_expect entering: type 22
sshd[28248]: monitor_read: checking request 21
sshd[28249]: mm_request_receive entering
sshd[28248]: mm_answer_keyallowed entering
sshd[28248]: mm_answer_keyallowed: key_from_blob: 0x2b6ea1049910
sshd[28248]: temporarily_use_uid: 10022/10022 (e=0/0)
sshd[28248]: trying public key file /home/myuser/.ssh/authorized_keys
sshd[28248]: secure_filename: checking '/home/myuser/.ssh'
sshd[28248]: secure_filename: checking '/home/myuser'
sshd[28248]: secure_filename: terminating check at '/home/myuser'
sshd[28248]: restore_uid: 0/0
sshd[28248]: key not found
sshd[28248]: temporarily_use_uid: 10022/10022 (e=0/0)
sshd[28248]: trying public key file /home/myuser/.ssh/authorized_keys
sshd[28248]: secure_filename: checking '/home/myuser/.ssh'
sshd[28248]: secure_filename: checking '/home/myuser'
sshd[28248]: secure_filename: terminating check at '/home/myuser '
sshd[28248]: restore_uid: 0/0
sshd[28248]: key not found
sshd[28248]: Normalising mapped IPv4 in IPv6 address
sshd[28248]: Failed publickey for myuser from 87.115.220.187 port 59636 ssh2

Как будто не может найти файл authorized_keys. Однако команда nano /home/myuser/.ssh/authorized_keys открывает файл без проблем.

Из / etc / ssh / sshd_config:

PubkeyAuthentication yes
AuthorizedKeysFile  .ssh/authorized_keys

Некоторые люди сообщают, что разрывы строк в файле authorized_keys могут вызывать проблемы, поэтому я убедился, что их нет (в любом случае в нем только 1 ключ). Файл начинается с ssh-rsa затем длинный ключ и, наконец, пробел и M1ke@M1ke-PC.

У кого-нибудь есть идеи?

Если ты действительно это сделал cat id_rsa.pub < authorized_keys тогда твой authorized_keys Тогда файл не будет содержать открытый ключ, соответствующий используемому вами закрытому ключу, поэтому ssh возвращается к аутентификации по паролю. Решить проблему

cat id_rsa.pub >>authorized_keys

чтобы добавить новый открытый ключ к вашим authorized_keys.

Является SELinux включен? Если да, файл требует установки контекста.