Keep it simple – Very basic iptables

Network Ubuntu

Iptables können ziemlich verwirrend sein. Deshalb habe ich, um einen Grundstock zu schaffen, ein ganz simples Skript gebastelt. Standardmässig sind keine Ports von außen erreichbar, gewünschte Ports müssen explizit freigegeben werden. Von innen initiierte Verbindungen funktionieren, Verbindungen mit den freigegebenen Ports auch. Kann man es noch weiter vereinfachen?

#!/bin/bash

# alle bestehenden Regeln löschen
iptables -F

# Standardmässig eingehende Verbindungen verbieten
iptables -P INPUT DROP

# Standardmässig ausgehende Verbindungen erlauben
iptables -P OUTPUT ACCEPT

# Nicht routen
iptables -P FORWARD DROP

# localhost darf alles
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# Eingehende Verbindungen für SSH und HTTP erlauben
iptables -A INPUT -j ACCEPT -p tcp --dport 22
iptables -A INPUT -j ACCEPT -p tcp --dport 80

# Eingehende Verbindungen erlauben, die sich auf bestehende Verbindungen
# beziehen. (Damit es nach dem Verbindungsrequest eines Clients auch weitergeht)
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben