Назад | Перейти на главную страницу

Изменение iptables без перезагрузки

Я настроил туннель между моей сетью и удаленной сетью с OpenSwan. В моей конечной точке туннеля, работающей в Ubuntu, я добавил правила iptables, чтобы отключить исходный NAT (SNAT), когда местом назначения была удаленная сеть. Пакеты, отправленные из моей сети в удаленную, будут отправлены с частным IP-адресом в качестве источника.

Вот как выглядит моя таблица NAT

Chain POSTROUTING (policy ACCEPT)
target      prot opt source           destination
MASQUERADE  all  --  anywhere         ! <remote_network>

Какое-то время все это работало нормально, но в какой-то момент туннель был закрыт. Оказалось, что мое более строгое правило было заменено общим правилом, которое выполняет SNAT для всех пакетов. Другие правила в таблице FORWARD также были удалены. Сервер не перезагружался более 300 дней!

Chain POSTROUTING (policy ACCEPT)
target      prot opt source           destination
MASQUERADE  all  --  anywhere         anywhere

Я попытался добавить сценарий в /etc/network/if-up.d для восстановления моей конфигурации каждый раз при перезапуске сетевой службы, но это не помогло. Я также установил пакет iptables-persistent, но это тоже не помогло.

Моя конечная точка туннеля также использует OpenVpn для других целей.

Какой процесс может так изменить мои iptables? Как я могу убедиться, что он больше не будет изменен?