nginx auth_request (3/3): Web-Application firewall, WAF
Сразу оговорюсь - я знаю про существование nginx naxsi
и mod_security
, речь про то, как вообще такое делается.
Под WAF я понимаю некое дополнение к веб-серверу, выполняющее одну или несколько следющих задач:
- блокировка вредоносных запросов
- подтверждение юзером "сомнительных" запросов
- ограничение частоты запросов по сложным критериям
Дополнительно можно собирать статистику.
nginx auth_request (2/3): Многофакторная авторизация, NFA
В этой статье рассмотрим, как в принципе делается кастомный портал с авторизацией на базе nginx_authreq
.
Вся авторизация держится на предположении, что юзеру известен некий секрет, недоступный другим. Правда если его украсть или скопировать - система не может распознать обмана.
nginx auth_request (1/3): Вводная
У меня тут накопилось немного опыта работы с этим модулем, решил поделиться.
Прежде всего - что это? Это модуль, который разрешает или запрещает прохождение запроса в nginx на основе подзапроса. Две основных схемы применения:
- с его помощью можно соорудить WAF (web-application firewall)
- ...и кастомный портал предварительной авторизации
...всё перечисленное - без модификации исходного сайта.
Сравнение производительности Sheepdog/Ceph
Выкладываю данные по тестированию производительности ceph и sheepdog.
Тестовый стенд: 3 почти одинаковых сервера с двумя дисками по 500Гб. С каждого диска в конце откушено по 450Гб под данные и отдано под разные системы. В качестве хранилища чанков используется ext4 (sheepdog) и xfs (ceph). Тип объекта - реплиируемый, количество копий и там и там выставлено в 2. chunk size везде равен 4мб.
Распределённые блочные хранилища (ликбез)
В ходе возни с кластером на работе, решил посмотреть существующие распределённые блочные хранилища. Что вообще за хрень такая, в каком оно состоянии и возможные подводные камни.