Korištenje Iptables na Linuxu
Ovaj vodič će pokušati objasniti kako koristiti iptables na linuxu u lako razumljivom jeziku.
Sadržaj[sakriti]
|
Pregled
Iptables je vatrozid temeljen na pravilima koji će obraditi svako pravilo sve dok ne pronađe onu koja odgovara.
Todo: ovdje uključite primjer
upotreba
Uslužni program iptables obično je predinstaliran na vašoj linux distribuciji, ali zapravo ne izvodi nikakva pravila. Uslužni program ćete pronaći ovdje na većini distribucija:
/ Sbin / iptables
Blokiranje jedne IP adrese
Možete blokirati IP pomoću parametra -s, zamjenjujući 10.10.10.10 adresom koju pokušavate blokirati. U ovom primjeru ćete primijetiti da smo koristili parametar -I (ili -insert works) umjesto append-a, jer želimo se uvjeriti da se ovo pravilo pojavljuje prvo, prije bilo kakvih pravila za dopuštanje.
/ sbin / iptables -I INPUT -s 10.10.10.10 -j DROP
Dopušta sav promet s IP adrese
Naizmjence možete dopustiti sav promet s IP adrese pomoću iste naredbe kao i gore, ali zamjenjujete DROP s ACCEPT. Morate se uvjeriti da se ovo pravilo pojavljuje prvo, prije bilo kakvih pravila DROP-a.
/ sbin / iptables -A INPUT -s 10.10.10.10 -j ACCEPT
Blokiranje porta sa svih adresa
Port možete u potpunosti blokirati tako da mu se pristupa preko mreže pomoću prekidača -dport i dodavanja porta usluge koju želite blokirati. U ovom primjeru blokirat ćemo mysql port:
/ sbin / iptables -A ULAZ -p tcp --dport 3306 -j DROP
Dopuštanje jednog porta s jednog IP-a
Možete dodati naredbu -s zajedno s naredbom -dport kako biste dodatno ograničili pravilo na određeni priključak:
/ sbin / iptables -A INPUT -p tcp -s 10.10.10.10 --dport 3306 -j ACCEPT
Pregled trenutnih pravila
Aktualna pravila možete pogledati pomoću sljedeće naredbe:
/ sbin / iptables -L
To bi vam trebalo dati izlaz sličan ovome:
Chain INPUT (policy ACCEPT) odredišna odredišna odredišna odrednica ACPECT all - 192.168.1.1/24 nigdje mySQL
Naravno, stvarni će izlaz biti malo duži.
Brisanje postojećih pravila
Možete izbrisati sva trenutna pravila pomoću parametra flush. Ovo je vrlo korisno ako trebate postaviti pravila u ispravnom redoslijedu ili kada testirate.
/ sbin / iptables - flush
Distribucija-Specific
Dok većina distribucija Linuxa uključuje oblik iptablesa, neke od njih uključuju i omotače koji olakšavaju upravljanje. Najčešće se ti "dodaci" pojavljuju u obliku inicijalnih skripti koje vode brigu o inicijalizaciji iptablesa pri pokretanju, iako neke distribucije uključuju i potpune aplikacije koje pokušavaju pojednostavniti uobičajeni slučaj..
Gentoo
iptables Init skripta na Gentoo-u može upravljati mnogim uobičajenim scenarijima. Za početak, omogućuje vam da konfigurirate iptables za učitavanje pri pokretanju (obično ono što želite):
rc-update dodaje iptables default
Pomoću init skripte moguće je učitati i izbrisati vatrozid pomoću naredbe koja se lako pamti:
/etc/init.d/iptables pokrenite /etc/init.d/iptables stop
Init skripta obrađuje detalje zadržavanja trenutne konfiguracije vatrozida na start / stop. Stoga je vaš vatrozid uvijek u stanju u kojem ste ga ostavili. Ako trebate ručno spremiti novo pravilo, i init skripta može obraditi i ovo:
/etc/init.d/iptables spremite
Osim toga, možete vratiti vatrozid na prethodno spremljeno stanje (za slučaj kada ste eksperimentirali s pravilima i sada želite vratiti prethodnu radnu konfiguraciju):
/etc/init.d/iptables reload
Konačno, init skripta može staviti iptables u "panic" mod, gdje je blokiran sav dolazni i odlazni promet. Nisam siguran zašto je ovaj način rada koristan, ali izgleda da ga imaju svi vatrozidi Linuxa.
/etc/init.d/iptables panika
Upozorenje: Ne pokrećite panični mod ako ste spojeni na poslužitelj putem SSH-a; vas htjeti biti isključen! Jedini put kad bi trebali staviti iptables u panic mod je dok ste vi tjelesno ispred računala.