iptables für VPN Gateway

  • Hallo zusammen,


    meine Frage hat nicht direkt etwas mit dem Vdr zutun aber die Netzwerk/Linux-Profis können mir wahrscheinlich trotzdem helfen! :)


    Und zwar habe ich mir auf meinem Cubieboard2 ein VPN-Gateway eingerichtet - was auch funktioniert. Zusätzlich laufen aber noch andere Dienste auf dem Server, welche über das Internet (ohne VPN) erreichbar sein sollen.
    Das Problem ist, dass diese Dienste nicht mehr erreichbar sind, sobald openvpn läuft. Ich vermute, das liegt daran, dass der Server versucht die Anfragen über VPN (tun0) zu beantworten, anstatt wieder über eth0.


    Ich benötige jetzt eine iptable die meine Anfragen nach außen über das Gateway abwickelt und Zugriffe aus VPN-Netzwerk in mein lokales Netzt verbietet. (Ich denke, das funktioniert bereits)
    Und die Einträge die Anfragen aus dem Internet ohne VPN auch ohne VPN beantwortet. Bei dem Dienst handelt es sich bsw. um eine UDP-Verbindung auf dem Port 123. Die Portweiterleitung ist im Router natürlich eingetragen und funktioniert ohne aktive VPN-Verbindung.


    Hier ist meine bisherige iptable für das VPN-Gateway:

    Code
    1. iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    2. iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
    3. iptables -A INPUT -i tun0 -m state --state RELATED,ESTABLISHED -j ACCEPT
    4. iptables -A INPUT -i tun0 -j DROP


    Könnt ihr mir bitte helfen bzw. kann man das überhaupt so konfigurieren?!


    Viele Grüße,
    Manu

  • Warum maskierst Du den Tunnel?


    Code
    1. iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE


    Weg damit.


    Albert

  • Hallo Albert,


    vielen Dank für deine Antwort! Keine Ahnung warum tun0 maskiert - vermutlich copy&paste ...


    Mit folgenden Einstellungen scheint es erstmal zu funktionieren:

    Code
    1. #add ip route
    2. ip rule add from 192.168.2.111 table 10
    3. ip route add default via 192.168.2.1 table 10
    4. #enable port forwarding
    5. iptables -I INPUT -m tcp -p tcp --dport 1234 -j ACCEPT
    6. iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    7. iptables -A INPUT -i tun0 -m state --state RELATED,ESTABLISHED -j ACCEPT
    8. iptables -A INPUT -i tun0 -j DROP


    Wobei 192.168.2.111 das VPN-Gatewate und 192.168.2.1 das "normale" Gateway ist.


    Siehst du dabei noch Probleme/Fehler?


    Viele Grüße,
    Manu

  • Siehst du dabei noch Probleme/Fehler?


    Wenn alles so funktioniert, wie Du es Dir vorstellst, dann passt es schon. Ich würde noch mit einem traceroute den Tunnelverkehr überprüfen. Es sollten genau zwei Hops auf dem Weg des Paketes vorhanden sein, die zwei Tunnelenden.


    Albert