Описание хуков
Многие скрипты Carbon Reductor поддерживают использование пользовательских хуков.
Хуки позволяют дополнить действия выполняемые скриптами Carbon Reductor или переопределять их.
Расположение хуков
Хуки располагаются в директории /app/reductor/cfg/userinfo/hooks/, должны быть исполняемыми (chmod +x путь_до_хука) и именоваться одинаково со скриптом, который они модифицируют.
Как, когда и зачем писать хуки
В хуке вы можете описать функцию, имеющуюся в одноимённом скрипте. Все они написаны на bash, так что реализовать их не должно быть проблемой.
Самое главное - проверяйте, что с использованием вашего хука всё работает как надо.
Писать их надо в случае. если необходимо модифицировать один из стандартных скриптов Carbon Reductor на постоянной основе.
Все функции, кроме client_post_hook и client_pre_hook могут исчезнуть в одной из будущих версий.
Мы стараемся сообщать о глобальных изменениях в кодовой базе за неделю до выпуска новой версии в официальном твиттер-аккаунте проекта, так что при использовании важных хуков рекомендуется следить за ним, а также время от времени самостоятельно проверять их работоспособность.
Примеры хуков вы можете просмотреть во вложенных страницах.
Скрипты, часто подвергаемые хукам
- rkn_download.sh - выгрузка списков ркн
- start.sh - стартовый скрипт, можно добавить дополнительные действия при старте
- stop.sh - здесь можно подчистить за добавленным в start.sh действиями
- rkn_info.sh - информация о выгруженном списке РКН
- show_stat.sh - информация о системе
- prepare_lists.sh - обработка списков
- firewall.sh - построение файрвола при старте (не забудьте подчищать правила и уничтожать ipset, если используете собственные).