Linux jako server/IPfilter: Porovnání verzí

Smazaný obsah Přidaný obsah
Grumpa (diskuse | příspěvky)
sejv
 
Grumpa (diskuse | příspěvky)
sejv
Řádek 7:
do adresáře <code>/usr/local/sbin/</code>. Budou se nám dobře spouštět a nebudou
se dobře spouštět nikomu jinému.
 
Nespěchejte při ladění filtru s nastavováním restriktivních pravidel. Politika DROP
je dobrá u produkčního filtru, ale při ladění vám nadělá zbytečně moc práce.
Nechte politiku ACCEPT a sledujte pomocí pravidla LOG, co vám sítem pravidel
protéká.
 
== Sledování IP filtru ==
Řádek 13 ⟶ 18:
Přidáním volby -v dosáhneme zobrazení i množství paketů/dat prošlých každým pravidlem.
# iptables -L -v
Volba -n řekne, aby se vypisovalyvypisovala čísla místo nazvů. Týká se to DNS jmen a jmen
služeb, místo kterých se budou vypisovat IP adresy a čísla portů.
# iptables -L -v -n
Řádek 24 ⟶ 29:
To nám zajistí, že se výpis bude po dvou vteřinách obnovovat a my můžeme plynule
sledovat, jak se naše řádění s přidáváním/odebíráním pravidel projevuje. Samozřejmě
nám to "sežere" jednu konzoli, ale to nám vadit nemusí. Máme jich dost. Činnost
sledovače ''watch'' ukončujeme klasickým CTRL+C.
 
Takže si uděláme skriptík s názvem kupř. ''muj-ipf-watch'':
<pre>
#!/bin/sh
# skript pro sledovani ip filtru
 
watch "iptables -L -v -n --line-numbers"
</pre>
Nastavte práva 750, ať máte sichr, že se k tomu dostane jen root.
 
== Automatické shození filtru při ladění po síti ==
Je děsná sranda, když ladíte filtr po síti (přes ssh) a nějakou blbostí si zablokujete
Často se nevyhneme situaci, kdy potřebujeme poladit filtr vzdáleně přes síť, ať už
přístup. Musíte-li se šťourat ve filtru přes síť, doporučuji mít připravený
lokální, nebo Internet. To je činnost dost riziková, protože, když se to nezdaří
skript, který vám filtr shodí, nebo uvede do předchozího stavu.
hodně, taky se můžeme dočkat toho, že s námi vzdálený stroj přestane mluvit.
 
Nicméně začátek, předpokládám, nebudete testovat jinde, než na svém počítači
Je proto dobré nastavit vzdálený počítač tak, aby si uměl nastavit výchozí
u kterého sedíte.
(dosud fungující) filtr sám. Především si musíme vyjasnit, co je pro nás
tím výchozím stavem. Jsme-li na začátku, pak budeme za výchozí stav považovat
stav bez filtru. Máme-li již funkční filtr, pak bude výchozím ten.
 
=== NulováSkript variantana shození filtru ===
Následující skriptík zajistí, že IP filtr bude vyčištěn:
<pre>
Řádek 56 ⟶ 68:
exit 0
</pre>
Samozřejmě si přidáme / ubereme co (ne)potřebujeme. Hlavně nezapomenout nastavit
politiku na ACCEPT, protože pokud ji náš filtr bude nastavovat na DROP, bude
náš filtr "shozený" filtrjen pomocí -F zahazovat úplně všechno! O DROP jsme si ale
něco řekli hned v úvodu.
 
Bez otestování jsme kaskadéři. V každém textu je aspoň jeden překlep. Takže si
Řádek 78 ⟶ 91:
</pre>
 
Tento skript spustíme a podíváme se do vedlejší konzole, kde nám běží náš ''muj-ipf-watch'',
co náš filtr dělá. Můžeme si třeba spustit internetový prohlížeč a načíst nějakou stránku.
Všechno by mělo projít pravidlem a politika by se neměla uplatnit.
 
Teď zkusíme spustit skritp ''muj-ipf-down'' a koukneme opět do vedlejší konzole.
Politiky by měly být všechny "ACCEPT" a pravidla žádná.
 
=== Shození filtru při ladění "na dálku" ===
Zmrskáme-li něco ve filtru na počítači u kterého sedíme, celkem nic se neděje.
Ale ladíme-li filtr na stroji, který je po síti daleko, je opatrnost nutná.
 
=== Spuštění skriptu pro nulovou variantu ===
Než se v našem filtru začneme hrabat, zajistíme si nastavení výchozího stavu
pro případ, že by server s námi přestal komunikovat. Použijeme nějaký program
pro odložené spuštění příkazu. Tedy buď ''cron'', nebo ''at''.
 
Příkaz ''at'' mi přijde pružnější, alejenže taky se mi už stalo, že jsem na něj
v zápalu boje zapomněl. Můžemea klidněspustil obanovou příkazyverzi zkombinovat.filtru ''cron''bez sichr spuštění shazovače
filtru. Můžeme klidně oba příkazy zkombinovat. ''cron''
bude shazovat filtr jednou za hodinu (kdybychom zapomněli na ''at'')
a ''at''em si budeme nechávat filtr shazovat pružně dle potřeby.
Řádek 93 ⟶ 115:
at>muj-ipf-down
 
Nyní můžeme začít řádit. Víme, že ''at'' nám za pět minut filtr shodí. Ale pozor,
 
co když jsme udělali někde n
S ''cron''em to uděláme takto:
# crontab -e
A přidáme řádek:
30 * * * * /usr/local/sbin/muj-ipf-down
který nám vždycky v půl shodí firewall.