Изисква ли се флъш за iptables преди добавяне на нови правила?

Аз съм доста нов в работата в мрежа и се опитвам да направя някаква проста конфигурация за сървър за LAN достъп (SSH & HTTP), използвайки iptables. Използвам CentOS7, ако това има значение. Работих с уроци по формуляри и те изглежда предлагат като първа стъпка да се изчистят всички съществуващи правила. Работя върху нова инсталация на CentOS и имам няколко терминални прозореца с правила и определено не знам достатъчно, за да опитам да ги възстановя, ако ги убия и определено не знам какво правят, така че се страхувам ако ги убия, ще започнат да се случват мрежови проблеми, които не разбирам, или ще отворя сървъра си за рискове за сигурността. В тези уроци те не си правят труда да обяснят защо се прави изчистване на текущите правила. Добре ли съм без промиване, стига да няма друго правило, което противоречи на тези, които добавям в края? Ако направя флъш, всичко ще бъде ли възстановено при рестартиране, стига да не използвам запазването на iptable?


person WebSnake    schedule 17.01.2015    source източник
comment
Въпросите за конфигурацията на сървъра принадлежат към Сървърна грешка   -  person    schedule 17.01.2015


Отговори (1)


Изчистването на текущите правила не е задължително, но понякога е по-добре да започнете от чисто. Дори ако някой не иска да нарушава текущата конфигурация, може да се окаже по-полезно да я възстанови изцяло от нулата. Тоест, не само по отношение на простотата и ефективността на получената конфигурация, но и психически, докато се опитвате да измислите правилните правила.

Ако някой реши да запази текущата конфигурация и да надгражда върху нея, той трябва да има предвид, че редът на правилата има значение. Аргументът -I може да се използва за вмъкване на нови правила в конкретна позиция в определена верига, както е написано в страницата на iptables man:

-I, --insert верига [rulenum] спецификация на правило

Вмъкнете едно или повече правила в избраната верига като даден номер на правило. Така че, ако номерът на правилото е 1, правилото или правилата се вмъкват в началото на веригата. Това също е по подразбиране, ако не е зададен номер на правило.


Преди да модифицирате нещо, препоръчително е да запишете текущата конфигурация във файл:

iptables-save > <filename>

Този файл може да се използва по-късно за възстановяване на оригиналната конфигурация:

iptables-resotre < <filename>

Правилата, създадени с командата iptables, се съхраняват в паметта. Ако системата се рестартира, преди изрично да се посочи друго, текущият набор от правила се губи. На CentOS7 това се прави от:

service iptables save

Подробностите за този команден ред могат да бъдат намерени тук:

Това изпълнява скрипта за стартиране iptables, който изпълнява програмата /sbin/iptables-save и записва текущата iptables конфигурация в /etc/sysconfig/iptables. Съществуващият /etc/sysconfig/iptables файл се записва като /etc/sysconfig/iptables.save.

Следващият път, когато системата се стартира, скриптът за стартиране iptables прилага отново правилата, записани в /etc/sysconfig/iptables, като използва командата /sbin/iptables-restore.


Обърнете внимание, че на CentOS7 беше въведено firewalld за управление на iptables. Този отговор обяснява как може да се възстанови класическата настройка iptables.

person Yoel    schedule 18.01.2015