Fórum Root.cz

Hlavní témata => Sítě => Téma založeno: xmms 11. 01. 2011, 14:41:04

Název: Jak správně uložit pravidla iptables
Přispěvatel: xmms 11. 01. 2011, 14:41:04
Mám suse, kde se hodně věcí šteluje přes yast a nastavení iptables dělám normálně ručně v konzoli. Jaký je ten správný systémový způsob uložení pravidel, aby se to načítalo po dalším restartu?

mám tam (mimo jiné) třeba tohle pravidlo vytvořené automaticky
Kód: [Vybrat]
-A input_ext -p icmp -m icmp --icmp-type 4 -j ACCEPT
-A input_ext -p icmp -m icmp --icmp-type 8 -j ACCEPT

já chci vymazat icmp 8 a uložit. Napadá mě použít iptables-save a iptables-restore a hodit to do nějakého skriptu, ale to asi není nejvhodnější. Je na to nějaký vhodný postup?
Yast mi neumožňuje editovat tyhle konkrétní pravidla, ale jen si přidat nějaké svoje vlastní a je to dost omezené.
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: j. 11. 01. 2011, 15:15:11
<off-topic> Ruce bych lamal za zakazovani pingu...
RFC 1122:
            Every host MUST implement an ICMP Echo server function that
            receives Echo Requests and sends corresponding Echo Replies.
            A host SHOULD also implement an application-layer interface
            for sending an Echo Request and receiving an Echo Reply, for
            diagnostic purposes.
</off-topic>
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: asdfasdf 11. 01. 2011, 15:28:35
Ruce bych lamal za zakazovani pingu...

+1

# grep -r iptables-restore /etc
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: oliverg 11. 01. 2011, 15:40:05
preco ste proti zakazaniu pingu?
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: Petr Krčmář 11. 01. 2011, 16:16:31
Protože na něj spoléhá řada aplikací. ICMP není určen jen pro klasické pingání po síti, ale posílají se po něm i další stavové informace. S blokací pak přestanou některé věci fungovat, protože si klienti třeba předem zjišťují dostupnost cílového stroje a ten se jim bude jevit nefunkční a spojení se vůbec neuskuteční.

Navíc blokace ICMP nemá naprosto žádný smysl ani z technického ani z bezpečnostního hlediska.
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: oliverg 11. 01. 2011, 16:19:47
ddos?
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: Petr Krčmář 11. 01. 2011, 16:41:27
Proti DDoS útokům skrze ICMP se brání jinak, rozhodně ne kompletní blokací ICMP. Mnohem rozumnější je nastavit na firewallu pravidla, která omezí běžné ICMP útoky - například tím, že budete kontrolovat, jestli mají přicházející pakety správnou vnější adresu a nesnaží se tvářit jako pakety zevnitř sítě a podobně. Je také možné omezit šířku pásma využitelnou pro ICMP na nějakou rozumnou úroveň.
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: xmms 11. 01. 2011, 16:52:07
Ach jo, to je zase diskuze. Předně upozorňuju, že nejsem žádný pan server, ale pouze jeden malý konzument na internetu. Přijímání nevyžádaných pingů proto není potřeba, žádnou veřejnou službu neprovozuju. Funkčnost ICMP mám samozřejmě zajištěnou pomocí INPUT RELATED a ESTABLISHED. Tedy takové icmp, které jsem si vyžádal. A nikdo nemá seriózní důvod mě pingovat a zkoumat můj stroj.

Pokud se pletu (což je u mě dost možné), uveďte prosím, jakým způsobem to může nabourávat funkčnost aplikací a co např. můžu takovým přístupem pokazit. Na veřejném serveru bych to samozřejmě povolil.

No a teď by mě zajímalo, jak to uložím. Tedy zpět k původnímu dotazu.

