Пакетот се инсталираше чисто, правилата беа тестирани, а по следното рестартирање портата беше целосно отворена. Ништо во трансакцијата не пропадна; грешката беше во претпоставката што ќе остане. Инсталирањето алатки за огнено ѕиде, одлуката кои правила треба да преживеат и нивното враќање во вистинскиот момент се три одделни работи.

Што всушност ви кажува симптомот

Сетот правила што исчезнува при рестартирање има еден од три сопственици: ништо не го зачува, нешто друго го замени или беше вратен пред да постои она од што зависи. Првите два се видливи во конфигурацијата; третиот се појавува само во редоследот. Затоа рестартирањето може да изгледа како губење на податоци, а всушност е проблем со редоследот.

Започнете со запишување што било точно пред рестартирањето: која служба ги држеше правилата, која датотека или база ја читаше при стартување и дали во тој извор некогаш било запишано. Активниот сет правила што никој не го зачувал е валидно објаснување и најчестото.

Не започнувајте со преинсталирање на пакетот.

Прочитајте ја алатката за постојаност пред да ја користите

Алатките на Дебиан ја третираат постојаноста како проблем со приклучоци: секој приклучок знае како да ги напише своите правила, а една обвивка ги повикува. Неговото дејство за зачувување складира сѐ што е вчитано во тој момент, а дејството за стартување го вчитува тој снимок назад. Ништо во двете дејства не проверува што складира.

Тоа е снимок, не преглед. Останато дозволување од сесија за отстранување грешки, недовршен експеримент или попустливо правило вметнато од друга алатка стануваат трајни покрај политиката што сакавте да ја задржите. Зачувувањето состојба и одобрувањето состојба се различни активности, а само едната бара проценка. Прво прочитајте го вчитаниот сет, потоа одлучете кои редови заслужуваат да преживеат.

Зачувајте свесно, откако ќе прочитате што е вчитано.

Одлучете што треба да преживее

Некои правила припаѓаат на животниот циклус на интерфејсот и треба да исчезнат со него. Другите мора да го надживеат тунелот, а најјасниот пример е ограничување што забранува сообраќајот на клиентите да се врати на физичкиот интерфејс кога тунелот паѓа. Тие две категории бараат различни тригери за враќање, а не еден заеднички снимок.

Запишете го предвидениот резултат за три моменти: подигање, активирање на VPN и губење на тунелот. Потоа проверете дали избраната алатка може да го изрази секој од нив. Пакетот за постојаност што вчитува статичен снимок го покрива првиот и можеби ниту еден од останатите, бидејќи снимокот нема поим кога се сменила состојбата на тунелот. Ако не може да ги изрази, празнината припаѓа на друга компонента.

Политиката, а не пакетот, ја одлучува одговорот.

Проверете го редоследот на враќање

Враќањето на датотеката не е исто како поседување на резултатот. Друг менаџер може да ги замени правилата, поранешно дозволување може да ги засени или клиентите може да почнат да праќаат пред ограничувањето да стапи на сила. Прегледајте го однесувањето при подигање и повторно поврзување, не само постоењето на зачувана датотека.

systemctl status netfilter-persistent
iptables -S

Не претпоставувајте дека запирањето на службата за постојаност е безопасно, бидејќи пакетот документира условно чистење кога ќе запре. Утврдете ја вистинската конфигурација на службата пред да користите запирање или рестартирање како експеримент на порта што ја администрирате оддалечено. Конзолна сесија и документирано враќање назад се минимумот пред тој тест.

Редоследот е својство на системот што работи, а не на датотеката на дискот.

Прифатете три одделни резултати

Запишете ја инсталацијата на пакетот, вчитаниот сет правила и спроведената политика како одделни факти. Името на пакетот во нишка за поддршка одговара само на првото, а тоа е она што ретко е важно.

nft list ruleset

Потоа тестирајте дозволена операција и барано одбивање.

Ако одбивањето се задржи по рестартирање и по паѓање на тунелот, политиката преживува. Ако се задржи само во една од тие состојби, сте го нашле проблемот со редоследот наместо да го поправите.

Поврзани статии