Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. VPN Verbindung Fritzbox / einbinden entferntes Device / Debian 9.5

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    VPN Verbindung Fritzbox / einbinden entferntes Device / Debian 9.5

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      malc last edited by

      Hallo!

      Ich habe mir eine VPN Fernbindung von meinem ioBroker Server auf Debian 9.5 zu einer entfernten FritzbBox eingerichtet, um das in dem Netz befindliche Device im ioBroker einzubinden. Ich habe das Routing so angepasst das nur das der Traffic zum entfernten Netz über die VPN Verbindung läuft. Das ist sicher alles noch verbesserungsfähig doch läüft es sehr stabil inkl. automatischen Reconnect.

      Ich hatte mir im Internet die Fragmente zusammen gesucht und für meine Bedürfnisse / System angepasst. Das Ursprungs script habe ich hier: http://www.kuemmel.wtf/?p=363 gefunden. Da fehlte aber noch das Routing und eben "Debiansyntax" (Kein route / ifconfig etc.).

      Vielleicht braucht das ja noch jemand, hier mal alle notwendige Schritte:

      !ACHTUNG: Die VPN Daten liegen dann im Klartext im Script. Nicht das ich es nicht erwähnt habe.. 🙂

      Install VPNC:

      apt-get install vpnc
      
      

      Konfig erstellen

      nano /etc/vpnc/<meinevpn>.conf</meinevpn> 
      

      Das muss da rein:

      IPSec gateway	<hostname>.myfritz.net
      IPSec ID	 <gruppenname>IPSec secret	 <shared secret="">IKE Authmode psk	
      Xauth username	 <username>Xauth password	 <userpassword>local port 0	
      DPD idle timeout (our side) 0</userpassword></username></shared></gruppenname></hostname> 
      

      Verbindung aufbauen:

      vpnc <meinevpn>.conf</meinevpn> 
      

      Verbindung abbauen:

      vpnc-disconnect
      
      

      Script zum automatischen Aufbau:

      (Wird durch Crontab das erste mal 3 Min nach Boot gestartet, kann auch zusätzlich bei Boot in /etc/rc.local)

      nano /etc/init.d/auto-<meinevpn>-vpn.sh</meinevpn> 
      
      #!/bin/bash
      # set -x auskommentieren für den Debug Modus. Die Ausgabe erscheint in der Kommandozeile.
      #set -x
      
      Version=1.1
      Client= <name>LOGFILE=/home/$Client-vpn.log
      
      #Lokale IP
      LocalGateway=192.168.0.1
      
      #Entfernter Router / Test IP
      RemoteHost=192.168.99.1
      
      #Entferntes Netz
      RemoteNet=192.168.99.0/24
      
      #Namen des lokalen Devices ens18 bei Debian unter VM / Proxmox
      DeviceLocal=ens18
      
      #Namen des VPN Devices / Default tun0
      DeviceVPN=tun0
      
      wert=4
      
      echo "" | tee -a $LOGFILE
      echo "$(date +%Y-%m-%d:%T) :VPN Version $Version Check $RemoteHost" |tee -a $LOGFILE
      
      count=$(ping -c $wert $RemoteHost | grep 'received' | awk '{print $4 }')
      
      if [ $count -eq 4 ]
      then
              wan=$(curl ipinfo.io/ip)
              pid=$(pidof vpnc)
              ip=$(ip a s $DeviceVPN  | grep "inet " | cut -b 10-23)
      
              echo "$(date +%Y-%m-%d:%T) :VPN OK IP $ip WAN $wan PID $pid" | tee -a $LOGFILE
      else
              echo "$(date +%Y-%m-%d:%T) :VPN Reconnect" |tee -a $LOGFILE
              /usr/sbin/vpnc-disconnect
      
              # oft ist die Wlan Verbindungen unterbrochen. hier werden alle Netzwerkverbindungen neugesta$
              ##  echo "$(date +%Y-%m-%d:%T) :Netzwerkverbindungen neu starten" | tee -a $LOGFILE
              ## /etc/init.d/networking restart
      
              sleep 12
              /usr/sbin/vpnc $Client.conf
      
              ip route del default
              ip route add default via $LocalGateway dev $DeviceLocal
              ip route add $RemoteNet  dev $DeviceVPN
      
              wan=$(curl ipinfo.io/ip)
              pid=$(pidof vpnc)
              ip=$(ip a s $DeviceVPN  | grep "inet " | cut -b 10-23)
              echo "$(date +%Y-%m-%d:%T) :VPN OK IP $ip WAN $wan PID $pid" | tee -a $LOGFILE
      fi</name> 
      

      Damit es auch ausfürhrbar ist:

      chmod +x /etc/init.d/auto-<meinevpn>-vpn.sh</meinevpn> 
      

      Und rein in den Cron:

      nano /etc/crontab
      
      
      */3 * * * * root sh /etc/init.d/auto-<meinevpn>-vpn.sh >/dev/null 2>&1</meinevpn> 
      

      Da kann man noch viel verbessern, ich bin noch lange kein Linux Spezi. Aber es funktioniert einwandfrei. Auch die Zwangstrennung der eigenen und Remote Anbindung wird problemlos wieder hergestellt.

      Malc

      1 Reply Last reply Reply Quote 0
      • First post
        Last post

      Support us

      ioBroker
      Community Adapters
      Donate
      FAQ Cloud / IOT
      HowTo: Node.js-Update
      HowTo: Backup/Restore
      Downloads
      BLOG

      435
      Online

      31.9k
      Users

      80.2k
      Topics

      1.3m
      Posts

      1
      1
      590
      Loading More Posts
      • Oldest to Newest
      • Newest to Oldest
      • Most Votes
      Reply
      • Reply as topic
      Log in to reply
      Community
      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
      The ioBroker Community 2014-2023
      logo