Внимание: Использовать заглушку на собственном сервере рекомендуется только при очень маленькой нагрузке и хороших сетевых картах: load average < 0.05 и %si на каждое ядро около 0.5%.
Лучше вынести это на отдельный сервер и настроить по статье: https://github.com/carbonsoft/reductor_blockpages
Включите опцию
menu > настройка алгоритма фильтрации > заглушка на этом сервере
и укажите URL страницы редиректа, по которому она доступна.
URL дефолтной страницы:
http://ip_редуктора_доступный_для_абонентов/block.html
Не забудьте перезапустить редуктор
service reductor restart
При настроенном DNS-spoofing:
IP адрес в URL заглушки должен совпадать с IP адресом для DNS-ответов.
Необходимо перенести веб-интерфейс на IP и порт, отличающиеся от заглушки, иначе заглушка будет недоступна:
menu -> управление сервером -> IP адрес для веб-интерфейса menu -> управление сервером -> Порт для веб-интерфейса
Для работы заглушки для https ресурсов нужно сгенерировать сертификат:
mkdir -p /etc/nginx/ssl chmod 700 /etc/nginx/ssl echo "Common name лучше установить в виде IP адреса машины:" ip -4 a openssl req -new -x509 -days 9999 -nodes -newkey rsa:2048 -out /etc/nginx/ssl/cert.pem -keyout /etc/nginx/ssl/cert.key
Не забудьте перезапустить редуктор
service reductor restart
Внимание:
В целях безопасности рекомендуется для IP адреса заглушки стоит запретить доступ по SSH в хуке.
Кастомизация заглушки
Не стоит тратить время на то, чтобы правильно настроить дополнительный виртуалхост на редукторе. Есть много нюансов, необходимых для его корректной работы. Оставьте это дело опции "заглушка на этом сервере".
Поскольку при обновлении веб-интерфейса всё затрётся, модификации стоит закидывать в /usr/local/Reductor/userinfo/hooks/start.sh, добавив туда строчки в духе:
#!/bin/bash
client_post_start_hook() {
cp $HOOKDIR/block.html $HOOKDIR/style.css /opt/reductor_web/app/static/blocked/
}
и положив block.html и style.css в папку /usr/local/Reductor/userinfo/hooks/
Подробнее про хуки: Использование хуков