Table des matières
OpenVPN
Demander vos Certificats ( fichier .crt et .key et les mettre dans /etc/openvpn/keys )
Installation des paquets necessaires
ipkg update ipkg install http://downloads.openwrt.org/whiterussian/packages/liblzo_2.02-1_mipsel.ipk ipkg install openvpn
- Le dépendances : kmod-tun liblzo et libopenssl
sont installées automatiquement en même temps.
- Creer le réperoitre :
mkdir /etc/openvpn
- Vérifier si le module TUN est installé avec :
ipkg status kmod-tun
- Est-ce que le module TUN est bien chargé ?
insmod /lib/modules/*/tun.o insmod tun
- Activer le routage IP :
echo 1 > /proc/sys/net/ipv4/ip_forward
Configuration
/etc/openvpn/server.conf
( seulement pour le serveur , donc moi :) )
mode server port 5000 proto udp dev tap comp-lzo verb 3 tls-server client-to-client mssfix cipher BF-CBC keepalive 10 120 ca /etc/openvpn/keys/ca.crt cert /etc/openvpn/keys/rw-vpn-server.crt key /etc/openvpn/keys/rw-vpn-server.key dh /etc/openvpn/keys/dh1024.pem persist-key persist-tun server 172.76.0.0 255.255.0.0 client-config-dir /etc/openvpn/ccd ccd-exclusive
/etc/openvpn/client.conf
Pour tout le monde qui souhaite rejoindre le VPN
client remote vpn.rouen-wireless.net 5000 resolv-retry infinite proto udp dev tap comp-lzo verb 3 tls-client nobind mssfix cipher BF-CBC keepalive 10 120 ns-cert-type server ca /etc/openvpn/keys/ca.crt cert /etc/openvpn/keys/node2.crt key /etc/openvpn/keys/node2.key persist-key persist-tun
Pare feu ( /etc/local.fw )
Pour autoriser le Traffic VPN
# Place your firewall addons here
case $1 in
start)
iptables -I OUTPUT -o tap0 -j ACCEPT
iptables -I INPUT -i tap0 -j ACCEPT
iptables -I FORWARD -o tap0 -j ACCEPT
iptables -I FORWARD -i tap0 -j ACCEPT
;;
stop)
iptables -D OUTPUT -o tap0 -j ACCEPT
iptables -D INPUT -i tap0 -j ACCEPT
iptables -D FORWARD -o tap0 -j ACCEPT
iptables -D FORWARD -i tap0 -j ACCEPT
;;
esac
OLSR ( /etc/local.olsrd.conf )
Pour Router par OLSR le traffic VPN
# Add your addons (e.g. plugins) to olsrd.conf here,
# addons for interfaces in /etc/local.olsrd.conf.eth1
Interface "tap0"
{
HelloInterval 5.0
HelloValidityTime 90.0
TcInterval 2.0
TcValidityTime 270.0
MidInterval 15.0
MidValidityTime 90.0
HnaInterval 15.0
HnaValidityTime 90.0
Ip4Broadcast 172.76.255.255
# LinkQualityMult 172.76.0.1 0.4
}
Script de démmarrage auto : /etc/init.d/S46openvpn
#!/bin/sh
case "$1" in
start)
openvpn --daemon --config /etc/openvpn/client.conf
;;
restart)
$0 stop
sleep 3
$0 start
;;
reload)
killall -SIGHUP openvpn
;;
stop)
killall openvpn
;;
esac
TEST
vous pouvez lancer le client openvpn par :
openvpn /etc/openvpn/client.conf
vous verrez defiler plein de ligne et vous verez a la fin si ca fonctionne.
Pour retourner au shell, faites Ctrl C
statistiques
- nvram set ff_stat_gateway1=tap0
- nvram set ff_stat_gateway2=tun0
- nvram commit
Sources
OLSR + OPENVPN