Здесь должна быть какая-то умная надпись :)

Свои правила IPTables для VestaCP

/ Просмотров: 3202

Предыстория:

Те кто пользуется VestaCP некоторое время наверняка задавались вопросом как добавить свои правила IPTables в эту панель. Суть проблемы в том что в самой панели нет возможности добавить кастомизированные правила, мы можем добавлять лишь простые ACCEPT/DROP правила, которые каждый раз при сохранении настроек файрвола, автоматически перезаписывается, генерируется новый файл с правилами iptables. То есть все добавленные нами вручную правила будут действовать до перезапуска сервера, либо до обновления файрвола. Наша задача внедрить свои правила.

Ближе к делу:

Все созданные через панель правила записываются в файл rules.conf который располагается по адресу:

/usr/local/vesta/data/firewall

За обновление данных файрвола отвечает скрипт: v-update-firewall который располагается по адресу:

/usr/local/vesta/bin

Если его открыть и посмотреть, то можно найти следующие строки (122-125):

# Checking custom trigger
if [ -x "$VESTA/data/firewall/custom.sh" ]; then
    bash $VESTA/data/firewall/custom.sh
fi

То есть скрипт проверяет наличие файла custom.sh в директории файрвола и если он там присутствует то выполняет его. Все добавленные в него правила автоматически сохраняются вместе с правилами добавленными через панель в iptables который располагается по адресу:

/etc/sysconfig

Решение проблемы:

1. Заходим в директорию файрвола: /usr/local/vesta/data/firewall

2. Создаем скрипт custom.sh.

3. Добавляем все необходимые нам правила и сохраняем.

4. Даем скрипту права на выполнение.

5. Выполняем от root команду: v-update-firewall

Как говорится все гениальное просто.

Комментарии