Mainos / Advertisement:

Ero sivun ”Iptables” versioiden välillä

Kohteesta Taisto
Siirry navigaatioon Siirry hakuun
Rivi 25: Rivi 25:
 
iptables -L -v
 
iptables -L -v
  
<!--T:9-->
+
=== Peruspalomuurisäännöt ===
Komento tulostaa:
 
  
  <!--T:10-->
+
Tässä esimerkki palomuuri käy jokaiselle:
Chain fail2ban-ssh (1 references)
 
  target    prot opt source              destination       
 
  DROP      all  --  192.168.100.100          0.0.0.0/0         
 
  RETURN    all  --  0.0.0.0/0            0.0.0.0/0
 
  
<!--T:11-->
+
  *filter
Poistetaan IP-osoite fail2ban ssh korvaamalla <banned_ip> ban IP-osoitteella.  
+
  :INPUT DROP [0:0]
 +
  :FORWARD ACCEPT [0:0]
 +
  :OUTPUT ACCEPT [0:0]
 +
 
 +
  # Salli pakallinen liikenne
 +
  -A INPUT -i lo -j ACCEPT
 +
  # Ensimmäinen paketti on SYN bitti. Jos se ei ole niin estetään yhteys.
 +
  -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
 +
 
 +
  # Estä rikkinäiset paketit
 +
  -A INPUT -f -j DROP
 +
 
 +
  # Estä XMAS paketit
 +
  -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
 +
 
 +
  # Estä "NULL" paketit
 +
  -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
 +
 
 +
  # Rajoitsa TCP RST (TCP RESET).  
 +
  -A INPUT -p tcp -m tcp --tcp-flags RST RST -m limit --limit 2/second --limit-burst 2 -j ACCEPT
  
   <!--T:12-->
+
   # Estä kaikki virheelliset paketit
iptables -D fail2ban-ssh -s <banned_ip> -j DROP
+
  -A INPUT -m state --state INVALID -j DROP
 +
  -A FORWARD -m state --state INVALID -j DROP
 +
  -A OUTPUT -m state --state INVALID -j DROP
 +
 
 +
  # Estä väärennetyt paketit
 +
  -A INPUT -s 169.254.0.0/16 -j DROP
 +
  -A INPUT -s 127.0.0.0/8 -j DROP
 +
  -A INPUT -s 224.0.0.0/4 -j DROP
 +
  -A INPUT -d 224.0.0.0/4 -j DROP
 +
  -A INPUT -s 240.0.0.0/5 -j DROP
 +
  -A INPUT -d 240.0.0.0/5 -j DROP
 +
  -A INPUT -s 0.0.0.0/8 -j DROP
 +
  -A INPUT -d 0.0.0.0/8 -j DROP
 +
  -A INPUT -d 239.255.255.0/24 -j DROP
 +
  -A INPUT -d 255.255.255.255 -j DROP
 +
 
 +
  # ICMP hyökkäyksen torjunta ja rajoitettu määrä pyyntöjä
 +
  -A INPUT -p icmp --icmp-type address-mask-request -j DROP
 +
  -A INPUT -p icmp --icmp-type timestamp-request -j DROP
 +
  -A INPUT -p icmp --icmp-type router-solicitation -j DROP
 +
  -A INPUT -p icmp -m limit --limit 2/second -j ACCEPT
  
 
+
  # Hyväksy SSH
<!--T:13-->
+
   -A INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT
Lisätään IP-osoite ban listalle manuaalisesti:
+
 
+
  # Estä SYN-FLOOD paketit
   <!--T:14-->
+
   -A INPUT -p tcp -m state --state NEW -m limit --limit 50/second --limit-burst 50 -j ACCEPT
iptables -A INPUT -s <banned_ip> -j DROP
+
   -A INPUT -p tcp -m state --state NEW -j DROP
 
+
 
<!--T:15-->
+
  # Salli tunnetut yhteydet
Verkko-osoiteavaruuksinen  ban
+
  -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
 
+
 
  <!--T:16-->
+
  COMMIT
iptables -A INPUT -s <banned_ip>/24 -j DROP
 
 
 
<!--T:17-->
 
Verkko-alueen ban:
 
 
 
   <!--T:18-->
 
iptables -A INPUT -m iprange --src-range <banned-ip>-<range> -j DROP
 
 
 
<!--T:19-->
 
"/24" tarkoittaa verkkomaskia, oletuksena se on 24 = 255.255.255.0
 
 
 
<!--T:20-->
 
Lista boteista:
 
 
 
   <!--T:21-->
 
116.10.191.0/24
 
  61.174.50.0/24
 
  61.174.51.0/24
 
 
 
<!--T:22-->
 
Kun olet estänyt manuaalisesti voit katsoa iptablea, ja se näyttää tältä
 
 
 
<!--T:23-->
 
Chain INPUT (policy ACCEPT)
 
target    prot opt source              destination
 
