Hallo,
ich brauche eure Hilfe.
Ich habe mir einen VPN Account bei NordVpn eingerichtet und auf der dm920 openvpn 2.3.8-r0.2 vom feed installiert.
Dann habe ich zig Threads zu openvpn gelesen und wie in einigen Threads beschrieben, die *.ovpn datei in openvpn.conf umbenannt und wie beschrieben noch eine weitere datei login.txt mit usernamen und pw angelegt.
Per telnet konnte ich dann openvpn mit "openvpn --config /etc/openvpn/openvpn.conf" auch starten und es läuft auch soweit, jedoch ist das Terminal belegt und nur durch ESC C bekommt man wieder einen Prompt, jedoch ist dann auch openvpn gestoppt.
Der nächste Versuch war dann mit userscripten von @gutemine. Da ich wirklich kein "advanced user" bin sondern Laie, habe ich das mitgelieferte Beispiel für dccam sehr notdürftig (und wahrscheinlich komplett daneben) umgeschrieben, um den Start und Autostart von openvpn zu ermöglichen.
Mit telnet traceroute 1.1.1.1 habe ich dann kontrolliert, ob das vpn funktioniert. Ich denke ja. Traceroute logs habe ich beigefügt.
Lange Vorrede, nun meine konkreten Fragen:
1) zeigen die traceroute-logs, dass das vpn korrekt funktioniert??
2) gibt es ein script, dass z.B. alle 10 Minuten kontrolliert, ob das VPN läuft und ggfs. dann neustartet??
3) Kann man das "notdürftig" angepasste userscript noch "verschönern" bzw. Fehler entfernen?
Vielen Dank für eure Hilfe.
VG, rako123
Traceroute output
root@dm920:~#
VPN IST ANGESCHALTET!!!
root@dm920:~# traceroute 1.1.1.1
traceroute to 1.1.1.1 (1.1.1.1), 30 hops max, 38 byte packets
1 gateway (10.10.10.1) 0.319 ms 0.278 ms 0.257 ms
2 * * *
3 * * *
4 * * *
5 * * *
6 * * *
7 * * *
8 * * *
9 1dot1dot1dot1.cloudflare-dns.com (1.1.1.1) 39.292 ms 39.799 ms 38.892 ms
root@dm920:~#
VPN IST AUSGESCHALTET
root@dm920:~# traceroute 1.1.1.1
traceroute to 1.1.1.1 (1.1.1.1), 30 hops max, 38 byte packets
1 gateway (10.10.10.1) 0.354 ms 0.435 ms 0.260 ms
2 217.0.119.55 (217.0.119.55) 16.930 ms 16.702 ms 17.123 ms
3 217.0.64.106 (217.0.64.106) 16.673 ms 16.982 ms 16.290 ms
4 217.5.118.34 (217.5.118.34) 22.392 ms 22.254 ms 22.602 ms
5 62.157.249.186 (62.157.249.186) 36.707 ms 36.312 ms 36.482 ms
6 ae-24.r24.frnkge08.de.bb.gin.ntt.net (129.250.3.217) 31.295 ms ae-7.r20.frnkge04.de.bb.gin.ntt.net (129.250.7.54) 39.614 ms ae-24.r24.frnkge08.de.bb.gin.ntt.net (129.250.3.217) 30.630 ms
7 ae-2.r02.frnkge04.de.bb.gin.ntt.net (129.250.5.53) 37.277 ms ae-9.r02.frnkge04.de.bb.gin.ntt.net (129.250.2.142) 36.716 ms ae-2.r02.frnkge04.de.bb.gin.ntt.net (129.250.5.53) 37.404 ms
8 213.198.81.142 (213.198.81.142) 37.124 ms 36.569 ms 36.484 ms
9 1dot1dot1dot1.cloudflare-dns.com (1.1.1.1) 39.018 ms 38.801 ms 39.241 ms
root@dm920:~#
Userscript zum Starten von openvpn (bitte nicht Lachen )
#!/bin/sh
SERVICENAME="openvpn"
BIN=openvpn
LINE="--------------------------------------"
INFOFILE="openvpn.info"
SCRIPT="openvpn-3.sh"
# end
remove_tmp () {
rm -rf /tmp/script.info /tmp/$INFOFILE
}
case "$1" in
start)
if [ -f /tmp/script.info ]; then
RUNNING_SCRIPT=`cat /tmp/script.info`
else
RUNNING_SCRIPT=$SCRIPT
fi
/usr/script/$RUNNING_SCRIPT stop
sleep 2
echo $LINE
echo "[SCRIPT] $1: $SERVICENAME"
echo $LINE
remove_tmp
echo $SCRIPT > /tmp/script.info
echo $SERVICENAME > /tmp/openvpn.info
systemctl start $SERVICENAME.service
;;
stop)
echo $LINE
echo "[SCRIPT] $1: $SERVICENAME"
echo $LINE
systemctl stop $SERVICENAME.service
sleep 2
remove_tmp
;;
restart)
echo $LINE
echo "[SCRIPT] $1: $SERVICENAME"
echo $LINE
systemctl stop $SERVICENAME.service
sleep 2
remove_tmp
sleep 5
echo $SCRIPT > /tmp/script.info
echo $SERVICENAME > /tmp/openvpn.info
systemctl start $SERVICENAME.socket
;;
info)
echo $LINE
echo "[SCRIPT] $1: $SERVICENAME"
echo $LINE
if [ -f /tmp/openvpn.info ]; then
RUNNING_CAM=`cat /tmp/openvpn.info`
else
RUNNING_CAM="VPN not started"
fi
echo -n "$RUNNING_CAM is started "
if [ `ps ax | grep $BIN | grep -v grep | grep -v $0 | wc -l` -gt 0 ]; then
echo "and running"
echo $LINE
ps ax | grep $BIN | grep -v grep | grep -v $0
else
echo "and not running"
fi
echo $LINE
systemctl status $SERVICENAME.service
echo $LINE
if [ -e /etc/systemd/system/multi-user.target.wants/$SERVICENAME.service ]; then
echo "autostart of $SERVICENAME is enabled"
echo $LINE
else
echo "autostart of $SERVICENAME is disabled"
echo $LINE
fi
if [ -f /tmp/ecm.info ]; then
echo "Info File"
echo $LINE
cat /tmp/$INFOFILE
echo $LINE
fi
;;
autostart | enable)
echo $LINE
echo "[SCRIPT] $1: $SERVICENAME"
echo $LINE
rm /etc/systemd/system/multi-user.target.wants/$SERVICENAME.service > /dev/null 2>&1
ln -sfn /usr/script/$SERVICENAME.service /etc/systemd/system/multi-user.target.wants/$SERVICENAME.service
rm /lib/systemd/system/$SERVICENAME.service > /dev/null 2>&1
ln -sfn /usr/script/$SERVICENAME.service /lib/systemd/system/$SERVICENAME.service
systemctl daemon-reload
;;
noautostart | disable)
echo $LINE
echo "[SCRIPT] $1: $SERVICENAME"
echo $LINE
rm /etc/systemd/system/multi-user.target.wants/$SERVICENAME.service > /dev/null 2>&1
rm /lib/systemd/system/$SERVICENAME.service > /dev/null 2>&1
systemctl daemon-reload
;;
*)
echo "Usage: $0 start|stop|restart|info|enable|disable"
exit 1
;;
esac
exit 0