Как переустановить и включить брандмауэр CSF после возникновения ошибки CyberPanel Server 500 после установки CSF

Как повторно включить брандмауэр CSF в CyberPanel

Сервер CyberPanel установлен Затем произошла ошибка 500!

Если вы недавно обновились до В последующих коммитах версии 2.3.6 вы могли заметить, что CSF (ConfigServer Security и) Брандмауэр был отключен. Эта проблема напрямую связана с обновлением CyberPanel с Django v3 до v4, которое внесло критические изменения, в настоящее время несовместимые с CSF. К сожалению, CSF ещё не обновил свой код для совместимости с Django 4, из-за чего многие пользователи остались без работающего брандмауэра.

Как повторно включить брандмауэр CSF на CyberPanel-1

вопрос

CyberPanel обновилась с Django v3 до v4, чтобы соответствовать новейшим стандартам веб-разработки, но это привело к серьёзному конфликту с CSF. Основная проблема заключалась в том, что многие пользователи использовали CSF для управления брандмауэром, но CSF ещё не был обновлён для поддержки Django 4. Это несоответствиеЭто приводит к тому, что CyberPanel 2.3.6 и более поздние версии отключают CSF, что потенциально делает ваш сервер уязвимым.

После установки CSF на CyberPanel версии 2.3.9 пользователи столкнулись с внутренней ошибкой сервера 500, из-за которой панель управления стала недоступна. Ошибка 500 обычно указывает на проблему конфигурации на стороне сервера, конфликт зависимостей или сбой выполнения кода. Судя по обсуждениям в сообществе и соответствующей документации, это может быть связано с проблемой совместимости CSF с последней версией CyberPanel, в частности, с обновлением с Django v3 до v4.

Несовместимые версии Django

CyberPanel обновила Django до версии 4, начиная с версии 2.3.6, но текущая версия CSF ещё не полностью адаптирована к Django v4. Это может привести к сбоям в работе Python-модулей CSF (таких как ConfigServer/URLGet.pm или DisplayUI.pm) в среде CyberPanel.
Отзывы сообщества указывают на то, что CSF отключен в CyberPanel 2.3.6 и более поздних версиях или вызывает ошибку 500 после установки.

Проверьте текущую среду

Подтвердите версию CyberPanel

cat /usr/local/CyberCP/version.txt

Подтвердите версию Django

python3 -c "импорт django; печать (django.get_version())"

Если отображается 4.xx, возможно, он несовместим с CSF.

Удаление существующего CSF

Если сервер CyberPanel сообщает об ошибке 500, сначала удалите CSF, а затем проверьте, продолжает ли CyberPanel выдавать ошибку. Если после удаления панель доступна нормально, это вызвано конфликтом между CSF и CyberPanel..

ш /etc/csf/uninstall.sh

Переустановите CSF с помощью скрипта отката

Если требуется CSF и указанные выше шаги не помогли, вы можете вернуться к версии 2.3.5 (которая поддерживает Django v3 и CSF):
cd /usr/src wget https://sajetekengineering.com/wp-content/uploads/cyberpanel/cyberpanel_csf_rollback.sh chmod +x cyberpanel_csf_rollback.sh ./cyberpanel_csf_rollback.sh

Скрипт создает резервную копию существующей конфигурации и выполняет понижение до совместимой версии.

Переустановить CSF

wget https://github.com/waytotheweb/scripts/raw/refs/heads/main/csf.tgz tar -xzf csf.tgz cd csf sh install.sh

Официальное решение

Официальный скрипт установки обновлён. Если после установки CSF вы столкнулись с ошибкой 500, вам нужно будет обновиться и установить CSF только с помощью официального скрипта обновления.

ш <(curl https://raw.githubusercontent.com/usmannasir/cyberpanel/stable/preUpgrade.sh || wget -O - https://raw.githubusercontent.com/usmannasir/cyberpanel/stable/preUpgrade.sh)

 

Временное решение: ручной откат

Откат CyberPanel до совместимой версии. Для тех, кому необходимо восстановить функциональность CSF, временным решением будет ручной откат к версии CyberPanel, совместимой с CSF. Чтобы упростить этот процесс, я создал скрипт для автоматического отката.

Что делает сценарий

  1. Резервное копирование конфигурации CyberPanel и CSF:
    • Сначала скрипт создает резервную копию вашего каталога./usr/local/CyberCPчтобы гарантировать безопасное сохранение текущих настроек CyberPanel.
    • Он также создает резервные копии ваших файлов конфигурации CSF./etc/csf(если есть). Поскольку нам потребуется удалить и переустановить CSF, этот шаг гарантирует сохранение всех пользовательских настроек брандмауэра.
  2. Загрузите совместимую версию CyberPanel:
    • Этот скрипт загрузит версию CyberPanel, совместимую с CSF. Эта версия по-прежнему использует Django v3, который полностью совместим с CSF.
    • Резервное копирование и восстановление учетных данных, хранящихся в settings.py
  3. Понижение версии Django и переустановка CSF:
    • Этот скрипт удаляет и переустанавливает CSF через Cyberpanel, тем самым восстанавливая пользовательский интерфейс.
    • Наконец, скрипт понижает версию Django с v4 до v3, чтобы привести ее в соответствие с загруженной версией CyberPanel и гарантировать правильную работу CSF.

Как использовать скрипт

Чтобы использовать этот скрипт отката, выполните следующие действия:

pip install -r /usr/local/CyberCP/requirments.txt --force-reinstall
ш <(curl https://sajetekengineering.com/wp-content/uploads/cyberpanel/install_csf_cyberpanel.sh || wget -O - https://sajetekengineering.com/wp-content/uploads/cyberpanel/install_csf_cyberpanel.sh)

После запуска скрипта выше и перезапуска сервера CSF был успешно установлен!

После установки CSF при запуске появится предупреждение

*ПРЕДУПРЕЖДЕНИЕ* Расположение двоичного файла [SENDMAIL] [/usr/sbin/sendmail] в /etc/csf/csf.conf неверно, не установлено или не является исполняемым
*ВНИМАНИЕ* Отсутствие или неправильное расположение двоичных файлов приведет к нарушению функциональности csf и lfd.

Это предупреждение означает, что CSF обнаружил, что двоичный путь SENDMAIL /usr/sbin/sendmail, указанный в файле конфигурации /etc/csf/csf.conf, не найден, не установлен или не может быть выполнен. Это повлияет на нормальную работу CSF и LFD.

sudo apt install sendmail

Перезапустите службы CSF и LFD
Убедившись, что все работает правильно, перезапустите службы CSF и LFD:

sudo systemctl restart csf
sudo systemctl restart lfd

Этот ручной откат — лишь временное решение, но он крайне важен для пользователей, использующих CSF для управления брандмауэром. Этот обходной путь позволит вам поддерживать безопасность вашего сервера, пока CSF не обновит свой код для совместимости с Django 4. Следите за обновлениями CSF и CyberPanel, чтобы в будущем найти более постоянное решение.

2.3/5 - (3 отзыва)

Ответить

Ваш адрес электронной почты не будет опубликован. Обязательные поля помечены *