VPN Configuration for Download Station
Article Index
1.Introduction
1.2. Préambule
Ce que l'on veut faire dans cette Article:
- Monter un VPN entre le Synology et un point extérieur.
- Monter un firewall sur ce point de sortie.
- Faire un script qui vérifie que le VPN est bien monté.
- Si le VPN est monté, on verifie le Firewall.
- Si le Firewall est présent, on lance si nécessaire Download Station
- Si le Firewall n'est pas présent, on le monte
- Si le VPN n'est pas monté, on coupe DownloadStation, et on essaye de le remonter.
- Si le VPN est monté, on verifie le Firewall.
ce mécanisme est fait via l’intermédiaire d'un script: VPNFirewall.sh qui est lancé régulierement via la crontab
pour pourvoir réaliser cette configuration il faut comprendre plusieurs choses:
- Lorsqu'on monte un Tunnel VPN sur le Synology, tout le traffic sortant est routé dans le VPN
- Par défaut si l'on interroge le Synology sur Eth0, il va donc répondre sur Tun0 (le VPN). le paquet sera donc droppé. plus de détails dans l'article SFTP
1.2. Useful path
Ci dessous les différents chemin dans le Syno qui sont intéressant:
#Config file for VPN
/usr/syno/etc/synovpnclient/
#VPN query binary
/usr/syno/bin/synovpnc
#Cron
/etc/crontab
2. Configuration VPN
il faut créer la connection VPN via l'interface du synology puis si necessaire editer le fichier de configuration pour changer le port de connection et mettre plusieurs serveurs secondaires.
dans mon cas, concernant vpntunnel.com, j'ai du éditer les fichiers pour ces raisons. ci dessous mes fichiers de configuration modifiés.
2.1 fichier ovpn*.conf
Le fichier ci dessous est le fichier de configuration du VPN. c'est le fichier "source".
/usr/syno/etc/synovpnclient/openvpn> cat ovpn_o1300080729.conf [client] dev=tun tls-client=_ON_ remote=jenny.vpntunnel.se 1194 pull=_ON_ proto=udp ca=ca_o1300080729.crt comp-lzo=_ON_ redirect-gateway=_ON_ script-security=2 float=_ON_ reneg-sec=0 explicit-exit-notify=_ON_ plugin=/lib/openvpn/openvpn-down-root.so /usr/syno/etc.defaults/synovpnclient/scripts/ip-down auth-user-pass=/tmp/ovpn_client_up [syno] user=************* pass=***************** nat=yes conf_name=VPNtunnel_SWE reconnect=yes reconnect_times=5
2.2 fichier client
ce fichier est généré à partir du fichier *.conf du meme nom. Attention si vous modifié le fichier *.conf à partir de l'interface syno (et donc sauvegardé via l'interface), le fichier client sera ecrasé. c'est ce fichier qui compte pour les configurations:
/usr/syno/etc/synovpnclient/openvpn> cat client_o1300080729 dev tun
tls-client
remote jenny.vpntunnel.se 7001
remote jenny.vpntunnel.se 7002
remote jenny.vpntunnel.se 7003
pull
proto udp
ca ca_o1300080729.crt
comp-lzo
redirect-gateway
script-security 2
float
reneg-sec 0
explicit-exit-notify
plugin /lib/openvpn/openvpn-down-root.so /usr/syno/etc.defaults/synovpnclient/scripts/ip-down
auth-user-pass /tmp/ovpn_client_up
- Prev
- Next >>