🖧 Как исправить sshd: ssh-rsa algorithm is disabled |

🖧 Как исправить sshd: ssh-rsa algorithm is disabled

Мануал

Почему мы получаем ошибку “sshd: ssh-rsa algorithm is disabled”?

Исследовав эту ошибку, мы узнали, что она связана с недавними обновлениями OpenSSH, в которых было отказано в использовании алгоритма подписи ssh-rsa из-за проблем с безопасностью, связанных с хэш-алгоритмом SHA-1, на который опирается ssh-rsa.

Было установлено, что SHA-1 уязвим к атакам на коллизии, что делает его менее безопасным по сравнению с более современными алгоритмами.

OpenSSH официально объявил об отказе от алгоритма ssh-rsa в примечаниях к выпуску, начиная с версии 8.2.

Официальные примечания к выпуску OpenSSH содержат подробную информацию об этом изменении.

В этом руководстве мы рассмотрим различные методы выхода из этой ситуации, вы можете выбрать подходящий метод, исходя из ваших требований к безопасности.

Решение 1: Выберите альтернативу ключу ssh-rsa

Для обеспечения безопасности SSH-соединений рекомендуется использовать более современные алгоритмы, не опирающиеся на SHA-1.

К таким альтернативам относятся rsa-sha2-256 и rsa-sha2-512.

Вот пример того, как можно сгенерировать новый ключ, используя более безопасный алгоритм:

ssh-keygen -t rsa-sha2-512 -b 4096 -f ~/.ssh/id_rsa

Мы уже публиковали подробное руководство по использованию ssh-keygen, которое вы можете посмотреть для получения дополнительной информации.

🖧 30+ вопросов и ответов на интервью по SSH

После того, как вы сгенерировали новые ключи на вашем SSH-клиенте, вы можете использовать ssh-copy-id для копирования открытого ключа на удаленный SSH-сервер.

Решение 2: Разрешить использование ключа ssh-rsa

Если вы решили проигнорировать рекомендации по безопасности и предпочитаете использовать ключ ssh-rsa, то вам необходимо явно разрешить это в файле /etc/ssh/sshd_config вашего SSH-сервера.

Добавьте следующие строки в файл /etc/ssh/sshd_config, чтобы явно разрешить алгоритм ssh-rsa в PubkeyAcceptedAlgorithms, HostKeyAlgorithms и PubkeyAcceptedKeyTypes.

PubkeyAcceptedAlgorithms +ssh-rsa
HostKeyAlgorithms +ssh-rsa
PubkeyAcceptedKeyTypes +ssh-rsa

После внесения изменений перезапустите службу SSH:

sudo systemctl restart sshd

Решение 3: Проверьте наличие общесистемных криптографических политик

В некоторых системах, например CentOS или RHEL, могут применяться общесистемные криптографические политики, которые могут отменять настройки SSH.

Эти политики определяют, какие криптографические алгоритмы и протоколы разрешены или запрещены для различных приложений и служб в системе.

При необходимости вы можете проверить и изменить эти политики.

Проверьте текущие криптографические политики:

sudo update-crypto-policies --show

Доступны следующие основные политики:

  • DEFAULT: системная политика по умолчанию. Она обеспечивает хороший баланс между безопасностью и совместимостью, отключая слабые алгоритмы и протоколы.
  • LEGACY: менее строгая политика, позволяющая использовать старые, устаревшие криптографические алгоритмы и протоколы по соображениям совместимости.
  • FUTURE: более строгая политика, которая принуждает к использованию более сильных криптографических алгоритмов и протоколов, возможно, в ущерб совместимости.
  • FIPS: Политика, обеспечивающая соответствие Федеральному стандарту обработки информации (FIPS) 140-2, используемому в правительственных системах США. Эта политика очень строгая и допускает только одобренные FIPS алгоритмы и протоколы.

Если для политики установлено значение FIPS или DEFAULT, вам может понадобиться установить значение LEGACY, чтобы разрешить более старые алгоритмы:

sudo update-crypto-policies --set LEGACY

Политика LEGACY позволяет использовать устаревшие криптографические алгоритмы и протоколы, которые могут требоваться устаревшим приложениям или системам.

Это может быть полезно, если вы работаете со старыми ключами SSH, конфигурациями SSL/TLS или другими криптографическими инструментами, которые не поддерживают современные алгоритмы.

Однако следует помнить, что использование старых, менее безопасных алгоритмов может подвергнуть вашу систему уязвимостям, которые были устранены в новых алгоритмах.

Эти старые алгоритмы могут быть восприимчивы к известным атакам, таким как атаки на коллизии SHA-1 или уязвимости в старых версиях SSL/TLS.

Затем перезапустите службу SSHD:

sudo systemctl restart sshd
sudo systemctl status sshd

см. также:

 

 

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий