170 likes | 311 Views
Linux – Palomuuri (iptables). Antti Almgren Tite4 0208296. Historia. Ipfwadm kernel 2.0. Salli pakettisuodatuksen perustoiminnot, esim. suodatus aliverkon perusteella. Ipchains kernel 2.2. Porttien edelleenohjaus, tuki QoS ominaisuuksille, sääntöketjut.
E N D
Linux – Palomuuri (iptables) Antti Almgren Tite4 0208296
Historia • Ipfwadm kernel 2.0. Salli pakettisuodatuksen perustoiminnot, esim. suodatus aliverkon perusteella. • Ipchains kernel 2.2. Porttien edelleenohjaus, tuki QoS ominaisuuksille, sääntöketjut. • Iptables kernel 2.4. Tilallisuus, monipuolisemmat kriteerit.
Yleistä • Pakettifiltteri tutkii pakettien headerin ja päättää sen mukaan mitä paketille tehdään. • Kernel aloittaa kolmella listalla sääntöjä suodatustaulukossa. Näitä listoja kutsutaan ketjuiksi. • Nimet: input, output ja forward.
Taulut • Filter (oletuksena). • NAT. • POSTROUTING • Käytetään paketin lähdeosoitteen muokkaamiseen • PREROUTING • Käytetään paketin kohdeosoitteen muokkaamiseen • Mangle. Käytetään paketin sisällön muokkaamiseen.
Konfigurointi • #iptables –h • #man iptables • #iptables –t [taulu] –A [kriteerit] [optiot] –j [kohde] • -A Lisää • -D tuhoa • -P politiikka • -N uusi ketju jne.
Konfigurointi • Optioita • -s lähdeosoite • -d kohdeosoite • -p protokolla (tcp, udp, icmp) • -j kohde (ACCEPT, DROP, REJECT) • -o ulosmenorajapinta (eth0, eth1 jne)
Konfigurointi • Esimerkkejä: • #iptables –L • ketjujen listaus • #iptables –t nat –L • nat-ketjujen listaus • #iptables –P FORWARD DROP • forward-ketjun politiikan vaihdos, kaikki paketit pudotetaan • #iptables –P OUTPUT ACCEPT • output-ketjun politiikan muutos, kaikki paketit hyväksytään
Konfigurointi • Esimerkkejä: • #iptables -A INPUT -s 127.0.0.1 -p icmp -j DROP • lähteestä 127.0.0.1 tulevat icmp-protokolla paketit pudotetaan • #iptables –A FORWARD –s 192.168.2.0/24 –j ACCEPT • aliverkon 192.168.0.0-192.168.255.255 osoitteista tulevat paketit saavat jatkaa matkaansa • #iptables –A FORWARD –p tcp --dport 23 –j ACCEPT • tcp-paketit joissa on kohdeporttina 23 saavat jatkaa matkaansa
Konfigurointi • #iptables –A FORWARD –s 192.168.0.11 –d 192.168.2.10 –p tcp –j ACCEPT • osoitteesta 192.168.0.11 lähtöisin ja kohteena 192.168.2.10 tcp-protokollan paketit saavat jatkaa matkaansa • #iptables –D FORWARD 1 • tuhotaan forward-ketjun ensimmäinen sääntö • #iptables –D FORWARD –s 192.168.0.22 –d 192.168.2.10 • tuhotaan tarkasti määritelty forward-ketjun sääntö
Konfigurointi • iptables –A INPUT –s 192.168.0.0/24 –p tcp –dport ssh –j ACCEPT • sallii aliverkon osotteista 192.168.0.0-192.168.0.255 ssh-yhteyden koneelle
Konfigurointi • NAT, esimerkkejä: • # iptables -t nat -A POSTROUTING -j MASQUERADE Muuntaa ulospäin menevien pakettien source-ip:ksi oman ip:n • # iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 1.2.3.4 Muuntaa eth0:sta ulospäin menevien pakettien ip:n 1.2.3.4:ksi.
Toteutus Kone 7 • #iptables –t nat –A POSTROUTING –j MASQUERADE
Seuraaminen • #tcpdump • #tcpdump -n -i eth0 port 53 • -n ei muuta osoitteita nimiksi • -i määrittää rajapinnan • port määrittää portin • #nmap localhost • #nmap 192.168.2.8
Lisätietoja • Palveluiden käyttämät portit: • #nano /etc/services • Linkkejä: • http://www.netfilter.org • http://www.tcpdump.org/ • http://www.insecure.org/nmap/
Kokeile itse • #ping 192.168.2.111 • #iptables –A INPUT –p icmp –j DROP • #ping 192.168.2.111 • #iptables –D INPUT 1 • #ping 192.168.2.111