Я пытаюсь включить вход по SSH без пароля на моем домашнем маршрутизаторе ASUS RT-AC68U, на котором установлена версия 384.4_2Прошивка Asuswrt-Merlin(самый последний на момент публикации). Прочитав множество постов и руководств (включаяВот этот), я все еще не могу заставить его работать.
Я использую PUTTYGEN для генерации пары ключей RSA-2048, сохраняю открытый ключ на ~/.ssh/authorized_keys
маршрутизаторе, затем пытаюсь подключиться с помощью PUTTY, который я ограничил только RSA. Поскольку PUTTY согласовывает шифрование сеанса, он предлагает принять открытый ключ, предоставленный сервером.Я ожидаю, что это будет мой ключ от , ~/.ssh/authorized_keys
но вместо этого я всегда вижу собственный открытый ключ dropbear (от /etc/dropbear/dropbear_rsa_host_key
).Я знаю, что это он, по бегу dropbearkey -y -f /etc/dropbear/dropbear_rsa_host_key
.
Разрешение для ~/.ssh
папки установлено на 700
, для ~/.ssh/authorized_keys
на 600
. Ключ сохраняется через веб-интерфейс маршрутизатора в правильном формате (т. е. ssh-rsa AAAA...5iYw== rsa-key-20180401
, без переносов строк). Я пробовал root
и admin
как пользователь SSH. Я также пробовал все с нуля, после сброса маршрутизатора до заводских настроек, с тем же результатом.
Я что-то упускаю? На данный момент, я думаю, что единственным вариантом будет извлечь закрытый ключ dropbear /etc/dropbear/dropbear_rsa_host_key
и использовать его вместо того, чтобы генерировать свой собственный.
решение1
Поместите свой открытый ключ в/etc/dropbear/authorized_keys
редактировать:
Сначала я думал, что dropbear не читает, ~/.ssh
хотя должен, поэтому указал каталог по умолчанию /etc/dropbear/
. authorized_keys
По умолчанию его нет, поэтому это не так очевидно.
Перечитав вопрос, я понял, что вы путаете пары ключей хоста с парами ключей входа.
вам нужно принять пару ключей хоста маршрутизатора ( /etc/dropbear/dropbear_rsa_host_key
) и поместить свой открытый ключ на маршрутизаторе в любом из authorized_keys
файлов местоположения, и все должно быть готово.
решение2
В сообщении TB выше отсутствует один очень важный кусочек информации. Чтобы заставить ssh работать на ausus merlin 386.3_2 и, скорее всего, других релизах, «нужно включить раздел Jiffs в маршрутизаторе. Я только включил Jiffs, но не форматировал его, потому что там уже есть файлы конфигурации и т. д., и они могут стать еще одной головной болью, если их удалить.
Включите раздел Jiffs из asus merlin wui, он должен быть выше поля ssh в разделе администрирования.
Не стесняйтесь публиковать эту небольшую информацию... это как отсутствие синтаксиса в каком-то сложном руководстве...