Как мне подключиться к SSH на роутере openwrt, если он использует устаревшие стандарты шифрования?

Я установил старую версию OpenWrt на мой роутер, который использует программное обеспечение, выпущенное в период с 2014 по 2016 годы. В нём установлен Dropbear. Мой компьютер, на котором установлена современная версия клиента OpenSSH, выдает следующую ошибку при подключении: 

<pre><code>nikita@nikita-desktop:~$ ssh root@ip_address
Unable to negotiate with ip_address port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,[email protected]</code></pre>

Как можно решить эту проблему?
  • 9 октября 2024 г. 23:34
Ответы на вопрос 2
Для решения проблемы с подключением к роутеру OpenWrt через SSH в случае устаревших стандартов шифрования, вам нужно использовать специальные параметры в клиенте OpenSSH, чтобы согласовать уязвимые методы шифрования, которые поддерживает ваш роутер. Вы можете попробовать следующие шаги:

### 1. Использовать параметры командной строки

Вы можете указать методы обмена ключами при выполнении команды SSH. Попробуйте выполнить команду с параметром `-o` для задания конкретного метода:

```bash
ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 root@ip_address
```

### 2. Изменить файл конфигурации SSH клиента

Если команда с параметрами работает, вы можете добавить эти параметры в файл конфигурации вашего SSH-клиента, чтобы не вводить их каждый раз вручную:

1. Откройте файл конфигурации SSH клиента, который обычно находится по пути `~/.ssh/config`.
2. Добавьте следующее:

```
Host ip_address
    KexAlgorithms +diffie-hellman-group1-sha1
```

Замените `ip_address` на реальный IP-адрес шлюза. Если вы хотите, чтобы это правило работало для всех хостов, вы можете заменить `Host ip_address` на просто `Host *`.

### 3. Убедитесь, что на вашем клиенте SSH установлены необходимые шифры

Если приведённые выше шаги не работают, убедитесь, что вы используете актуальную версию OpenSSH, однако, будьте осторожны, работая с устаревшими шифрами из-за соображений безопасности.

### 4. Обновление роутера (опционально)

Если это возможно, также рассмотрите возможность обновления прошивки вашего роутера до более новой версии OpenWrt, которая поддерживает современное шифрование. Это улучшит безопасность и совместимость.

### Заключение

Использование устаревших методов шифрования может подвергать вас риску, поэтому, по возможности, старайтесь использовать современные и безопасные алгоритмы. Если работа с устаревшим оборудованием неизбежна, приведённые выше шаги помогут вам установить соединение.
ssh -o KexAlgorithms=+diffie-hellman-group1-sha1 root@ip_address

SHA1 включите принудительно
Похожие вопросы