Ошибка аутентификации SVN / SASL: не удалось инициализировать шифр ‘rc4’

Вопрос или проблема

Я пытаюсь обновить старый проект через SVN и получаю следующее сообщение:

Ошибка аутентификации SASL: SASL(-1): общая ошибка: внутренняя ошибка: не удалось инициализировать шифр 'rc4'

openssl сообщает мне, что RC4 отключен по умолчанию, а google говорит, что включать его — плохая идея.

на обоих (клиенте и сервере) у меня те же наборы шифров для ssl (должны быть по умолчанию):

> openssl ciphers -s
TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES128-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA

мне кажется, это проблема с конфигурацией, но openssl.cnf, subversion/config и .subversion/config (на клиенте) по умолчанию, я их не трогал.

так что я думаю, это может быть что-то с SASL, но я не могу это выяснить. возможно, я напутал в конфигурациях, пытаясь настроить почту с exim4 и dovecot вместо postfix (но это другая история). в любом случае я уверен, svn работал после этого.

пожалуйста, помогите мне.

Версии клиента:

6.6.65-1-MANJARO
svn, версия 1.14.4 (r1920901)
OpenSSL 3.4.0 22 Oct 2024 (Библиотека: OpenSSL 3.4.0 22 Oct 2024)

Сервер:

Debian GNU/Linux 12
svn, версия 1.14.2 (r1899510)
libsasl2-2 (2.1.28+dfsg-10)
OpenSSL 3.0.15 3 Sep 2024 (Библиотека: OpenSSL 3.0.15 3 Sep 2024)

.

Ответ или решение

Проблема, которую вы описали с ошибкой аутентификации SASL в SVN при инициализации шифра ‘rc4’, связана с тем, что шифр RC4 по умолчанию отключен в современных версиях OpenSSL из-за причин безопасности. Этот шифр считается устаревшим и ненадежным, поэтому его использование не рекомендуется. Рассмотрим шаги, которые могут помочь в решении этой проблемы.

Факты

  1. Отключение RC4 в OpenSSL: OpenSSL по умолчанию отключает RC4 в новых версиях из-за его уязвимости.
  2. Конфигурация: Вы упомянули, что конфигурации находятся в состоянии по умолчанию, и изменения не вносились.
  3. Разные версии OpenSSL и SVN: И клиенты, и серверы используют различные версии OpenSSL и SVN. Это важно учитывать, так как несовместимости или устаревшие компоненты могут вызывать проблемы.
  4. Варианты шифров: RC4 отсутствует в списке поддерживаемых шифров в выводе команды openssl ciphers -s.

Эмоциональное вовлечение

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

Решение

Чтобы решить вашу проблему, следуйте предложенным шагам:

1. Обновление библиотек SASL

Убедитесь, что у вас установлена последняя версия библиотеки SASL, которая может поддерживать новые шифры.

2. Настройка SASL для использования современных шифров

Поскольку RC4 более не используется, рассмотрите возможность изменения конфигурации SASL на поддержку современных шифров. Проверьте наличие файлов конфигурации, таких как /etc/sasl2/ на сервере, для обновления предпочтительных шифров.

3. Обновление конфигурации OpenSSL

Проверьте файл конфигурации OpenSSL (обычно openssl.cnf) и убедитесь, что он соответствует современным стандартам безопасности. Это может помочь устранить несовместимые шифры.

4. Проверка зависимости других сервисов

Если вы недавно вносили изменения для других сервисов, таких как Exim4 и Dovecot, проверьте совместимость настроек безопасности SASL и SSL для всех серверных приложений.

5. Логирование и диагностика

Активируйте подробное логирование в SVN, чтобы получить дополнительную информацию о процессе аутентификации. Это может помочь выявить конкретные проблемы.

Заключение

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

Оптимизация и настройка подобных систем — это ответственный процесс, который требует взвешенных решений и постоянного мониторинга состояния безопасности.

Оцените материал
Добавить комментарий

Капча загружается...