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

Ubuntu 20.04 ssh-keygen unknown option -G не может сгенерировать параметры Диффи-Хеллмана

Я заметил, что в ssh-keygen для ubuntu 20.04 отсутствуют параметры для генерации параметров Диффи-Хеллмана. Обычно это часть упрочнения SSH. Кто-нибудь знает, почему он исчез?

Причина вызова заключалась в том, чтобы освободить несколько букв выбора для ssh-keygen команда. Это было закреплено в дополнительных -O варианты и модифицированное использование -M вариант, нарушающий совместимость с предыдущими версиями. Это было сделано 30 декабря 2019 г. это коммит:

upstream: убрать однобуквенные флаги для параметров модулей

Переместите все параметры генерации модулей, чтобы они жили под флагом -O.

Освобождает семь однобуквенных флагов.

NB. это изменение нарушает существующий синтаксис командной строки ssh-keygen для операций, связанных с модулями. К счастью, мало кто ими пользуется.

обратная связь и хорошо, Маркус @

OpenBSD-Commit-ID: d498f3eaf28128484826a4fcb343612764927935

Новый синтаксис описан в более новом (выделенном) ssh-keygen страница руководства под ПОКОЛЕНИЕ МОДУЛЕЙ:

Генерация простых чисел выполняется с помощью -M generate вариант. Желаемая длина простых чисел может быть указана -O bits вариант. Например:

# ssh-keygen -M generate -O bits=2048 moduli-2048.candidates

[...]

# ssh-keygen -M screen -f moduli-2048.candidates moduli-2048

Это не проблема Ubuntu, на самом деле это часть OpenSSH. Алгоритм diffie-hellman заметно слаб, и поэтому они сделали его наследием в более поздних версиях в пользу более сильных алгоритмов.

Если вам нужно связаться с системой, которая требует diffie-hellman, вы можете сделать:

ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 user@legacyhost

Или вы можете заменить любой устаревший алгоритм на diffie-hellman