====== Serveur VPN ======
On se basera sur le paquet [[https://openvpn.net|OpenVPN]], aidé par le script [[https://github.com/Chocobozzz/OpenVPN-Admin/|OpenVPN-Admin]], en suivant la doc de [[https://sanspseudofix.fr/openvpn-admin-0.3.0-est-sorti-couvert-bien-sur/|SPF]].
====== Installation ======
On commence par installer les dépendances :
apt-get install openvpn apache2 php5-mysql mysql-server php5 nodejs unzip git wget sed npm
npm install -g bower
ln -s /usr/bin/nodejs /usr/bin/node
On se met dans le dossier de travail, et on clone/installe :
cd ~/git-clones
git clone https://github.com/Chocobozzz/OpenVPN-Admin openvpn-admin
cd openvpn-admin
#./install.sh www_base_dir web_user web_group
./install.sh /var/www/html www-data www-data
On démarre le serveur après avoir suivi l'installation basique :
systemctl start openvpn@server
On installe le paquet ''iptables-persistent'' pour la persistence des règles iptables :
apt-get install iptables-persistent
Bien vérifier la ligne de configuration de l’hôte Apache (ici ''/var/www/html/openvpn-admin'') :
DocumentRoot /var/www/html/openvpn-admin
Finaliser l'installation en se rendant sur [[http:///index.php?installation]] pour créer votre premier administrateur et profil utilisateur.
====== Mise à jour ======
On se place dans le dossier du clone GIT et on lance l'update :
#dossier ~/git-clones/openvpn-admin vu à l'installation,
cd ~/git-clones/openvpn-admin
git pull origin master
#idem, dossier d'installation vu plus haut,
sudo ./update.sh /var/www/html
====== Désinstallation ======
Toujours dans le dossier du clone GIT :
cd ~/git-clones/openvpn-admin
sudo ./desinstall.sh /var/www/html
====== Outils de test VPN ======
Outils de test et détection ''DNS Leak'' ([[https://en.wikipedia.org/wiki/DNS_leak]]) :
* [[http://dnsleak.com]],
* [[https://www.dnsleaktest.com]],
* [[https://ipleak.net]].
====== Alternatives ======
Appliance OpenVPN officielle pour VMWare et Microsoft : https://openvpn.net/index.php/access-server/download-openvpn-as-vm.html
===== Server =====
* [[https://www.pulsesecure.net]],
* [[https://pritunl.com]],
* [[https://lowendbox.com/blog/install-openconnect-server-on-ubuntu-16-04/]],
==== Client ====
* [[https://client.pritunl.com]],
* [[http://freelan.org]],
* [[https://sourceforge.net/projects/oast/]],
* [[https://www.sparklabs.com/viscosity]] (payant, mais vaut ses €),
====== Documentation Supplémentaire ======
Installation détaillée :
* https://blog.nicolargo.com/2010/10/installation-dun-serveur-openvpn-sous-debianubuntu.html
* https://www.digitalocean.com/community/tutorials/how-to-set-up-an-openvpn-server-on-debian-8
* https://guillaume.vaillant.me/?p=507
Utilisations OpenVPN :
* https://www.tech2tech.fr/openvpn-point-to-point/
* https://www.tech2tech.fr/open-vpn-pki/
* https://www.tech2tech.fr/openvpn-roadwarrior/
Par Docker :
* https://blog.adminrezo.fr/2016/12/creer-un-serveur-openvpn-en-5-minutes-grace-a-docker/
Un pfSense comme client OpenVPN pour diriger tout son trafic local vers un serveur OpenVPN distant :
* https://www.sheldon.fr/2015/07/poc-un-vpn-facile-a-utiliser/
Une installation rapide, via OpenVPN Access Server (avec bonus proxy) :
* http://blog.dahanne.net/2014/05/23/utiliser-un-vps-pour-heberger-un-serveur-openvpn-et-un-serveur-proxy/
Un autre script d'auto-install :
* https://github.com/Nyr/openvpn-install
Documentation avancée :
* https://shaarli.guiguishow.info/?nIcWYg
* https://community.openvpn.net/openvpn/wiki/Hardening
* http://blog.dornea.nu/2015/11/17/openvpn-for-paranoids/
Accélération matérielle avec AES :
* https://www.sheldon.fr/2015/07/activer-lacceleration-materielle-aes-pour-son-vpn/
Démultiplier les instances OpenVPN sur la même machine :
* https://www.it-connect.fr/creer-plusieurs-instances-dopenvpn-sur-un-meme-serveur/
Ajouter Google-auth avec OpenVPN sur un Edgerouter :
* https://community.ubnt.com/t5/EdgeMAX/Secure-OpenVPN-server-setup-with-multi-factor-authentication/td-p/1240405
Utiliser le firewall de ESET Nod32 pour autoriser ou non certaines applications suivant l'état de la connexion VPN :
* http://web.archive.org/web/20170113063849/https://www.vpnblog.net/tutoriel-configurer-pare-feu-eset-contre-deconnexions-vpn/
IP dynamique :
* https://www.reddit.com/r/selfhosted/comments/5mgcjj/tutorial_a_solution_to_dynamic_ip_addresses_using/
====== Bonus ======
* [[https://github.com/furlongm/openvpn-monitor|OpenVPN-Monitor]] is a web based OpenVPN monitor, that shows current connection information, such as users, location and data transferred : http://openvpn-monitor.openbytes.ie