fail2ban-proftpd  tcp -- 0.0.0.0/0            0.0.0.0/0            multiport dports 21,20,990,989
 
fail2ban-ssh  tcp  -- 0.0.0.0/0            0.0.0.0/0            multiport dports 22
 
DROP       all  --  116.10.191.0/24      0.0.0.0/0
 
 
 
 
 
<!--T:24-->
 
Salli kaikki liikenne ulospäin
 
 
 
<!--T:25-->
 
iptables -I OUTPUT -o eth0 -d 0.0.0.0/0 -j ACCEPT
 
iptables -I INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
 
  
 
=== Palomuuri asetusten tallennus tiedostoon ja palautus === <!--T:26-->
 
=== Palomuuri asetusten tallennus tiedostoon ja palautus === <!--T:26-->

Versio 13. huhtikuuta 2015 kello 18.29

Muut kielet:
English • ‎suomi

Iptables on pakettisuodatin. Tällä voidaan toteuttaa reitittimiä ja palomuureja.

Käyttö

Näytetään palomuuri säännöt

 iptables -L

Näytetään estetyt palomuurista esim. fail2ban

 iptables -L -n

Lista tarkemmin

 iptables -L -v

Peruspalomuurisäännöt

Tässä esimerkki palomuuri käy jokaiselle:

 *filter
 :INPUT DROP [0:0]
 :FORWARD ACCEPT [0:0]
 :OUTPUT ACCEPT [0:0]
 
 # Salli pakallinen liikenne
 -A INPUT -i lo -j ACCEPT
 # Ensimmäinen paketti on SYN bitti. Jos se ei ole niin estetään yhteys.
 -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
 
 # Estä rikkinäiset paketit
 -A INPUT -f -j DROP
 
 # Estä XMAS paketit
 -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
 
 # Estä "NULL" paketit
 -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
 
 # Rajoitsa TCP RST (TCP RESET). 
 -A INPUT -p tcp -m tcp --tcp-flags RST RST -m limit --limit 2/second --limit-burst 2 -j ACCEPT
 # Estä kaikki virheelliset paketit
 -A INPUT -m state --state INVALID -j DROP
 -A FORWARD -m state --state INVALID -j DROP
 -A OUTPUT -m state --state INVALID -j DROP
 
 # Estä väärennetyt paketit
 -A INPUT -s 169.254.0.0/16 -j DROP
 -A INPUT -s 127.0.0.0/8 -j DROP
 -A INPUT -s 224.0.0.0/4 -j DROP
 -A INPUT -d 224.0.0.0/4 -j DROP
 -A INPUT -s 240.0.0.0/5 -j DROP
 -A INPUT -d 240.0.0.0/5 -j DROP
 -A INPUT -s 0.0.0.0/8 -j DROP
 -A INPUT -d 0.0.0.0/8 -j DROP
 -A INPUT -d 239.255.255.0/24 -j DROP
 -A INPUT -d 255.255.255.255 -j DROP
 
 # ICMP hyökkäyksen torjunta ja rajoitettu määrä pyyntöjä
 -A INPUT -p icmp --icmp-type address-mask-request -j DROP
 -A INPUT -p icmp --icmp-type timestamp-request -j DROP
 -A INPUT -p icmp --icmp-type router-solicitation -j DROP
 -A INPUT -p icmp -m limit --limit 2/second -j ACCEPT
 # Hyväksy SSH
 -A INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT

 # Estä SYN-FLOOD paketit
 -A INPUT -p tcp -m state --state NEW -m limit --limit 50/second --limit-burst 50 -j ACCEPT
 -A INPUT -p tcp -m state --state NEW -j DROP
 
 # Salli tunnetut yhteydet
 -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
 
 COMMIT

Palomuuri asetusten tallennus tiedostoon ja palautus

Tallenna palomuuriasetukset

 iptables-save > /etc/iptables/rules.v4

Palauta palomuuriasetukset tiedostosta

 iptables-restore < /etc/iptables/rules.v4

Tallenna IPv6 palomuuriasetukset tiedostoon

 ip6tables-save > /etc/iptables/rules.v6


Automaattinen palomuuriasetuksen lataus tiedostosta käynnistäessä

Asenna pakettihallinnasta.

 apt-get install iptables-persistent

NAT

Määritä Linuxille kaksi verkkokorttia jossa molemmissa IP-osoitteet. Sisäverkon kortissa tulee olla kiinteä IP-osoite. Tämä toimii verkon gateway:na.

Salli IPv4 forwarders:

 nano /etc/sysctl.conf

poistamalla risuaita:

 net.ipv4.ip_forward=1

Käynnistä uudelleen

Lisää komentoina (ulko interface):

iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

Sisä interface sallitaan forwardoiminen eth0:sta eth1 interfaceen kunhan tila on related / established

iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT

Lähde

http://www.thomas-krenn.com/en/wiki/Saving_Iptables_Firewall_Rules_Permanently

http://linux.fi/wiki/Iptables

Mainos / Advertisement: