Tagit: how to set up linux router firewall using iptables, allow ping, create a new rule, allow incoming traffic, iptables reitittimen asennus
Ohjeessa käytetään iptables-ohjelmistoa.
Jotta palvelimesta saadaan tehtyä reititin ja palomuuri, täytyy palvelimessa olla kaksi verkkosovitinta. Ohjeessa ulkoverkko yhdistetään eth0 -verkkosovittimeen (esimerkiksi suoraan modeemista) ja lähiverkkokytkin yhdistetään eth1 -verkkosovittimeen. Esimerkkiverkkoasetukset näkyvät kuvassa 1. Ulkoverkon IP-osoite saadaan automaattisesti DHCP:llä. Muutosten jälkeen otetaan asetukset käyttöön komennolla /etc/init.d/networking restart .
Sallitaan reititys poistamalla kommentointi riviltä net.ipv4.ip_forward=1
tiedostosta /etc/sysctl.conf
sekä suorittamalla
komento echo 1 > /proc/sys/net/ipv4/ip_forward
.
Suoritetaan seuraavat komennot. Muokkaa komentojen eth0 ja eth1 sekä osoiteavaruus sopiviksi omaan palvelimeesi.
Sallitaan loopback-liikenne: iptables -A INPUT -i lo -j ACCEPT
Tehdään osoitteenmuutos: iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Sallitaan sisältäpäin luodut yhteydet: iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
Sallitaan ulosmenevä liikenne: iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
Sallitaan lähiverkon sisäinen liikenne: iptables -A INPUT -s 192.168.144.0/255.255.255.0 -j ACCEPT
Estetään muu liikenne (sallimiset ennen tätä komentoa): iptables -A INPUT -j DROP
Iptablesin asetukset poistuvat muistista uudelleenkäynnistyksen yhteydessä.
Tallennetaan asetukset tiedostoon komennolla iptables-save > /etc/iptables-asetukset
. Muista tallentaa asetukset tällä komennolla joka kerta, kun teet muutoksia.
/etc/network/interfaces
-tiedostoon ulkoverkkosovittimen alle komento pre-up iptables-restore < /etc/iptables-asetukset
, joka lataa iptablesin asetukset tietokoneen käynnistyessä (kts. kuva 1).
Asetukset saa näkyviin komennolla iptables -L . Komennon suorittamisessa saattaa mennä muutamia sekunteja.
Kuva 1 |
Salli pingiin vastaaminen:
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 5/s -i eth0 -j ACCEPT
limit -osio rajoittaa kyselyiden määrän viiteen sekunnissa, mikä estää DOS-hyökkäyksiä.
Salli yhteys ulkoverkosta palomuuriin:
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
Korvaa tcp
käytettävällä protokollalla (usein tcp tai udp) ja 80
portin numerolla.
Salli yhteys ulkoverkosta toiseen sisäverkossa olevaan palvelimeen:
iptables -t nat -A PREROUTING -p tcp --dport 80 -i eth0 -j DNAT --to 192.168.144.5
Korvaa tcp, 80, eth0
ja kohdepalvelimen osoite 192.168.144.5
sopivilla asetuksilla.
Säännön poistaminen:
Listaa säännöt komennolla iptables -L
ja laske poistettavan säännön numero (kts. kuva 2).
Poistetaan neljännen rivin WWW-palvelimen sääntö komennolla iptables -D INPUT 4
.
Säännön lisääminen:
Koska viimeinen komentomme estää kaiken liikenteen, tulee sallimiset listata ennen sitä. Katsotaan edellisen kohdan tavoin
INPUTin DROP -säännön numero (kuvassa 2 numero on 5). Komento iptables -I INPUT 5 -p tcp --dport 21 -j ACCEPT
lisää
FTP-palvelun säännön ennen viidettä sääntöä.
Säännön korvaaminen:
Edellisten kohtien tavoin tarkistetaan korvattavan säännön numero ja esimerkiksi vaihdetaan SSH-palvelun portti
turvallisemmaksi komennolla iptables -R INPUT 3 -p tcp --dport 2238 -j ACCEPT
Kuva 2 |