IP Tabels

Gemeinsam ins Internet mit Firewall und Proxy.
Antworten
Bennyy
Beiträge: 6
Registriert: 25.04.2016 15:39:35

IP Tabels

Beitrag von Bennyy » 01.09.2016 11:33:37

Hallo, ich bin im Thema IPTabels noch sehr unerfahren und möchte aber auf diese zurückgreifen. Für mein neues Projekt ist es nötig alle Ports außerhalb von 100-200 nur von bestimmten IP's zugänglich zumachen.

Beispiel:
__________________________________________
Port:
100
101
102 Sind nur über IP's erreichbar
...
200
__________________________________________

Alle außerhalb dieser Range sind nur von z.B 123.456.789 und 987.654.321 erreichbar.
Wie ist dies möglich bzw. was muss ich genau Droppen?

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: IP Tabels

Beitrag von MSfree » 01.09.2016 12:04:04

Bennyy hat geschrieben:Für mein neues Projekt ist es nötig alle Ports außerhalb von 100-200 nur von bestimmten IP's zugänglich zumachen.
Die Defaultpolicy sollte immer DROP sein, also eine Initialisierung in der Art:

Code: Alles auswählen

iptables -P OUTPUT  DROP
iptables -P INPUT   DROP
iptables -P FORWARD DROP
Als nächstes solltest du ESTABLISHED,RELATED immer erlauben

Code: Alles auswählen

iptables -A INPUT   -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT  -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
Bestimmte Ports macht man für Hosts mit bekannter IP-Adresse folgendermassen zugänglich:

Code: Alles auswählen

iptables -A INPUT -i eth0 -s IP-des-Hosts -p tcp --dport Portnummer -j ACCEPT
Ports, die für alle offen stehen sollen stellt man folgerndemassen zur Verfügungn:

Code: Alles auswählen

iptables -A INPUT -i eth0 -p tcp --dport Portnummer -j ACCEPT
Zum Abschluß ist es eine gute Idee, den Rest der Pakete zu loggen. Das hilft unter anderem auch dabei, Ports, die man zu öffnen vergessen hat, zu erkennen:

Code: Alles auswählen

iptables -A OUTPUT  -m limit --limit 100/minute -j LOG --log-level info --log-prefix "outgoing: "
iptables -A OUTPUT  -j DROP
iptables -A INPUT   -m limit --limit 100/minute -j LOG --log-level info --log-prefix "incoming: "
iptables -A INPUT   -j DROP
iptables -A FORWARD -m limit --limit 100/minute -j LOG --log-level info --log-prefix "forward: "
iptables -A FORWARD -j DROP 

Antworten