Författare:
Per Stenebo
Skapad:
2012-04-28 12:50:30
Ändrad:
2020-01-20 14:26:40
sv

iptables

| debian iptables | Ubuntu manpage | Ubuntu extensions manpage | Ubuntu IptablesHowTo | 16 iptables tips and tricks | How to forward port using iptables in Linux | How to redirect port in Linux using iptables |

iptables behöver redigeras som root: sudo su

Visa nuvarande konfiguration:

iptables -S eller iptables -L

Lista regler i iptables, visa radnummer:

sudo iptables --list --line-numbers

Exempellista:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
LOG        tcp  --  192.168.0.5          anywhere            tcp dpt:ssh LOG level warning prefix `iptables: SSH attempted'

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Lista ytterliager info med -v, -L är alias för --list:

iptables -L -v --line-numbers

Ta bort regel 1 från chain INPUT i iptables:

sudo iptables -D INPUT 1

Ta bort alla regler, det inaktivera brandväggen tillfälligt:

sudo iptables -F

Ta bort alla egna chains, standard lämnas kvar:

sudo iptables --delete-chain

Spara nuvarande konfiguration till fil:

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

Blockera utgående TCP trafik över port 9003, gäller till nästa boot:

iptables -A OUTPUT -p tcp --dport 9003 -j DROP

Blockera utgående UDP trafik över port 123 (blockerar NTP-klient), gäller till nästa boot:

iptables -A OUTPUT -p udp --dport 123 -j DROP

Blockera inkommande ping, som root:

iptables -I INPUT -p icmp --icmp-type 8 -j DROP

Återställ med, som root:

iptables -I INPUT -p icmp --icmp-type 8 -j ACCEPT

Återställa konfiguration från fil:

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

 

Begränsa anslutningar

| limit number of connections | FUNKAR INTE ÄNNU

Skapa en ny grupp (chain) som vi kallar sshLimit:

sudo iptables --new-chain sshLimit --match comment --comment "Försvåra brute-force-attacker på SSH-port"

sudo iptables --append sshLimit --protocol tcp --match conntrack --ctstate NEW --match limit --limit 2/min --limit-burst 2 --jump RETURN

sudo iptables --append sshLimit --jump DROP

sudo iptables --insert INPUT 1 --protocol tcp --destination-port 22 --jump sshLimit

 

sudo iptables --new-chain sshLimit --match comment --comment "Försvåra brute-force-attacker på SSH-port"

sudo iptables --append sshLimit --protocol tcp --destination-port 22 --match conntrack --ctstate NEW --match limit --limit 2/min --limit-burst 2 --jump DROP

 

sudo iptables -A INPUT -p tcp --syn --dport 22 --match limit --limit 2/min --limit-burst 2 -j DROP

Begränsa sessioner per värd

Begränsa till 2 samtidiga SSH-anslutningar per värd, i praktiken verkar 3 anslutningar tillåtas: FUNKAR INTE ordentligt

iptables -A INPUT -p tcp --syn --dport 22 -m connlimit --connlimit-above 2 -j REJECT

 

Logga aktivitet

| linuxquestions.org

Från och med Ubuntu 11.04 loggar iptables till /var/log/syslog och /var/log/kern.log, tidigare loggades till /var/log/messages. Loggfilen kan ändras | cyberciti.biz |

Logga inkommande anslutning på TCP port 8080:

iptables -I INPUT -p tcp -m tcp --dport 8080 -m state --state NEW  -j LOG --log-level 1 --log-prefix "Ny anslutning: "

 

 

Logga aktivitet till port 22 från IP 192.168.0.5 FUNKAR INTE ÄNNU

sudo iptables --table filter --append INPUT --protocol tcp -m conntrack --ctstate NEW --source address 192.168.0.5 --destination-port 22 -j LOG --log-prefix "iptables: SSH attempted: "

 

Kommentarer till sidan iptables