PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : OpenVPN +Iptables Problem



degree
16.12.05, 16:14
Hi!

Ich arbeite derzeit an einem Aufbau eines VPN Servers. Der Server läuft mit Debian 3.1 Sarge und hat OpenVPN drauf laufen. OpenVPN verwendet Zertifikate was alles wunderbar funktioniert (die verbindung) bis auf 2 mehr oder weniger schwere Probleme.

1.Problem

Client baut Verbindung auf zum Server, beim Internet Zugriff verwendet der Client(Winxp) aber nicht das TAP Device sondern die normale WLAN Karte :rolleyes: was eigentlich nicht Sinn und Zweck ist. Wie kann ich den Client dazu bringen/zwingen das TAP device für Internet zugriff zu verwenden?

2.Problem

Ich möchte mittels IPTables jedlichen Traffic von nicht verschlüsselten Clients (keine VPN Verbindung) unterbinden und nur VPN verbindungen durchlassen.

Zur übersicht mal:

eth0: "externe" 10.x.x.x Netz, Gateway und Proxy befinden sich in diesem Netz


eth1: "interne" Das WLAN Netz, Netz = 172.16.0.0/16

tap0: "VPN" für die verschlüsselten Verbindungen Netz = 192.168.0.0/24


Ich hab eniges probiert mittels Iptables aber es läuft immer auf das selbe hinaus, der Client kann sich nicht mehr mit dem Server verbinden :( ohne IPtables gehts wie gesagt.

Hier mal meine IPtables Regeln:



#eth1: Nur UDP auf Port 1194 reinlassen (VPN)
iptables -A INPUT -i eth1 -p udp --dport 1194 -j ACCEPT
iptables -A INPUT -i eth1 -p udp --dport 5000 -j ACCEPT
iptables -A INPUT -i eth1 -j DROP

#eth1: Nur UDP auf Port 1194 senden
iptables -A OUTPUT -o eth1 -p udp --dport 1194 -j ACCEPT
iptables -A OUTPUT -o eth1 -p udp --dport 5000 -j ACCEPT
iptables -A OUTPUT -o eth1 -j DROP

#Forwarding über eth1 ausschalten
iptables -A FORWARD -i eth1 -j DROP

#Kommunikation über Tunnel erlauben
iptables -A INPUT -i tap0 -j ACCEPT
iptables -A OUTPUT -o tap0 -j ACCEPT
iptables -A FORWARD -i tap0 -j ACCEPT


Ich hoff irgendwer da draußen kann mir heir weiterhelfen

mfg degree


P.S. Mittels Suchfunktion und Google hab ich bissher nichts passendes gefunden

Fly
16.12.05, 20:42
Hallo!

Du hast ein wenig ungenau beschrieben. Ich weiss nicht ganz, was bei deinem Firewall das externe bzw. interne Netz ist. Ich gehe, davon aus, dass eth0 das Gateway ist (externe Interface), mit dem Firewall auch ins Internet routet, dann sind die Iptables Einträge falsch... AUsserdem fehlt bei deiner Firewall die IP-Forwarding... sonst routet dein Linux System nicht und Masquerade würde ich auch setzen. Wie das geht erfährst du durch SUFU, es gibt genug Themen hier. :)

Ein Client verwendet zum Aufbauen einer VPN Verbindung die TAP Device. VPN geht automatisch über Standardgateway, sonst würde er den Server nicht erreichen...

degree
16.12.05, 21:00
Hallo!

Du hast ein wenig ungenau beschrieben. Ich weiss nicht ganz, was bei deinem Firewall das externe bzw. interne Netz ist. Ich gehe, davon aus, dass eth0 das Gateway ist (externe Interface), mit dem Firewall auch ins Internet routet, dann sind die Iptables Einträge falsch...

jo eth0 ist das externe

m inwieweit sind die Einträge falsch? muss ich eth1 mit eth0 ersetzen?

hab ich das jetzt etwa verdreht:eek:

masquaraden jo steht schon drinnen hab ich nur ned kopiert ip forwarden such i noch raus.

thx schon mal

.morph
17.12.05, 02:35
Hi,

kleiner Tipp nebenbei. Du solltest Dir zwischendurch mal LOG Direktiven mit einbauen. Damit lässt es sich leichter debuggen. ;-)

-uw

Fly
17.12.05, 07:04
jo eth0 ist das externe

m inwieweit sind die Einträge falsch? muss ich eth1 mit eth0 ersetzen?

hab ich das jetzt etwa verdreht:eek:

thx schon mal

Wenn du mit Client eine VPN Verbindung zum Server herstellen willst ist der Server/FW natürlich nur auf der externen Schnittstelle erreichbar ;)

Poste in Zukunft die FW Regel immer komplett...