ProtonVPNProtonVPN est un fournisseur de VPN (Virtual Private Network ou « réseau privé virtuel ») exploité par la société suisse ProtonVPN AG, une filiale de Proton Technologies AG, la société à l’origine du service de messagerie ProtonMail. Sans rentrer dans les détails de la législation suisse, ProtonMail et ProtonVPN intéresseront particulièrement tous ceux pour qui la confidentialité ce n’est pas simplement un truc de vieux con. Sans compter les activistes, journalistes et autres lanceurs d’alerte pour qui ça craint carrément de laisser des traces lorsqu’ils se connectent à Internet et qu’Internet se connecte à eux en retour. Bref.

Voici donc un petit article qui explique rapidement comment installer, configurer et utiliser ProtonVPN sous Linux. J’ai installé ça sur ma station de travail et mon vieux MacBook Pro tournant sous OpenSUSE Linux 15.2, et ça fonctionne plutôt bien.

Choix de la formule

Après avoir ouvert un compte sur le site de ProtonVPN, je me suis retrouvé confronté à une panoplie de quatre formules. Pour commencer, j’ai opté pour la formule Basic.

ProtonVPN

InfoRien ne vous empêche d’essayer ProtonVPN avec la formule Free. Dans ce cas, le nombre d’installations du client ProtonVPN n’est pas limité. En revanche, vous pourrez seulement en connecter un à la fois, et les possibilités sont forcément limitées.

Installation

Dans sa documentation en ligne, ProtonVPN dresse la liste des prérequis logiciels pour faire fonctionner le client de connexion, notamment les paquets suivants.

  • openvpn
  • dialog
  • python3-pip
  • python3-setuptools

Ces paquets sont tous déjà compris dans la configuration par défaut d’OpenSUSE Leap 15.2.

# rpm -q openvpn dialog python wget
openvpn-2.4.3-lp152.5.8.x86_64
dialog-1.3-lp152.4.6.x86_64
python3-pip-10.0.1-lp152.4.3.1.noarch
python3-setuptools-40.5.0-lp152.2.3.noarch

Vu que les prérequis sont satisfaits, je peux lancer l’installation du client.

# pip3 install protonvpn-cli

InfoL’installation se termine sur un avertissement quant à la version de pip. You are are using pip version 10.0.1, however version 20.3b1 is available. Vous pouvez sereinement ignorer cet avertissement.

Au terme de l’installation, on se retrouve avec un exécutable /usr/bin/protonvpn.

# which protonvpn
/usr/bin/protonvpn
# file /usr/bin/protonvpn
/usr/bin/protonvpn: Python script, ASCII text executable

Configuration

Je me rends sur la page Compte pour avoir mon identifiant de connexion VPN et le mot de passe correspondant sous la main.

ProtonVPN

ImportantNotez bien que l’identifiant de connexion VPN et le mot de passe correspondant ne sont pas ceux que vous utilisez pour vous connecter au site web de ProtonVPN. Il s’agit bien de deux identifiants distincts.

J’initialise le profil ProtonVPN sur ma machine. Sur la page du compte, repérez les deux boutons qui servent respectivement à copier l’identifiant et le mot de passe dans le presse-papier.

# protonvpn init
               [ -- PROTONVPN-CLI INIT -- ]
                                    
ProtonVPN uses two different sets of credentials, one for the website and 
official apps where the username is most likely your e-mail, and one for 
connecting to the VPN servers.

You can find the OpenVPN credentials at https://account.protonvpn.com/account.

--- Please make sure to use the OpenVPN credentials ---

Enter your ProtonVPN OpenVPN username: lKgP4Yatah0ngagaPMpRed
Enter your ProtonVPN OpenVPN password: **********************
Confirm your ProtonVPN OpenVPN password: **********************

La prochaine étape consiste à renseigner la formule choisie.

Please choose your ProtonVPN Plan
1) Free
2) Basic
3) Plus
4) Visionary