PS: tušil jsem, že to s tím pingem jsem si měl nechat pro sebe. Ale už je to venku.
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: Petr Krčmář 11. 01. 2011, 17:02:02
S tou diskusí bych si nedělal hlavu. Prostě debatujeme, neber si to osobně. A teď k tomu dotazu konečně :).

# iptables-save > /root/firewall.pravidla
# iptables-restore < /root/firewall.pravidla


Můžeš si to připsat třeba do /etc/rc.local. Některé distribuce na to mají už přímo udělané init skripty.
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: j. 11. 01. 2011, 17:25:45
Citace
Přijímání nevyžádaných pingů proto není potřeba

Vyzaduje to standard? Vyzaduje. Navic k zakazovani echo requestu opravdu neni zadny rozumny duvod.

Z pohledu jednoho uzivatele kaslat na standardy az tak neboli, ale z pohledu architekta ruznych sitovych aplikaci fakt premyslim, jak by byl svet krasny, kdyby se vsechnu hosty chovali konzistentne spravne.

Proto spravna otazka nezni "jak moc mne osobne bude bolet ignorace standardu", ale "jake skvele, easy to use aplikace, by mohli existovat, kdyby se standardy dodrzovali, pripadne o kolik by byli aplikace jednodussi a privetivejsi".
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: xmms 11. 01. 2011, 17:48:36
Můžeš si to připsat třeba do /etc/rc.local. Některé distribuce na to mají už přímo udělané init skripty.

Takový soubor tam nemám. Místo toho tam jsou dva:
/etc/rc.d/SuSEfirewall2_init
/etc/rc.d/SuSEfirewall2_setup

V těhle se to startuje. Skriptovat moc neumím a tak jsem z toho nedokázal vyčíst, kde se ta pravidla nacházejí. Chtěl bych pozměnit ty existující. Prohledal jsem všechny soubory na disku pro výskyt některých řetězců z mých pravidel, ale nikde je to nenašlo.

Pak jsou nějaké skripty v /etc/sysconfig/scripts
to je vhodné místo pro uložení vlastních pravidel?

j.:
Potřebuje někdo pingovat můj počítač? PROČ?
Já nejsem architekt síťových aplikací. A mám k tomu rozumný důvod - a sice nemám rád nevyžádané pakety už z principu. Jsem toho názoru, že pokud někdo potřebuje pingovat můj počítač v internetu, může osobně dojít za mnou a domluvit se. Vysvětlí mi k tomu opravdový pádný důvod a já mu možná udělím výjimku v iptables :)

Jinak co je komu do mého ECHO? No ne?
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: xmms 11. 01. 2011, 18:18:02
Jen mě tak napadlo, že by se to tam dalo dát takhle
iptables -I INPUT -p icmp --icmp-type echo-request -m random --average 33 -j REJECT --reject-with icmp-net-prohibited
iptables -I INPUT -p icmp --icmp-type echo-request -m random --average 33 -j REJECT --reject-with icmp-port-unreachable
iptables -I INPUT -p icmp --icmp-type echo-request -m random --average 33 -j REJECT --reject-with icmp-proto-unreachable


aby byla aspoň sranda. Já mám tyhle vychytávky moc rád.
Ale nejde to:
iptables v1.4.8: Couldn't load match `random':/usr/lib/xtables/libipt_random.so: cannot open shared object file: No such file or directory

Dá se nějak dokompilovat tenhle konkrétní modul, abych nemusel celé jádro?
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: David 11. 01. 2011, 20:03:37
vsechnu hosty chovali konzistentne spravne. ... by mohli existovat, kdyby se standardy dodrzovali, pripadne o kolik by byli aplikace jednodussi a privetivejsi".
Hm, je to off-topic, ale neda mi to. Nic proti, ale k tem standardum patri i cestina a jeji pravidla o psani mekkeho a tvrdeho i / y (tusim se tomu rika shoda podmetu s prisudkem) :-P
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: Adam 11. 01. 2011, 20:46:07
vsechnu hosty chovali konzistentne spravne. ... by mohli existovat, kdyby se standardy dodrzovali, pripadne o kolik by byli aplikace jednodussi a privetivejsi".
Hm, je to off-topic, ale neda mi to. Nic proti, ale k tem standardum patri i cestina a jeji pravidla o psani mekkeho a tvrdeho i / y (tusim se tomu rika shoda podmetu s prisudkem) :-P

