Nodes
- gru3 roof on the 5th floor
- gru3ost base fallback tunnel kryptavpn
Servers
Hardware
- WRAP Wireless Router Application Platform
Software
Docs
OpenVPN tunnel
leider ließ sich http://ipkg.funkfeuer.at/ipkg/1.7/0xff-openvpn-webif_1.7.1_mipsel.ipk nicht installieren
ipkg remove tcpdump
ipkg remove freifunk-tcpdump
ipkg install freifunk-tcpdump
root@gru3ost:~# cat /etc/init.d/S42openvpn
- !/bin/sh -e
DAEMON=/usr/sbin/openvpn
CONFIG_DIR=/var/etc/openvpn
VPN_IF=tap0
test -x $DAEMON || exit 0
test -d $CONFIG_DIR || mkdir $CONFIG_DIR
start_vpn () {
ff_openvpn_active="$(nvram get ff_openvpn_active)"
ff_openvpn_host="$(nvram get ff_openvpn_host)"
ff_openvpn_proto="$(nvram get ff_openvpn_proto)"
ff_openvpn_port="$(nvram get ff_openvpn_port)"
ff_openvpn_secret="$(nvram get ff_openvpn_secret)"
ff_openvpn_ip="$(nvram get ff_openvpn_ip)"
ff_openvpn_netmask="$(nvram get ff_openvpn_netmask)"
ff_openvpn_noolsr="$(nvram get ff_openvpn_noolsr)"
if [ ! "$ff_openvpn_active" = "1" ]; then
echo -n " OpenVPN not activated"
echo
exit 0
fi
test -z "$ff_openvpn_host" && exit 0
test -z "$ff_openvpn_port" && exit 0
test -z "$ff_openvpn_ip" && exit 0
test -z "$ff_openvpn_netmask" && exit 0
- create OpenVPN config
cat>$CONFIG_DIR/$VPN_IF.conf<<EOM
dev $VPN_IF
proto $ff_openvpn_proto
remote $ff_openvpn_host
port $ff_openvpn_port
ifconfig $ff_openvpn_ip $ff_openvpn_netmask
route-up /etc/openvpn/openvpn-webif-route-up.sh
up /etc/openvpn/openvpn-webif-if-up.sh
down /etc/openvpn/openvpn-webif-if-down.sh
up-restart
comp-lzo
script-security 2
verb 3
EOM
if [ "$ff_openvpn_secret" = "1" ] && [ -f /etc/openvpn/$VPN_IF.secret ]; then
cat>>$CONFIG_DIR/$VPN_IF.conf<<EOM
secret /etc/openvpn/$VPN_IF.secret"
auth sha1
cipher none
EOM
fi
- create OLSRd config
if [ "$ff_openvpn_noolsr" = "1" ]; then
echo > /tmp/etc/local.olsrd.conf-openvpn
else
ff_ip4broad=$(nvram get ff_ip4broad)
test -n "$ff_ip4broad" && ff_ip4broad="Ip4Broadcast $(nvram get ff_ip4broad)"
ff_openvpn_lq="$(nvram get ff_openvpn_lq)"
test -n "$ff_openvpn_lq" && ff_lqmult="LinkQualityMult default $ff_openvpn_lq"
SPEED=$(nvram get ff_olsrspeed)
test -z "$SPEED" && SPEED=5
if [ "0" != "$(nvram get ff_fisheye)" ];then
TCINT=$(( 2 * SPEED / 3 ))
else
TCINT=$(( 2 * SPEED ))
fi
cat>/tmp/etc/local.olsrd.conf-openvpn<<EOM
- this file is automatically generated by openvpn-webif,
- to define your own settings use /etc/local.olsrd.conf
Interface "$VPN_IF"
{
HelloInterval $(( 1 * SPEED )).0
HelloValidityTime $(( 25 * SPEED )).0
TcInterval $TCINT.0
TcValidityTime $(( 75 * SPEED )).0
MidInterval $(( 5 * SPEED )).0
MidValidityTime $(( 75 * SPEED )).0
HnaInterval $(( 5 * SPEED )).0
HnaValidityTime $(( 75 * SPEED )).0
$ff_ip4broad
$ff_lqmult
}
EOM
fi
$DAEMON --daemon --writepid /var/run/openvpn.$VPN_IF.pid --config $CONFIG_DI
R/$VPN_IF.conf --cd $CONFIG_DIR || echo -n " FAILED->"
echo -n " $VPN_IF"
}
stop_vpn () {
kill `cat /var/run/openvpn.$VPN_IF.pid` || true
rm /var/run/openvpn.$VPN_IF.pid
}
case "$1" in
start)
echo -n "Starting openvpn:"
start_vpn
echo "."
;;
stop)
echo -n "Stopping openvpn:"
if test -e /var/run/openvpn.$VPN_IF.pid ; then
stop_vpn
echo -n " $VPN_IF"
else
echo -n " not running: $VPN_IF"
fi
echo "."
;;
restart)
$0 stop
sleep 1
$0 start
;;
echo "Usage: $0 {start|stop|restart}" >&2
exit 1
;;
esac
exit 0
Misc