Naxsi - это часть программного обеспечения, расширяющая Nginx (модуль). Он предоставляет WAF (брандмауэр веб-приложений) и защищает ваши сайты от внедрения XSS и SQL, двух известных уязвимостей. По словам разработчиков, Naxsi - это не требующий обслуживания модуль, поэтому после его установки вы увидите значительное повышение безопасности вашего сайта без особых хлопот.
В этом документе вы увидите, как мы можем добавить модуль Naxsi в новую или существующую установку Nginx в Ubuntu 14.04.
Шаг 1А: Установка Naxsi без существующей установки Nginx
Если на вашем сервере еще не установлен Nginx, выполните этот шаг. Если у вас уже есть существующая установка Nginx, выполните шаг 1B. Прежде чем мы собираемся установить Naxsi, было бы разумно обновить нашу систему. Сделайте это, выполнив:
apt-get update
Далее мы можем установить Naxsi. Используя apt-get
для установки, Naxsi и его зависимости будут установлены. Naxsi будет автоматически запущен при загрузке.
apt-get install nginx-naxsi
Шаг 1B: Установка Naxsi с существующей установкой Nginx
Шаг 1A не может быть выполнен, если Nginx уже установлен, так как nginx-naxsi
пакет будет Nginx + Naxsi. Если у вас уже есть Nginx и вы хотите, чтобы Naxsi поверх этого, как правило, замена nginx-core
пакета на nginx-naxsi
пакет должна работать нормально. Целесообразно создать резервную копию, предпочтительно, всего вашего сервера, а также /etc/nginx/
следует создать резервную копию каталога.
Если возможно, разверните новый сервер с полностью новой установкой Nginx, используя nginx-naxsi
пакет. Если нет, сделайте резервную копию вашего сервера и введите:
apt-get install nginx-naxsi
Это должно установить Naxsi и заменить существующий Nginx, но сохранить все ваши файлы.
Шаг 2: Редактирование настроек Naxsi
Чтобы включить Naxsi, откройте файл /etc/nginx/nginx.conf
:
vi /etc/nginx/nginx.conf
и найдите следующий раздел:
# nginx-naxsi config
##
# Uncomment it if you installed nginx-naxsi
##
# include /etc/nginx/naxsi_core.rules;
Снимите #
перед, include
чтобы загрузить правила Naxsi, которые активируют Naxsi. После внесения этого изменения строка должна выглядеть следующим образом:
include /etc/nginx/naxsi_core.rules;
Конфигурация Naxsi может быть найдена в /etc/nginx/naxsi.rules
. Вы можете посмотреть, что он делает, и при желании изменить некоторые настройки, в зависимости от ваших потребностей и типа веб-сайтов, которые вы размещаете.
После включения Naxsi и редактирования конфигурации нам нужно вручную включить Naxsi для нашего сайта по умолчанию. Открыть /etc/nginx/sites-enabled/default
:
vi /etc/nginx/sites-enabled/default
Чтобы включить Naxsi в этом месте, удалите, #
если присутствует, в противном случае оставьте include
строку таким образом и не добавляйте #
.
# Uncomment to enable naxsi on this location
include /etc/nginx/naxsi.rules;
Шаг 3: Отключение режима обучения
Чтобы Naxsi защитил ваш сайт, нам нужно отключить режим обучения. Открыть /etc/nginx/naxsi.rules
:
vi /etc/nginx/naxsi.rules
Найдите строку LearningMode
и поместите #
перед ней. Это закомментирует строку и тем самым отключит режим обучения в конфиге.
Шаг 4: перезапуск Naxsi
Перезапустите Nginx, чтобы изменения вступили в силу:
service nginx reload
Теперь вы можете увидеть любые предупреждения безопасности от Naxsi в журнале Nginx:
tail -f /var/log/nginx/error.log