Spatne a zbytecne standarty je potreba porusovat! :)
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: j. 11. 01. 2011, 21:14:29
vsechnu hosty chovali konzistentne spravne. ... by mohli existovat, kdyby se standardy dodrzovali, pripadne o kolik by byli aplikace jednodussi a privetivejsi".
Hm, je to off-topic, ale neda mi to. Nic proti, ale k tem standardum patri i cestina a jeji pravidla o psani mekkeho a tvrdeho i / y (tusim se tomu rika shoda podmetu s prisudkem) :-P

Omluvi me, pokud jsem si nedelal skolu v Cechach a cestinu jsem na skole nikdy nemel?
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: David 11. 01. 2011, 21:18:45
Spatne a zbytecne standarty je potreba porusovat! :)
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: David 11. 01. 2011, 21:21:21
vsechnu hosty chovali konzistentne spravne. ... by mohli existovat, kdyby se standardy dodrzovali, pripadne o kolik by byli aplikace jednodussi a privetivejsi".
Hm, je to off-topic, ale neda mi to. Nic proti, ale k tem standardum patri i cestina a jeji pravidla o psani mekkeho a tvrdeho i / y (tusim se tomu rika shoda podmetu s prisudkem) :-P
Omluvi me, pokud jsem si nedelal skolu v Cechach a cestinu jsem na skole nikdy nemel?
Jisteze omluvi :-)
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: xmms 11. 01. 2011, 22:14:28
Davide, víš jak je těžké pro cizince studovat češtinu? To není lehký jazyk :)

A byla by nějaké konkrétní odpověď na otázku? Výběr vhodného skriptu pro načítání iptables se dost liší mezi distribucemi.
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: Adam 11. 01. 2011, 23:06:09
Spatne a zbytecne standarty je potreba porusovat! :)
  • Ja mluvil o standardech, nikoli o vlajkach (neboli standartach)
  • Spatne a zbytecne standardy mozna je prospesne porusovat, ovsem ja mluvil o pravidlech ceskeho jazyka, coz za spatne a zbytecne standardy rozhodne povazovat nemohu. A jestli mi nekdo namitne, ze taky nepisu spravne, protoze nepouzivam diakritiku, tak mu odpovim, ze momentalne ji nemam k dispozici. To mi ale nebrani v psani spravneho "i" nebo "y".

Prominte, ja jenom zacinam byt alergicky na podobne posty opravujici i, mam tak trochu problem pochopit proc je dulezite umet pravidlo "shoda prisudku s podmetem", jedine co se dozvim bude jake mam na konci sloves psat i, ale k cemu mi to bude? Vzdyt jazyk je tu od toho aby jsme se pomoci neho mohli domluvit z ostanimi. Nekteri lide na jazyk nemaji talent, jini zase cas ktery by mu museli venovat aby ho umeli treba tak jako vy venovali radeji necemu jinemu a diky tomu umi neco jineho... Nikdo nemuze umet vsechno a kazdy neni novinar/jazykovedec atp. aby musel znat vsechna pravidla ceskeho pravopisu.

Stejne tak me vadi lide kteri neustale kritizuji nekoho za to ze nepise s diakritikou, oni proste nemuzou pochopit ze nekdo muze byt nekde v cizine, ze to obcas prece jenom zpusobuje problemy, ze cloveku ktery uz se bez diakritiky naucil psat by dalo docela hodne prace se to preucit, atd. A jeste k tomu kdyz se jim to nelibi, tak misto toho aby trosku potocili s tim koleckem co maji na mysi a textu bez diakritiky si dal nevsimali, zacnou psat dlouhy prispevek o tom jak spatne je citelny text bez diakritiky a najdou se i taci, kteri jenom na zaklade jednoho textu bez diakritiky jsou schopni urcit vysku iq prispevatele.

