Installation d'openvpn - 2.1.4-2
ipkg update ipkg install openvpn
vi /opt/etc/init.d/S20openvpn
#!/bin/sh # # Startup script for openvpn server #
# Make sure IP forwarding is enabled echo 1 > /proc/sys/net/ipv4/ip_forward
# Make device if not present (not devfs) if ( [ ! -c /dev/net/tun ] ) then # Make /dev/net directory if needed if ( [ ! -d /dev/net ] ) then mkdir -m 755 /dev/net fi mknod /dev/net/tun c 10 200 fi
# Make sure the tunnel driver is loaded if ( !(lsmod | grep -q "^tun") ); then insmod /lib/modules/tun.ko fi
# If you want a standalone server (not xinetd), then comment out the return statement below return 0
## This is for standalone servers only!!!! # Kill old server if still there if [ -n "`/opt/bin/pidof openvpn`" ]; then /opt/bin/killall openvpn 2>/dev/null fi
# Start the openvpn daemon - add as many daemons as you want #/opt/sbin/openvpn --daemon --cd /opt/etc/openvpn --config openvpn.conf /opt/sbin/openvpn --cd /opt/etc/openvpn --daemon --log-append /var/log/openvpn.log --config /opt/etc/openvpn/config/server.ovpn # [EOF]
Verifier le bon fonctionnement
insmod /lib/modules/tun.ko (charge le module tun)
dmesg | grep tun (verifier s'il n'y a pas d'erreur)
OpenVPN s'installe là :
/opt/etc/openvpn /opt/etc/xinetd.d/openvpn /opt/sbin/openvpn /opt/var/log/openvpn
Génération du certificat
Télécharger et extraire openvpn
Copier easy-rsa folder sous /opt/etc/openvpn/easy-rsa
Déplacer le contenu de /opt/etc/openvpn/easy-rsa/2.0 à la racine de easy-rsa
vi /opt/etc/openvpn/easy-rsa/vars
export KEY_CONFIG=/opt/etc/openvpn/easy-rsa/openssl.cnf export KEY_DIR=/opt/etc/openvpn/private.lan/keys export KEY_COUNTRY=FR export KEY_PROVINCE=NA export KEY_CITY=city export KEY_ORG=”company” export KEY_EMAIL=”emailaddress”
ln -s /opt/bin/bash /bin/bash (installer bash 3.2 si besoin) bash . vars ./clean-all
Certificate Authority
./build-ca
2048
Sign the certificate? [y/n]:y 1 out of 1 certificate requests certified, commit? [y/n]y
Server key
./build-key-server server
Sign the certificate? [y/n]:y 1 out of 1 certificate requests certified, commit? [y/n]y
Client key
./build-key macbook
Sign the certificate? [y/n]:y 1 out of 1 certificate requests certified, commit? [y/n]y
Diffie Hellman parameters
./build-dh
En utilisant tls-auth requires, vous devez générer une clé partagée en plus du certificate/key RSA:
openvpn --genkey --secret ta.key
Copier les fichiers sur le serveur:
cp /opt/etc/openvpn/easy-rsa/keys/ca.crt /opt/etc/openvpn/config/ cp /opt/etc/openvpn/easy-rsa/keys/dh2048.pem /opt/etc/openvpn/config/ cp /opt/etc/openvpn/easy-rsa/keys/server.crt /opt/etc/openvpn/config/ cp /opt/etc/openvpn/easy-rsa/keys/server.key /opt/etc/openvpn/config/ cp /opt/etc/openvpn/easy-rsa/keys/ta.key /opt/etc/openvpn/config/
server.ovpn
port 1194 proto tcp dev tun ca /opt/etc/openvpn/config/ca.crt cert /opt/etc/openvpn/config/server.crt key /opt/etc/openvpn/config/server.key # This file should be kept secret dh /opt/etc/openvpn/config/dh2048.pem server 10.66.11.0 255.255.255.0 push "route 10.66.10.0 255.255.255.0" keepalive 10 120 tls-auth /opt/etc/openvpn/config/ta.key 0 # This file is secret cipher BF-CBC # Blowfish (default) comp-lzo persist-key persist-tun status openvpn-status.log #verb 5 verb 4
Configuration du client
Windows
Télécharger et installer OpenVPN GUI pour windows.
Copier les fichiers sur le client C:\Program Files\OpenVPN\config
ca.crt macbook.crt macbook.key ta.key
Ajouter client.ovpn dans le repertoire config :
client dev tun proto tcp remote www.myhost.fr 1194 resolv-retry infinite nobind persist-key persist-tun ca ca.crt cert macbookxp.crt key macbooxp.key ns-cert-type server tls-auth ta.key 1 comp-lzo verb 3
Ubuntu
sudo apt-get install network-manager-openvpn ... Les paquets supplémentaires suivants seront installés : liblzo2-2 libpkcs11-helper1 network-manager-openvpn-gnome openssl-blacklist openvpn openvpn-blacklist
Aller dans le menu "Système" > "Préférences" > "Connexions réseau" puis onglet VPN:
Choisir OpenVPN comme type de connexion.
Renseigner la passerelle : IP public ou nom de domaine qui pointe vers votre NAS.
Puis copier et sélectionner vos certificats et clé.
Puis dans avancées > Authentification TLS:
sélectionner : Utiliser une authentification supplémentaire
fichier de clé : ta.key
Direction de la clé : 1
Si vous rencontrez un message d'erreur coté client "pas de secrets VPN valides...", il faut relancer le service network-manager
sudo service network-manager restart
MacOS
Télécharger et installer Tunnelblick. Pour la suite, vous devez ajouter vos clé et certificats.
Testé sur le NAS synology DS 411+
|