Utiliser protonvpn simplement sous linux .

Valable pour toute .conf openvpn

Sommaire

Pré-requis

Un abonnement à ProtonVPN Une machine sous Debian 8 ou Fedora 25 (mais toute Linux pas trop exotique devrait faire l’affaire)

Objectif

Je vous propose un papier résumant en une page les étapes nécessaires pour utiliser Protonvpn simplement. C’est à dire afin qu’il se lance au démarrage sans intervention de l’utilisateur, et qu’en cas de crash, le service se relance seul.

Edit du 29 octobre 2017: Attention au moment de rédiger cet article je ne mettais pas rendu compte que Protonvpn ne fonctionnait qu’en ipv4. Pour éviter une fuite de votre ip si vous surfez en ipv6 (et en attendant que Protonvpn se mettent à supporter ce protocole), il faut le désactiver de votre interface réseau. Vous pouvez le faire de deux manières, soi en désactivant l’ipv6 à l’aide de votre menu de configuration réseau, soi en ligne de commande.

Installation d’Openvpn

~$ dnf install openvpn #fedora
~$ apt install openvpn #debian

Il faut ensuite récupérer l’archive des fichiers de conf sur le site de Protonvpn, créer un dossier Protonvpn sur votre pc, y décompresser tout ça, puis se rendre dans ce dossier.

~$ wget https://protonvpn.com/support/wp-content/uploads/2017/06/ProtonVPN_config_linux.zip
~$ mkdir protonvpn
~$ unzip ProtonVPN_config_linux.zip -d protonvpn
~$ cd protonvpn

Ces fichiers sont également téléchargeables sur le site de protonvpn. Il vous est aussi possible de choisir entre UDP et TCP (UDP passe difficilement les par-feux d’une entreprise…). De plus si vous avez souscrit un abonnement, vous aurez aussi accès aux configurations appelées “secure mode”. D’après proton cela apporte une sécurité supplémentaire puisque dans ce cas votre connexion vpn passe par deux serveurs (home > suède > france).

OpenVPN utilise les fichiers en .conf qu’on dépose dans /etc/openvpn, on va en profiter.

~$ mv fr-01.protonvpn.com.udp1194.ovpn /etc/openvpn/fr-01.protonvpn.com.udp1194.conf

Choississez le fichier de .ovpn que vous souhaitez, et adapter les commandes en fonction.

Il faut ensuite créer un fichier texte, renseignant le login et le mot de passe fourni par Protonvpn, fichier texte qu’on va ensuite protéger des yeux des utilisateurs normaux, et dont on indiquera la localisation à Openvpn.

~$ nano /etc/openvpn/auth.txt
login
mot-de-passe
~$ chmod 600 /etc/openvpn/auth.txt
~$ nano /etc/openvpn/fr-01.protonvpn.com.udp1194.conf
      client
      dev tun
      proto tcp

      remote 185.159.156.15 443

      remote-random
      resolv-retry infinite

      nobind
      auth-user-pass /etc/openvpn/auth.txt
      cipher AES-256-CBC
      auth SHA512
      comp-lzo
      verb 3

      tun-mtu 1500
      tun-mtu-extra 32
      mssfix 1450
      persist-key
      persist-tun

      ping 15
      ping-restart 0
      ping-timer-rem
      reneg-sec 0

      remote-cert-tls server
      auth-user-pass /etc/openvpn/auth.txt
      pull
      fast-io

Sous fedora il faudra commenter ces trois lignes sous peine d’échec

      script-security 2
      up /etc/openvpn/update-resolv-conf
      down /etc/openvpn/update-resolv-conf

On active le service, on le lance et on teste

~$ systemctl enable openvpn@fr-01.protonvpn.com.udp1194
~$ systemctl start openvpn@fr-01.protonvpn.com.udp1194
~$ systemctl status openvpn@fr-01.protonvpn.com.udp1194

On termine en configurant la relance du service en cas de crash

~$ systemctl edit --full openvpn@fr-01.protonvpn.com.udp1194.service

    [Unit]
    Description=OpenVPN Robust And Highly Flexible Tunneling Application On %I
    After=network.target

    [Service]
    Type=notify
    PrivateTmp=true
    ExecStart=/usr/sbin/openvpn --cd /etc/openvpn/ --config %i.conf
    Restart=always
    RestartSec=30

    [Install]
    WantedBy=multi-user.target
~$ systemctl daemon-reload

Enjoy and have fun.

Source

https://homputersecurity.com/2017/06/21/les-createurs-de-protonmail-lancent-prontonvpn/
https://askubuntu.com/questions/763583/correct-way-of-systemd-for-openvpn-client-on-16-04-server