Jenom bych chtel rict: "Hlavne ze si rozumime"

A omlouvam se za ten off topic. :)
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: Franta 12. 01. 2011, 08:42:31
Zakazovat ping je obecně špatné, souhlas.

Ale: osobně mi doma pořád nějaké počítače běží, takže je mi to celkem jedno, ale co když má někdo jeden počítač. Co když nechce, aby ostatní na základě pingu mohli poznat, zda jeho desktop běží nebo ne? Na základě čehož s velkou pravděpodobností poznají, jestli ten člověk je doma nebo venku. Co když někdo nechce být takto „sledován“? Je i v takovém případě špatné neodpovídat na ping?
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: Franta 12. 01. 2011, 08:47:17
Takový soubor tam nemám. Místo toho tam jsou dva:
/etc/rc.d/SuSEfirewall2_init
/etc/rc.d/SuSEfirewall2_setup

V SUSE můžeš použít Yast, jak v GUI, tak v konsoli – a v něm si naklikáš, které služby mají být povolené.
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: David 12. 01. 2011, 13:40:29
Spatne a zbytecne standarty je potreba porusovat! :)

Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: David 12. 01. 2011, 13:42:12
Omluvi me, pokud jsem si nedelal skolu v Cechach a cestinu jsem na skole nikdy nemel?
Samozrejme omluvi. Stejne jako ja se omlouvam za chybejici diakritiku, protoze ji momentalne nemam k dispozici.
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: asdfasdf 12. 01. 2011, 13:56:54
A byla by nějaké konkrétní odpověď na otázku? Výběr vhodného skriptu pro načítání iptables se dost liší mezi distribucemi.

Odpoveď na to ako zistíš, kde to je v tvojej distribúcii, som ti už napísal.
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: David 12. 01. 2011, 16:24:38
mam tak trochu problem pochopit proc je dulezite umet pravidlo "shoda prisudku s podmetem", jedine co se dozvim bude jake mam na konci sloves psat i, ale k cemu mi to bude?
Shoda podmetu s prisudkem je dobra k tomu, aby citatel poznal, kdo danou cinnost provadel (muzi nebo zeny). Souhlasim s tim, ze vetsinou lze z kontextu poznat, ktera varianta je spravne.
Existuje ale spousta dalsich pripadu, ve kterych se mnohdy chybuje a neni to ve shode prisudku. Treba takove vyset. Ano, opet spravny vyznam lze poznat. Ale co takove mit / myt. Co je spravne? Takze psani spravneho i / y nelze zatracovat.
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: xmms 12. 01. 2011, 23:27:45
No dobrá. Nakonec jsem si vybral skript /sbin/SuSEfirewall2 a do něj jsem na konec vložil
Kód: [Vybrat]
iptables-restore < /sbin/mojepravidla
Funguje to dobře, tak to tak nechám. Jinak to štelování těch konfiguračních souborů je docela komplikované. Já potřebuju jenom jednoduše načíst při startu mojepravidla pomocí iptables-restore.
Název: Re: Jak správně uložit pravidla iptables
Přispěvatel: Tomáš Crhonek 04. 07. 2014, 13:13:46
No dobrá. Nakonec jsem si vybral skript /sbin/SuSEfirewall2 a do něj jsem na konec vložil
Kód: [Vybrat]
iptables-restore < /sbin/mojepravidla
Funguje to dobře, tak to tak nechám. Jinak to štelování těch konfiguračních souborů je docela komplikované. Já potřebuju jenom jednoduše načíst při startu mojepravidla pomocí iptables-restore.

Ještě je dobré se zamyslel nad tím, co se stane, když nějaký update nahradí ten pozměněný soubor /sbin/SuSEfirewall2 za nový z updatovaného balíčku.