Palomuuri Valtteri Virtanen
Yritysten uhkakuvia Liiketietojen menetys Kyvyttömyys taata tietojen eheys Saatavuuden takaaminen Tietotekniikkainfrastruktuurin paljastuminen Luottamuksen menetys Ilkivalta julkiseen informaatioon
Linux palomuuri Pakettisuodatin –Sijaitsee kernelissä Tutkii pakettien otsikkotiedot –Protokolla, kohdeosoite, lähdeosoite, kohdeportti, lähdeportti jne… Toimii annettujen sääntöjen mukaan –Accept, drop, reject Tilallinen –Tunnistaa palaavan liikenteen
Iptables Pakettisuodattimen käyttöliittymä –Käytetään sääntöjen syöttämiseen ja tarkkailuun Koostuu kolmesta taulukosta –Filter –Nat –Mangle
Filter Iptablesin oletustaulukko Käytetään pakettien suodatukseen Koostuu kolmesta eri ketjusta –Input –Output –Forward
Nat Käytetään lähde ja kohde osoitteiden muuttamiseen Koostuu kolmesta eri ketjusta –Prerouting –Postrouting –Output
Mangle Käytetään pakettien muokkaamiseen Koostuu viidestä ketjusta –Input –Output –Postrouting –Prerouting –Forward
Ketjut Säännöt ketjuissa Edetään järjestyksessä Ensimmäinen sääntö ratkaisevin Jollei löydy sääntöä käytetään yleistä politiikka Ketjuja voi myös luoda lisää
Ketjujen käyttö Ketjujen tulostus iptables -t filter -L Säännön lisäys ketjuun iptables -t filter -A INPUT -p icmp -j DROP Säännön poisto ketjusta iptables -t filter -D INPUT -p icmp -j DROP Säännön lisäys ketjun tiettyyn paikkaan iptables -I FORWARD 2 -p tcp --dport 80 -j DROP Yleisen politiikan asetus iptables -P OUTPUT ACCEPT Ketjun luonti iptables –N uusiketju
Sääntöjen luonti Komennon rakenne iptables –t -A -j Muokattava taulukko (filter, nat tai mangle) muokattava ketju ( input, output, forward, prerouting tai postrouting) toiminto (DROP,ACCEPT,REJECT,LOG,DNAT jne)
Mitä voidaan tehdä Liikenteen välittämisen estäminen tiettyyn osoitteeseen iptables -A FORWARD -d j DROP UDP protokollan pakettien estäminen tietystä verkosta iptables -A INPUT -p udp -s /24 -j DROP SSH yhteyden estäminen koneesta ulospäin iptables -A OUTPUT -p tcp --dport 22 -j DROP NATin luominen iptables -t nat -A POSTROUTING -s /24 -j MASQUERADE Uudelleen ohjaus iptables -t nat -A PREROUTING -i eth1 -p tcp --dport j DNAT --to :6666
Vipuja -s Määrittelee lähdeosoitteen -d Määrittelee kohdeosoitteen -i Määrittelee verkkorajapinnan josta paketti on tullut -o Määrittelee verkkorajapinnan josta paketti on menossa ulos -p Määrittelee protokollan --sportlähdeportin tunnistus --dportkohdeportin tunnistus --statekäytetään tunnistamaan yhteyden eri tiloja
Palomuurin toteutus –iptables -P INPUT DROP –iptables -P FORWARD DROP Input ja forward ketjujen oletuspolitiikaksi asetetaan tunnistamattomien pakettien pudotus. –iptables -P OUTPUT ACCEPT Luotamme omaan koneeseen, joten laskemme siitä kaikki yhteydet ulospäin. –iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT Sallitaan koneelle vain sellainen liikenne jolle on luotu yhteys koneestamme tai yhteys liitty jo aikaisemmin avattuun yhteyteen. –iptables -A INPUT –p tcp --dport 22 -j ACCEPT –iptables -A INPUT -i eth1 –p tcp --dport j ACCEPT Koneeseen lasketaan ssh liikenne ja DMZ:n puoleisesta verkkokortista liikenne porttiin 8080 joka on http proxya varten.
–iptables -A INPUT -p icmp -j ACCEPT ICMP paketit hyväksytään kummastakin verkosta koneelle. –iptables -A FORAWARD -i eth1 -j ACCEPT DMZ verkosta välitetään kaikki liikenne Internettiin. –iptables -A FORWARD -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT Internetistä välitetään DMZ verkkoon vain sellainen liikenne jolle on luotu yhteys koneestamme tai yhteys liitty jo aikaisemmin avattuun yhteyteen. –iptables -A FORWARD -m limit -j LOG --limit 1/s --log-prefix "dropped:" –iptables -A INPUT -m limit -j LOG –-limit 1/s --log-prefix "dropped:" Kerää logitietoa pudotetuista paketeista. Logeja kerätään vain yksi sekunnissa. Logit löytyvät tiedostosta /var/log/kern.log
Kokeiltavaa iptables -t filter -A INPUT -p icmp -j DROP ping iptables -t filter -D INPUT -p icmp -j DROP ping