IPTables für ein OpenVPN

K

Kodiax

Eroberer
Hallo,

ich habe einen OpenVPN Server aufgesetzt um von überall auf mein Netzwerk und mein Sambashare zugreifen zu können.

Dafür habe ich folgende habe ich folgende IPTables config zusammengestellt.

Code:
#eth0 Internet
#eth1 Intranet
iptables -F                                                  #alle Regeln löschen

iptables -P INPUT DROP            #Policy für Tabelle filter, INPUT Chain
iptables -P OUTPUT ACCEPT            #Policy für Tabelle filter, OUTPUT Chain
iptables -P FORWARD DROP        #Policy für Tabelle filter, FORWARD Chain

iptables -A INPUT -i lo -j ACCEPT	 					#eingehende Kommunikation für lo (Localhost) zulassen
iptables -A OUTPUT -o lo -j ACCEPT	 					#ausgehende Kommunikation für lo (Localhost zulassen

#eingehende Kommunikation für lo (Localhost) vom Intranet zulassen
iptables -A INPUT -i eth1 -d 127.0.0.0/8 -j ACCEPT         
iptables -A FORWARD -i eth1 -d 127.0.0.0/8 -j ACCEPT

#ssh eingehend von eth1 zulassen
iptables -A ÍNPUT -i eth1 -p tcp --dport 22 -j ACCEPT 		     

#OpenVPN zulassen
iptables -A INPUT -p udp --dport 1194 -j ACCEPT

#Virtuellen TUN VPN Adapter erlauben
iptables -A INPUT -i tun0 -j ACCEPT
iptables -A FORWARD -i tun0 -j ACCEPT

# Packete aus dem Intranet Erlauben
iptables -A INPUT -i eth1 -j ACCEPT
iptables -A FORWARD -i eth1 -j ACCEPT

# Aufgebaute verbindungen zulasssen
iptables -A OUTPUT -m state --state NEW -o eth0 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state NEW -o eth0 -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

Ich Route einmal im Router das Jeweilige Subnet zum VPN Server und von dort aus zum tun0. Auch für die andere Richtung sind die routen eingetragen.

Meine frage ist nun, geht diese Config und gibt es Verbesserungsvorschläge?

Ich habe vorher noch nie eine derartige config geschrieben und bin deswegen etwas verunsichert ob es denn geht wie ich mir das vorstelle. Es fehlt mir außerdem noch die Freigabe für Ubuntu Update und Samba.

Ich danke schon einmal im voraus ^^
 
Zuletzt bearbeitet:
Also ich würde hier schon einiges anders machen. Aber was ich gleich vorneweg nehmen muss ist, dass ich auch nicht der grosse iptables-Kenner bin.

Zuerst Policy auf DROP bevor man die Regeln löschst. Wenn dann dein Skript aus irgend einem Grund abbricht ist das dann nicht so schlimm.
Code:
iptables -P INPUT DROP            #Policy für Tabelle filter, INPUT Chain
iptables -P OUTPUT ACCEPT            #Policy für Tabelle filter, OUTPUT Chain
iptables -P FORWARD DROP        #Policy für Tabelle filter, FORWARD Chain
iptables -F                                                  #alle Regeln löschen
Wie man das Loopbackinterface konfigurieren soll habe ich keine Ahnung.
Code:
iptables -A INPUT -i lo -j ACCEPT	 					#eingehende Kommunikation für lo (Localhost) zulassen
iptables -A OUTPUT -o lo -j ACCEPT	 					#ausgehende Kommunikation für lo (Localhost zulassen
iptables -A INPUT -i eth1 -d 127.0.0.0/8 -j ACCEPT         
iptables -A FORWARD -i eth1 -d 127.0.0.0/8 -j ACCEPT
Dann würde ich dir empfehlen mit der ersten Regel die bereits etablierten Verbindungen zu erlauben. So müssen diese nicht jedes mal den ganzen Regelsatz durchlaufen.
Code:
# Aufgebaute verbindungen zulasssen
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
Weiter lässt du nur noch neue Verbindungen zu.
Code:
#ssh eingehend von eth1 zulassen
iptables -A ÍNPUT -i eth1 -p tcp --dport 22 -m state --state NEW -j ACCEPT 		     

#OpenVPN zulassen
iptables -A INPUT -p udp --dport 1194 -m state --state NEW -j ACCEPT
#Virtuellen TUN VPN Adapter erlauben
iptables -A INPUT -i tun0 -j ACCEPT
iptables -A FORWARD -i tun0 -j ACCEPT

# Packete aus dem Intranet Erlauben
iptables -A INPUT -i eth1 -j ACCEPT
iptables -A FORWARD -i eth1 -j ACCEPT

Wenn du in deinem LAN nicht alles öffentliche IP-Adressen hast, solltest du zwingend noch ein NAT einrichten sonst werden deine Pakete nie wieder zurück kommen.
 
Danke für dein Feedback.

Ich habe die Reihenfolge angepasst.

Warum soll ich in einem gerouteten VPN einen NAT einrichten, wenn die Gegenstelle in einem anderen Subnet ist? ^^

Da ich das VPN nur benutze um auf meinen Server zuhaue von meine Wohnung (Andere Stadt) aus zugreifen zu können.
(Ich habe überal lgeschrieben, das meinte ich etwas anders)
 

Ähnliche Themen

Port Forwarding mit iptables

ip6tables Problem

iptables verständniss frage, xrdp nicht erreichbar.

[SOLVED][CentOS 7] Samba server nicht erreichbar trotz firewall regeln.

Wired-Lan komisches Verhalten

Zurück
Oben