Käesolev juhend üritab selgitada, kuidas kasutada iptablesi linuxis hõlpsasti arusaadavas keeles.
Sisu[peida]
|
Ülevaade
Iptables on reeglipõhine tulemüür, mis töötleb iga reeglit, kuni leiab selle, mis sobib.
Todo: siia saate näiteks
Kasutamine
Iptablesi utiliit on eelinstallitud teie linuxi levitamiseks, kuid see ei toimi reeglitega. Siit leiad utiliidi enamikes levitaotlustes:
/sbin/iptables
Ühtse IP-aadressi blokeerimine
Saate IP-i blokeerida, kasutades -s parameetrit, asendades 10.10.10.10 aadressiga, mida proovite blokeerida. Selles näites peate märkima, et kasutasime -I parameetrit (või -sertifikaat töötab ka), sest me tahame veenduda, et see reegel kuvatakse kõigepealt enne lubade reeglite kuvamist.
/sbin/iptables -I INPUT -s 10.10.10.10 -j DROP
Kõigi liikluste lubamine IP-aadressilt
Võite vaheldumisi lubada kogu liikluse IP-aadressist, kasutades sama käsku nagu eespool, kuid asendades DROP ACCEPT-iga. Peate veenduma, et see reegel ilmub kõigepealt enne DROP-i reegleid.
/sbin/iptables -A INPUT -s 10.10.10.10 -j ACCEPT
Port-blokeerimine kõikidest aadressidest
Võite blokeerida porti, et see oleks võrgu kaudu ligipääsmatu, kasutades selleks -dport-lülitit ja blokeeriva teenuse porti. Selles näites blokeerime mysqli porti:
/sbin/iptables -A INPUT -p tcp --dport 3306 -j DROP
Ühtse pordi lubamine ühest IP-st
Saate lisada käsu -s koos käsuga -dport, et veelgi piirata reeglit kindlal pordil:
/sbin/iptables -A INPUT -p tcp -s 10.10.10.10 --dport 3306 -j ACCEPT
Praeguste reeglite vaatamine
Praeguseid reegleid saate vaadata, kasutades järgmist käsku:
/sbin/iptables -L
See peaks andma teile väljundi, mis on sarnane järgmisega:
Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT all -- 192.168.1.1/24 anywhere ACCEPT all -- 10.10.10.0/24 anywhere DROP tcp -- anywhere anywhere tcp dpt:ssh DROP tcp -- anywhere anywhere tcp dpt:mysql
Loomulikult on tegelik väljund mõnevõrra pikem.
Praegune reeglite puhastamine
Võite kustutada kõik praegused reeglid flush parameetri abil. See on väga kasulik, kui peate reegleid õigesti järjekorras panema või katsetama.
/sbin/iptables --flush
Jaotus-spetsiifiline
Kuigi enamus Linuxi distributsioonides on iptabli kuju, sisaldavad mõned neist ka pakendid, mis muudavad haldamise veidi lihtsamaks. Enamasti on need "lisad" init-skriptidena, mis hoolitsevad iptabeli initsialiseerimise eest käivitamisel, kuigi mõnes jaotuses on ka täispuhutud ümbrisrakendused, mis püüavad lihtsustada ühist juhtumit.
Gentoo
The iptables Gentoo init-skript on võimeline käsitlema paljusid tavalisi stsenaariume. Alustuseks võimaldab see seadistada iptablesi käivitamisel (tavaliselt seda, mida soovite):
rc-update add iptables default
Init-skripti kasutamine võimaldab tulemüüri laadida ja kustutada lihtsalt meeldejätmisega käsku:
/etc/init.d/iptables start /etc/init.d/iptables stop
Init-skript käitab käivitamisel / peatusel teie praeguse tulemüüri konfiguratsiooni säilimise üksikasju. Seega on teie tulemüür alati sellises olekus, nagu te jätsite. Kui peate uue reegli käsitsi salvestama, saab init-skript seda ka hakkama:
/etc/init.d/iptables save
Lisaks võite tulemüüri taastada eelmisele salvestatud olekule (juhul, kui proovite reegleid ja soovite nüüd eelmise töö konfiguratsiooni taastada):
/etc/init.d/iptables reload
Lõpuks võib init-skript panna iptables'i paanikaks, kus kõik sissetulevad ja väljaminevad liiklus on blokeeritud. Ma ei ole kindel, miks see režiim on kasulik, kuid kõik Linuxi tulemüürid tunduvad olevat selle olemasolul.
/etc/init.d/iptables panic
Hoiatus: Ärge käivitage paanikarežiimi, kui olete SSH-iga serveriga ühendatud; sinatahe tuleb lahti ühendada! Ainus kord, kui peaksite iptablesi paanikaarežiimi panema, on see, kui oledfüüsiliselt arvuti ees.