###### tags: `Reverse-Proxy` `WAF` https://hackmd.io/@sadykovildar/r13ib1pjw # Reverse-proxy ![](https://i.imgur.com/5XTCbpe.png) ![](https://i.imgur.com/ou1sQls.png) Освобождаем под nginx 443/80, прописывая 5443 вместо 443 под pfsense ![](https://i.imgur.com/DuJ4tIk.png) Прокидываем порты снаружи на реверс прокси: ![](https://i.imgur.com/ARM70bc.png) Web15,16: `apt install nginx -y` Web15: ![](https://i.imgur.com/eSyqPwv.png) Web16: ![](https://i.imgur.com/WhBLH9K.png) Reverse-proxy: `cd /etc/nginx/` Символическая ссылка (ссылается на другой конфиг) ![](https://i.imgur.com/0pC899V.png) X-Forwarded-For - перенаправление Reverse-proxy: `nano /etc/nginx/sites-available/web15` ![](https://i.imgur.com/TeWjjIP.png) Аналогично web16 Делаем символическую ссылку в текущую директорию: > root@Reverse-proxy:/etc/nginx/sites-enabled# ln -s /etc/nginx/sites-available/web15 ./ Аналогично ссылку на 16 делаем. Расскоментим server_names_hash_bucket_size: ![](https://i.imgur.com/FFUi5hA.png) Тестим конфигурацию: nginx -t В случае обращение ни к web 15,16 делаем ссылку чтобы перенаправлялось на дефолтную страницу: > root@Reverse-proxy:/etc/nginx/sites-enabled# ln -s /etc/nginx/sites-available/default ./ `service nginx restart` ![](https://i.imgur.com/ALPR1mt.png) ![](https://i.imgur.com/vMLZSP9.png) Реверс прокси работает. **WAF ModSecurity** ``` sudo apt install libmodsecurity3 git clone --depth 1 -b v3/master --single-branch https://github.com/SpiderLabs/ModSecurity /usr/local/src/ModSecurity/ cd /usr/local/src/ModSecurity/ sudo git submodule init sudo git submodule update sudo ./build.sh sudo ./configure sudo make -j4 sudo make install git clone --depth 1 https://github.com/SpiderLabs/ModSecurity-nginx.git /usr/local/src/ModSecurity-nginx/ cd /usr/local/src/nginx/nginx-xxxx/ sudo apt build-dep nginx sudo apt install uuid-dev sudo ./configure --with-compat --add-dynamic-module=/usr/local/src/ModSecurity-nginx sudo make modules sudo cp objs/ngx_http_modsecurity_module.so /usr/share/nginx/modules/ sudo nano /etc/nginx/nginx.conf Там внутри: load_module modules/ngx_http_modsecurity_module.so; modsecurity on; modsecurity_rules_file /etc/nginx/modsec/main.conf; sudo mkdir /etc/nginx/modsec/ sudo cp /usr/local/src/ModSecurity/modsecurity.conf-recommended /etc/nginx/modsec/modsecurity.conf sudo nano /etc/nginx/modsec/modsecurity.conf SecRuleEngine DetectionOnly SecRuleEngine On sudo vim /etc/nginx/modsec/main.conf Include /etc/nginx/modsec/modsecurity.conf sudo cp /usr/local/src/ModSecurity/unicode.mapping /etc/nginx/modsec/ ``` https://www.tecmint.com/install-modsecurity-nginx-debian-ubuntu/