VeryNginx
VeryNginx — это мощный и удобный Nginx.
###Notice
После версии v0.2, адрес панели управления был перемещён на /verynginx/index.html
.
##Description
VeryNginx основан на lua_nginx_module(openrestry)
. Он реализует расширенный брандмауэр (WAF), статистику доступа и некоторые другие функции. Это усиливает функции Nginx и предоставляет дружественный веб-интерфейс.
Пользователь / Пароль: verynginx / verynginx
Полную версию руководства по настройке можно найти здесь: VeryNginx Wiki.
###Анализ состояния работы Nginx
###Пользовательское действие
VeryNginx поддерживает пользовательские действия, которые могут выполнять множество задач.
Пользовательское действие состоит из двух частей: Matcher
и Action
. Matcher
используется для проверки соответствия запроса правилу, а Action
— логика, которую вы хотите запустить.
Преимущество этого дизайна заключается в том, что
Matcher
включает все правила выбора и может быть повторно использован, что позволяет использовать правила для описания очень сложной логики.
####Matcher
Matcher
используется для выбора части всех запросов. Matcher
может содержать одно или несколько условий. В настоящее время поддерживаются следующие условия:
Когда запрос не конфликтует ни с одним из условий Matcher
, запрос будет выбран Matcher
.
####Action
Каждое Action
относится к Matcher
и будет выполняться для запросов, выбранных Matcher
.
В настоящее время у нас есть следующие Action
:
Matcher
может выбирать запросы по нескольким условиям, поэтому с помощью Filter Action
мы получили мощный WAF. WAF может фильтровать запросы со сложными правилами и возвращать специальный код состояния, когда он блокирует запрос.
VeryNginx предоставляет несколько простых правил фильтрации, которые могут предотвратить простую SQL-инъекцию, раскрытие файлов Git и SVN, атаки с обходом каталогов и общие инструменты сканирования.
####Backend
Каждый Backend
относится к Matcher
и обрабатывает запросы, выбранные Matcher
.
Сейчас у нас есть такие Backend
:
###Статистика запросов
VeryNginx может записывать запросы URI, включая следующие данные для каждого URI:
##Установка
###Установите Nginx / OpenResty
VeryNginx основан на OpenResty, поэтому вам нужно сначала установить его. Но не волнуйтесь, VeryNginx даёт скрипт для автоматической установки.
Просто запустите эту команду, openresty и verynginx будут установлены автоматически.
python install.py install
####Хотите использовать собственный Nginx?
VeryNginx может автоматически устанавливать openresty, так что вам не нужно устанавливать nginx (openresty) вручную.
Но если вы хотите использовать nginx, скомпилированный вами самостоятельно, это тоже нормально. Вы можете посмотреть некоторую помощь здесь.
###Использование
####Редактирование файла конфигурации nginx
Файл конфигурации VeryNginx находится в /opt/verynginx/openresty/nginx/conf/nginx.conf
, это демонстрационный файл. Вот перевод текста на русский язык:
Просто запустите verynginx, чтобы увидеть панель управления verynginx. Если вы хотите сделать что-то действительно полезное, вам нужно отредактировать этот файл и добавить в него свою собственную конфигурацию nginx.
В этот конфигурационный файл добавлены три команды include для встраивания verynginx в оригинальный nginx (openresty).
Эти команды include были размещены вне блока, блока внутренней конфигурации http, внутри блока конфигурации сервера, помните, сохраняйте эти три строки при изменении. Если вы добавляете новый блок конфигурации сервера или блок конфигурации http, также необходимо добавить подходящую строку include в него.
#Запуск службы
/opt/verynginx/openresty/nginx/sbin/nginx
#Остановка службы
/opt/verynginx/openresty/nginx/sbin/nginx -s stop
#Перезапуск службы
/opt/verynginx/openresty/nginx/sbin/nginx -s reload
После запуска службы вы можете увидеть состояние сервера и выполнить настройку на панели управления.
Адрес панели управления — http://{{your_machine_address}}/verynginx/index.html
.
По умолчанию пользователь и пароль — verynginx
/ verynginx
. Теперь вы сможете работать со всеми опциями.
Полную версию руководства по настройке можно найти в VeryNginx Wiki.
Если у вас возникли проблемы во время установки, настройки или использования, вы можете обратиться к документу по устранению неполадок.
/opt/verynginx/verynginx/configs/config.json
.config.json
, чтобы вернуть VeryNginx к настройкам по умолчанию.###Обновление VeryNginx / OpenResty
Со временем VeryNginx будет развиваться и может также поддерживать более новые версии OpenResty. Новая версия VeryNginx может поддерживать некоторые новые функции или исправлять старые ошибки. Если вы хотите обновить локально установленный VeryNginx, вам просто нужно извлечь последний код из github на локальный компьютер и запустить следующие команды:
#Обновить VeryNginx
python install.py update verynginx
#Обновить OpenResty
python install.py update openresty
install.py сохранит старый config.json и nginx.conf во время обновления. Так что вы не потеряете конфигурацию после обновления.
После клонирования кода в вашу локальную файловую систему вы можете запустить следующие команды:
cd Docker
docker build -t verynginx .
docker run verynginx
Затем вы можете перейти в свой браузер http://{{your_docker_machine_адрес}}/verynginx/index.html
При желании вы можете запустить docker run -p xxxx:80 verynginx
, чтобы сопоставить порт вашего контейнера 80 с портом вашего хоста xxxx.
Если вам нравится VeryNginx, вы можете пожертвовать средства на поддержку моего развития VeryNginx. С вашей поддержкой я смогу сделать VeryNginx лучше 😎.
Поддержка VeryNginx через PayPal
Сканируйте QR-код, чтобы поддержать VeryNginx.
VeryNginx благодарит за помощь
###Наслаждайтесь~
[^openresty]: OpenResty Openresty — это расширенный nginx, объединяющий стандартный nginx core и множество сторонних модулей nginx.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )