Firmware:VPN/VPNTunnelSE: Unterschied zwischen den Versionen

Aus Freifunk Rheinland e.V.
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(2 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 20: Zeile 20:
  float
  float
  client
  client
script-security 2
  dev tun
  dev tun
  proto udp
  proto udp
Zeile 36: Zeile 37:
  ; AUTH
  ; AUTH
  auth-user-pass /etc/openvpn/passwort.txt
  auth-user-pass /etc/openvpn/passwort.txt
# Do not pull routes as we set them up ourself!
route-nopull
up /etc/openvpn/tunff-up.sh
down /etc/openvpn/tunff-down.sh
  persist-key
  persist-key
  persist-tun
  persist-tun
Zeile 57: Zeile 62:
Per "vi /etc/firewall.user"
Per "vi /etc/firewall.user"


  #openvpn
get_iface () {
        local interface=$1
        local iface=$(uci get network.$interface.ifname)
        local type=$(uci -q get network.$interface.type)
        [ "bridge" = "$type" ] && iface="br-$interface"
        echo $iface
}
  # Wan Interface
wan_iface=$(get_iface wan)
# OpenVPN Traffic forwarden und masquerading aktivieren
  iptables -I FORWARD -i br-mesh -o tun0 -j ACCEPT
  iptables -I FORWARD -i br-mesh -o tun0 -j ACCEPT
  iptables -I FORWARD -i tun0 -o br-mesh -j ACCEPT
  iptables -I FORWARD -i tun0 -o br-mesh -j ACCEPT
Zeile 63: Zeile 79:
  iptables -A INPUT -i tun0 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
  iptables -A INPUT -i tun0 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
  iptables -A INPUT -i tun0 -j REJECT
  iptables -A INPUT -i tun0 -j REJECT
# Traffic vom Mesh über das normale Wan-Interface unterbinden
iptables -D FORWARD -i br-mesh -o $wan_iface -j ACCEPT
iptables -I FORWARD -i br-mesh -o $wan_iface -j DROP





Aktuelle Version vom 1. September 2013, 14:41 Uhr

In diesem Beispiel wird ein Benutzerkonto bei vpntunnel.se genutzt.

Einrichtung

  • VPN-Zugang besorgen
  • per SSH auf dem Router einloggen
  • Zertifikate herunterladen und entpacken

Link: https://controlpanel.vpntunnel.com/downloads/cert.zip

Das ca.cert auf dem Router unter /etc/openvpn/ca.crt ablegen.

  • Config anlegen

Per "vi /etc/openvpn/vpntunnel.cfg"

Inhalt:

float
client
script-security 2
dev tun
proto udp
nobind
; CERT
ca /etc/openvpn/ca.crt
ns-cert-type server
cipher BF-CBC
; HOST
remote-random
remote anna.vpntunnel.se 10010
remote anna.vpntunnel.se 10020
remote anna.vpntunnel.se 1194

;resolv-retry infinite
; AUTH
auth-user-pass /etc/openvpn/passwort.txt
# Do not pull routes as we set them up ourself!
route-nopull
up /etc/openvpn/tunff-up.sh
down /etc/openvpn/tunff-down.sh
persist-key
persist-tun
comp-lzo
verb 0
  • Passwort-Datei anlegen:

Die Datei besteht nur aus zwei Zeilen, Name und Passwort. Per "vi /etc/openvpn/passwort.txt"

username
passwort
  • VPN Konfiguration in UCI aktivieren.
uci set openvpn.custom_config.enabled=1
uci set openvpn.custom_config.config=/etc/openvpn/vpntunnel.cfg
uci commit openvpn
  • Firewall anpassen

Per "vi /etc/firewall.user"

get_iface () {
        local interface=$1
        local iface=$(uci get network.$interface.ifname)
        local type=$(uci -q get network.$interface.type)
        [ "bridge" = "$type" ] && iface="br-$interface"
        echo $iface
}

# Wan Interface
wan_iface=$(get_iface wan)

# OpenVPN Traffic forwarden und masquerading aktivieren
iptables -I FORWARD -i br-mesh -o tun0 -j ACCEPT
iptables -I FORWARD -i tun0 -o br-mesh -j ACCEPT
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
iptables -A INPUT -i tun0 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i tun0 -j REJECT
# Traffic vom Mesh über das normale Wan-Interface unterbinden
iptables -D FORWARD -i br-mesh -o $wan_iface -j ACCEPT
iptables -I FORWARD -i br-mesh -o $wan_iface -j DROP


Wenn man den Router nicht restarten möchte müssen die Befehle auch einmal ausgeführt werden.

  • openvpn beim Booten automatisch starten lassen
/etc/init.d/openvpn enable
  • Den Tunnel starten
/etc/init.d/openvpn start
  • ggf. Router neu starten
reboot

Diverse Befehle

  • Dienst neu starten
/etc/init.d/openvpn stop
/etc/init.d/openvpn start