Вход по SSH на основе открытого ключа без пароля на маршрутизаторе с прошивкой Asus Merlin

Вход по SSH на основе открытого ключа без пароля на маршрутизаторе с прошивкой Asus Merlin

Я пытаюсь включить вход по 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 в разделе администрирования.

Не стесняйтесь публиковать эту небольшую информацию... это как отсутствие синтаксиса в каком-то сложном руководстве...

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