Your plan: 2

ProtonVPN peut utiliser les protocoles UDP ou TCP. Dans le doute, optez pour UDP.

Choose the default OpenVPN protocol.
OpenVPN can act on two different protocols: UDP and TCP.
UDP is preferred for speed but might be blocked in some networks.
TCP is not as fast but a lot harder to block.
Input your preferred protocol. (Default: UDP)

1) UDP
2) TCP

Your choice: 1

La procédure d’initialisation affiche un récapitulatif, et il suffit de confirmer.

You entered the following information:
Username: lKgP4Yatah0ngagaPMpRed
Password: **********************
Tier: Basic
Default protocol: UDP

Is this information correct? [Y/n]: y
Writing configuration to disk...

Done! Your account has been successfully initialized.

Connexion

À partir de là, je peux utiliser le client protonvpn pour me connecter.

# protonvpn connect

J’ai le choix entre une panoplie de serveurs un peu partout dans le monde.

ProtonVPN

L’écran subséquent présente la liste des serveurs du pays par ordre croissant de saturation.

ProtonVPN

Là encore, optez pour UDP dans le doute.

ProtonVPN

Si tout s’est bien passé, la console m’affiche le message suivant.

Connecting to AT#6 via UDP...
Connected!

Pour en savoir plus, je peux invoquer l’option status.

# protonvpn status
Status:       Connected
Time:         0:00:07
IP:           185.244.212.220
Server:       AT#6
Features:     Normal
Protocol:     UDP
Kill Switch:  Disabled
Country:      Austria
City:         Vienna
Load:         5%
Received:     14.84 KB
Sent:         5.81 KB

Les fonctionnalités utiles au quotidien

Le client protonvpn comporte une multitude d’options.

# protonvpn --help

ProtonVPN

On ne va faire le tour complet de toutes les possibilités. Voici une poignée d’options que l’on utilisera au quotidien.

Déconnecter la machine du serveur ProtonVPN :

# protonvpn disconnect
Disconnected.

Connecter la machine en utilisant automatiquement le serveur le plus rapide :

# protonvpn connect --fastest
Connecting to FR#41 via UDP...
Connected!

Les options courantes offrent toutes une forme abrégée. La dernière commande aurait donc pu être invoquée comme ceci :

# protonvpn c -f
Connecting to FR#41 via UDP...
Connected!

Et de même pour la déconnexion :

# protonvpn d
Disconnected.

Gérer les mises à jour

La mise à jour de cette version du client ne se fait pas par le biais d’une option. Voici ce qu’il faudra faire dorénavant.

# pip3 install protonvpn-cli --upgrade

La rédaction de cette documentation demande du temps et des quantités significatives de café espresso. Vous appréciez ce blog ? Offrez un café au rédacteur en cliquant sur la tasse.

 


3 commentaires

Nicolas · 9 avril 2021 à 19 h 33 min

Merci. Bon, il me manque juste une application qui m’évite de passer par la console. Sympa en tout cas.

NetizenZ · 14 février 2022 à 2 h 45 min

Hello,

Bon tutoriel ! cependant, pour moi aujourd’hui ça ne fonctionne pas.
Voici mon erreur :
« pseudo@Host-009:~/.local/bin> sudo /home/pseudo/.local/bin/protonvpn init
pseudo@Host-009:~/.local/bin> sudo /home/pseudo/.local/bin/protonvpn init
Traceback (most recent call last):
File « /home/pseudo/.local/bin/protonvpn », line 5, in
from protonvpn_cli.cli import main
ModuleNotFoundError: No module named ‘protonvpn_cli’
pseudo@Host-009:~/.local/bin>
 »

ça fonctionne toujours chez vous ? L’erreur vous parle ?

Merci !

    kikinovak · 14 février 2022 à 7 h 42 min

    J’ai résilié mon abonnement ProtonVPN il y a un an, et je ne l’utilise plus depuis.

Les commentaires sont fermés.