feigned

Installer et configurer un client OpenVPN sur un routeur OpenWrt

  • 05/02/18 : ajout de détails concernant la mise à jour des DNS + ajout des logs.

Vous l’attendiez tous, le voici : le tutoriel pour installer un client OpenVPN sur un routeur équipé du firmware OpenWrt 🤩 ! L’objectif est de chiffrer la totalité des communications entre notre réseau local et Internet via un tunnel VPN sécurisé : nos activités sur Internet seront totalement masquées, notre anonymat respecté.

Auparavant, pour communiquer avec le serveur VPN de votre fournisseur (ExpressVPN, NordVPN, Trust.Zone…) vous deviez installer un client VPN sur chaque appareil de votre réseau local : sur vos PC Windows, sur vos téléphones Android… En installant un client VPN directement sur votre routeur, vous pouvez oublier cette corvée : le client OpenVPN du routeur va se charger de faire passer tout le trafic Internet de tous vos appareils dans le tunnel VPN sécurisé ! 👍 Plus besoin d’installer le programme de votre fournisseur de VPN (qui est un client OpenVPN personnalisé) sur chacun de vos équipements 😎

Vous êtes prêt ? C’est parti ! 🤘

Prérequis

  1. Un routeur (★ TP-Link Archer C7) sur lequel vous avez installé le firmware OpenWrt.
    Routeur TP-Link Archer C7
  2. Un abonnement (★ ExpressVPN) auprès d’un fournisseur de VPN, cf. les meilleurs VPN payants.

Étape 1 : préparer les fichiers de configuration .ovpn

Pour que le client OpenVPN de notre routeur puisse établir un tunnel sécurisé avec le serveur VPN de notre fournisseur, nous avons besoin des fichiers de configuration .ovpn du fournisseur, lesquels contiennent les paramètres nécessaires à la connexion au serveur VPN. Un fichier de configuration .ovpn est spécifique à une localisation. Vous trouverez donc un fichier .ovpn pour chaque localisation : Sweden.ovpn, Netherlands.ovpn…

L’objectif est de récupérer – auprès de votre fournisseur de VPN – les fichiers de configuration .ovpn des localisations qui vous intéressent (Sweden, Netherlands…) et d’y inclure les clés et certificats du fournisseur, généralement fournis séparément.

Quelles localisations choisir ?

L’objectif est de choisir les localisations où se trouvent les serveurs les plus rapides. D’une manière générale, ce sont les serveurs les plus proches géographiquement de vous. Pour connaitre les serveurs les plus rapides, vous pouvez vous aider des services fournis par votre fournisseur de VPN.

Par exemple, Private Internet Access propose une page Web « Speed up » qui référence toute son infrastructure (localisation, nombre de serveurs, bande passante) et qui permet d’effectuer un test de vitesse sur chacun de ses serveurs :

Mieux encore, le programme de bureau (Windows/macOS/Linux) fourni par ExpressVPN permet de tester la vitesse de connexion sur tous les serveurs disponibles et ce, en un clic.

Votre mission est simple : choisir au moins trois localisations parmi les plus rapides ! 😉

Après avoir choisi les localisations les plus rapides, téléchargez le fichier de configuration .ovpn de ces localisations depuis le site Web de votre fournisseur. A titre d’exemple, voici comment faire avec les fournisseurs ExpressVPN et Private Internet Access :

  • ExpressVPN :
    1. expressvpn.com > Mon compte > Installer ExpressVPN > Configuration manuelle.
    2. Copiez l’identifiant et le mot de passe de connexion.
    3. Téléchargez les fichiers de configuration .ovpn des localisations qui vous intéressent.
    4. Pas besoin de télécharger les clés et certificats, ils sont déjà intégrés dans les fichiers de configuration .ovpn.
  • Private Internet Access :
    1. privateinternetaccess.com > Téléchargements et assistance de membre > Guides Avancés D’utilisation OpenVPN SSL (en bas de la page).
    2. Cliquez sur Fichiers de configuration d’OpenVPN (par défaut recommandé) pour télécharger les fichiers de configuration de toutes les localisations disponibles et vos certificats.
    3. Décompressez l’archive openvpn.zip.
    4. Chez Private Internet Access, le certificat (CA) et la liste de révocation de certificats (CRL) ne sont pas inclus dans les fichiers .ovpn, ils sont disponibles dans des fichiers séparés (ca.crt et crl.pem). Nous allons donc copier le contenu des fichiers ca.crt et crl.pem dans les fichiers de configuration .ovpn :
      • Ouvrez le fichier de configuration .ovpn d’une des localisations qui vous intéresse, par exemple Sweden.ovpn (utilisez Notepad++ pour plus de confort).
      • Supprimez les lignes crl-verify (ligne 17) et ca (ligne 18).
      • Ouvrez le fichier ca.crt dans un nouvel onglet et copiez le contenu du fichier en appuyant successivement sur les touches Ctrl + A puis Ctrl + C.
      • Retournez sur le fichier Sweden.ovpn, ajoutez à la fin du fichier les balises <ca> et </ca> sur deux lignes et collez le contenu du fichier ca.crt.
      • Ouvrez le fichier crl.pem dans un nouvel onglet et copiez le contenu du fichier en appuyant successivement sur les touches Ctrl + A puis Ctrl + C.
      • Retournez sur le fichier Sweden.ovpn, ajoutez à la fin du fichier les balises <crl-verify> et </crl-verify> sur deux lignes et collez le contenu du fichier crl.pem.
      • Enregistrez le fichier Sweden.ovpn en appuyant sur les touches Ctrl + S. Votre fichier de configuration .ovpn est prêt !
      • Répétez les mêmes opérations pour les fichiers de configuration .ovpn des autres localisations qui vous intéressent.

Étape 2 : installer et configurer le client OpenVPN sous OpenWrt

Nous allons maintenant installer le client VPN sur notre routeur sous OpenWrt et le configurer avec les fichiers de configuration .ovpn que nous avons préparés à l’étape 1.

Installation des paquets

  1. Ouvrez Cmder.
  2. Connectez-vous en SSH à votre routeur :
    ssh [email protected]
  3. Installez les paquets nécessaires au fonctionnement d’OpenVPN :
    opkg update
    opkg install openvpn-openssl luci-app-openvpn
    opkg install libustream-openssl ca-bundle ca-certificates

Copie des fichiers de configuration .ovpn

  1. Ouvrez Cmder.
  2. Renommez vos fichiers de configuration .ovpn en respectant le format [fournisseur]_[localisation].ovpn, par exemple expressvpn_belgium.ovpn ou pia_netherlands.ovpn.
    cd /c/Users/LeCrabe/Downloads/expressvpn/
    mv my_expressvpn_belgium_udp.ovpn expressvpn_belgium.ovpn
    mv my_expressvpn_ireland_udp.ovpn expressvpn_ireland.ovpn
  3. Copiez les fichiers de configuration .ovpn vers votre routeur :
    scp LOCAL_PATH/*.ovpn [email protected]:/etc/openvpn/

    Remplacez LOCAL_PATH par le chemin d’accès de vos fichiers .ovpn, par exemple /c/Users/LeCrabe/Downloads/expressvpn/.

Connexion automatique aux serveurs VPN

  1. Ouvrez Cmder.
  2. Connectez-vous en SSH à votre routeur :
    ssh [email protected]
  3. Créez une variable VPN_PROVIDER et stockez-y le nom de votre fournisseur de VPN, par exemple expressvpn :
    VPN_PROVIDER=expressvpn
  4. Pour que la connexion au serveur VPN se fasse automatiquement, sans besoin de saisir à chaque fois notre identifiant et notre  mot de passe, nous allons stocker l’identifiant et le mot de passe de connexion dans un fichier .txt qui sera lu par les fichiers de configuration .ovpn.
    Pour ce faire, dans tous les fichiers de configuration .ovpn que nous avons transférés tout à l’heure, nous allons ajouter le paramètre auth-user-pass /etc/openvpn/${VPN_PROVIDER}_auth.conf avec la commande suivante :
    sed -i "/auth-user-pass/cauth-user-pass /etc/openvpn/${VPN_PROVIDER}_auth.txt" /etc/openvpn/${VPN_PROVIDER}_*.ovpn
    # Résultat :
    root@OpenWrt:~# tail -n +1 /etc/openvpn/*.ovpn | grep -E ".ovpn|auth-user-pass"
    ==> /etc/openvpn/expressvpn_belgium.ovpn <==
    auth-user-pass /etc/openvpn/expressvpn_auth.txt
    ==> /etc/openvpn/expressvpn_bosnia_and_herzegovina.ovpn <==
    auth-user-pass /etc/openvpn/expressvpn_auth.txt
  5. Créez le fichier /etc/openvpn/${VPN_PROVIDER}_auth.txt et inscrivez-y votre identifiant et votre mot de passe de connexion, fournis par votre fournisseur de VPN :
    touch /etc/openvpn/${VPN_PROVIDER}_auth.txt
    echo "YOUR_VPN_USER_NAME" > /etc/openvpn/${VPN_PROVIDER}_auth.txt
    echo "YOUR_VPN_PASSWORD" >> /etc/openvpn/${VPN_PROVIDER}_auth.txt
    chmod 400 /etc/openvpn/${VPN_PROVIDER}_auth.txt
    # Résultat :
    root@OpenWrt:~# cat /etc/openvpn/expressvpn_auth.txt
    YOUR_VPN_USER_NAME
    YOUR_VPN_PASSWORD

Création des instances OpenVPN

  1. Affichez vos fichiers de configuration .ovpn :
    ls -l /etc/openvpn/ | grep .ovpn
    -rw-r--r--    1 root     root          6120 Feb  3 15:40 expressvpn_belgium.ovpn
    -rw-r--r--    1 root     root          6133 Feb  3 15:40 expressvpn_bosnia_and_herzegovina.ovpn
    -rw-r--r--    1 root     root          6120 Feb  3 15:40 expressvpn_ireland.ovpn
    -rw-r--r--    1 root     root          6125 Feb  3 15:40 expressvpn_uk_berkshire.ovpn
  2. Nous allons créer une instance OpenVPN pour chaque localisation : il y a aura une instance pour se connecter au serveur VPN situé en Belgique, une autre pour l’Ireland… Pour ce faire, pour chaque localisation :
    1. Créez trois variables OPENVPN_LOCATION, VPN_PROVIDER et OPENVPN_INAME en spécifiant la localisation et le fournisseur, par exemple belgium et expressvpn (prenez garde à bien respecter l’orthographe) :
      OPENVPN_LOCATION=belgium
      VPN_PROVIDER=expressvpn
      OVPN_INAME="$VPN_PROVIDER"_"$OPENVPN_LOCATION"
    2. Créez une instance OpenVPN en spécifiant le fichier .ovpn de la localisation :
      uci set openvpn."$OVPN_INAME"=openvpn
      uci set openvpn."$OVPN_INAME".enabled='0'
      uci set openvpn."$OVPN_INAME".config=/etc/openvpn/"$OVPN_INAME".ovpn
      # Résultat :
      root@OpenWrt:~# uci show openvpn.expressvpn_belgium
      openvpn.expressvpn_belgium=openvpn
      openvpn.expressvpn_belgium.enabled='0'
      openvpn.expressvpn_belgium.config='/etc/openvpn/expressvpn_belgium.ovpn'

Mise à jour des DNS

  1. Pour utiliser les DNS de notre fournisseur de VPN, nous devons mettre à jour le fichier /tmp/resolv.conf.auto et y inscrire les DNS du fournisseur. Ce fichier est utilisé par le système pour savoir quels DNS utiliser pour résoudre les noms de domaine.
    Pour ce faire, nous aurons besoin de deux scripts : /etc/openvpn/updns et /etc/openvpn/downdns. Ces scripts seront exécutés respectivement après la connexion et après la déconnexion au serveur VPN. Créez ces scripts en saisissant les commandes suivantes :
    Astuce : copiez toutes les lignes ci-dessous et collez-les dans Cmder en appuyant sur les touches Shift (⇧) + Insert ou en faisant un clic droit !
    cat <<EOF > /etc/openvpn/updns
    #!/bin/sh
    mv /tmp/resolv.conf.auto /tmp/resolv.conf.auto.hold
    echo $foreign_option_1 | sed -e 's/dhcp-option DOMAIN/domain/g' -e 's/dhcp-option DNS/nameserver/g' > /tmp/resolv.conf.auto
    echo $foreign_option_2 | sed -e 's/dhcp-option DOMAIN/domain/g' -e 's/dhcp-option DNS/nameserver/g' >> /tmp/resolv.conf.auto
    echo $foreign_option_3 | sed -e 's/dhcp-option DOMAIN/domain/g' -e 's/dhcp-option DNS/nameserver/g' >> /tmp/resolv.conf.auto
    EOF
    cat <<EOF > /etc/openvpn/downdns
    #!/bin/sh
    mv /tmp/resolv.conf.auto.hold /tmp/resolv.conf.auto
    EOF
    chmod +x /etc/openvpn/updns
    chmod +x /etc/openvpn/downdns
    # Résultat :
    # root@OpenWrt:/tmp# ls -l /etc/openvpn/ | grep -E 'updns|downdns'
    # -rw-r--r--    1 root     root            62 Feb  4 13:27 downdns
    # -rw-r--r--    1 root     root           435 Feb  4 13:24 updns
  2. Pour que ces scripts soient exécutés, il faut ajouter les paramètres suivants à nos fichiers de configuration .ovpn :
    script-security 2
    up /etc/openvpn/updns
    down /etc/openvpn/downdns

    Pour ce faire, exécutez la commande suivante :

    sed -i '/auth-user-pass*/a script-security 2nup /etc/openvpn/updnsndown /etc/openvpn/downdns' /etc/openvpn/*.ovpn

Activation des logs

  1. Il est important d’utiliser des journaux d’événements (logs) afin de garder des traces de l’activité de notre client OpenVPN. Pour activer les logs, il faut ajouter les paramètres suivants à nos fichiers de configuration .ovpn :
    log-append /var/log/openvpn.log
    status /var/log/openvpn-status.log
    

    Pour ce faire, exécutez la commande suivante :

    sed -i '/auth-user-pass*/a log-append /var/log/openvpn.lognstatus /var/log/openvpn-status.log' /etc/openvpn/*.ovpn

Configuration de l’interface réseau et du pare-feu

  1. Créez une interface pour les instances OpenVPN :
    uci set network."$VPN_PROVIDER"_vpn=interface
    uci set network."$VPN_PROVIDER"_vpn.proto='none'
    uci set network."$VPN_PROVIDER"_vpn.ifname='tun0'
    uci set network."$VPN_PROVIDER"_vpn.metric='10'
    # Résultat :
    # root@OpenWrt:~# uci show network.expressvpn_vpn
    # network.expressvpn_vpn=interface
    # network.expressvpn_vpn.proto='dhcp'
    # network.expressvpn_vpn.ifname='tun0'
    # network.expressvpn_vpn.metric='10'
  2. Créez une nouvelle zone « vpn » dans le pare-feu et placez-y l’interface que nous venons de créer :
    uci add firewall zone
    uci set firewall.@zone[-1].name='vpn'
    uci set firewall.@zone[-1].input='REJECT'
    uci set firewall.@zone[-1].output='ACCEPT'
    uci set firewall.@zone[-1].forward='REJECT'
    uci set firewall.@zone[-1].masq='1'
    uci set firewall.@zone[-1].mtu_fix='1'
    uci add_list firewall.@zone[-1].network="$VPN_PROVIDER"_vpn
    # Résultat :
    # root@OpenWrt:~# uci show firewall.@zone[-1]
    # firewall.cfg1edc81=zone
    # firewall.cfg1edc81.name='vpn'
    # firewall.cfg1edc81.input='REJECT'
    # firewall.cfg1edc81.output='ACCEPT'
    # firewall.cfg1edc81.forward='REJECT'
    # firewall.cfg1edc81.masq='1'
    # firewall.cfg1edc81.mtu_fix='1'
    # firewall.cfg1edc81.network='expressvpn_vpn'
  3. Activez la redirection de la zone LAN vers la zone VPN :
    uci add firewall forwarding
    uci set firewall.@forwarding[-1].src='lan'
    uci set firewall.@forwarding[-1].dest='vpn'
    # Résultat :
    # root@OpenWrt:~# uci show firewall.@forwarding[-1]
    # firewall.cfg20ad58=forwarding
    # firewall.cfg20ad58.src='lan'
    # firewall.cfg20ad58.dest='vpn'
  4. Validez les changements et redémarrez les services firewall, network et openvpn :
    uci commit
    /etc/init.d/firewall reload
    /etc/init.d/network restart
    /etc/init.d/openvpn restart

Protection contre les fuites DNS

Pour protéger notre connexion VPN contre les fuites DNS[1], nous allons définir les DNS d’OpenDNS et de Google sur les interfaces LAN et WAN.

  1. Ajoutez les DNS d’OpenDNS et de Google sur l’interface lan :
    uci add_list dhcp.lan.dhcp_option='6,208.67.222.222,208.67.220.220'
    uci add_list dhcp.lan.dhcp_option='6,8.8.8.8,8.8.4.4'
  2. Ajoutez les DNS d’OpenDNS et de Google sur les interfaces par lesquelles vous passez pour accéder à Internet :
    uci set network.wan.peerdns='0' # Désactive les DNS fournis par DHCP
    uci del network.wan.dns # Supprime les DNS existants s'ils existent
    uci add_list network.wan.dns='208.67.222.222'
    uci add_list network.wan.dns='208.67.220.220'
    uci add_list network.wan.dns='8.8.8.8'
    uci add_list network.wan.dns='8.8.4.4'

    Remplacez wan par le nom de l’interface par laquelle vous passez pour accéder à Internet, par exemple wlan (connexion ADSL/fibre via Wi-Fi) ou wwan (connexion LTE).

  3. Validez les changements et redémarrez le service network et openvpn :
    uci commit
    /etc/init.d/network restart
    /etc/init.d/network openvpn

[1] Protection contre les fuites DNS (DNS Leak Protection) ^

Petit rappel sur les DNS. Un DNS est un serveur qui contient les annuaires de tous les sites Internet.

Lorsque vous tapez « www.google.fr » dans votre navigateur, de base, votre PC ne sait pas où se trouve « www.google.fr ». Votre PC est une machine, et pour communiquer avec d’autres machines, elle a besoin d’avoir sa propre adresse IP (du type 86.201.69.8) et de connaitre celles des autres machines. Lorsque vous tapez « www.google.fr », votre PC envoie donc une demande aux serveurs DNS (ceux de votre FAI généralement) pour savoir quelle est l’adresse IP de « www.google.fr » pour pouvoir s’y connecter. Les serveurs DNS répondent alors qu’il peut trouver « www.google.fr » à l’adresse IP 216.58.211.67. Votre navigateur peut alors établir une connexion avec le serveur où est hébergé « www.google.fr ».

Vous l’avez compris, il y a deux phases : la connexion aux serveurs DNS puis au site Internet. Même si vous êtes connecté à un serveur VPN, votre système d’exploitation (ex. : Windows, OpenWrt…) peut continuer à utiliser les serveurs DNS par défaut (ceux de votre FAI) au lieu des serveurs DNS anonymes de votre VPN. C’est une très grosse faille de sécurité, étant donné que toutes les requêtes vers les serveurs DNS de votre FAI ne sont pas chiffrées et peuvent donc êtes analysées. La protection contre les fuites DNS (DNS Leak Protection) permet de s’assurer que l’ensemble de votre connexion passe exclusivement dans le tunnel sécurisé du VPN et non dans celui non sécurisé de votre connexion Internet habituelle.

Étape 3 : se connecter au serveur VPN

  1. Ouvrez votre navigateur Web et entrez l’adresse Web http://192.168.1.1/ pour vous connecter à l’interface d’administration d’OpenWrt.
  2. Rendez-vous sur la page Services > OpenVPN. Toutes les instances OpenVPN que vous avez créées dans l’étape 2 se trouvent ici :
  3. Activez l’instance OpenVPN qui vous intéresse en cochant la case Enabled puis en cliquant sur le bouton Save & Apply. Puis, cliquez sur le bouton Start pour lancer la connexion au serveur VPN.
    Sur la page Network > Interfaces, vous trouverez l’interface de votre instance OpenVPN :
  4. Si vous souhaitez changer d’instance OpenVPN, procédez scrupuleusement comme ceci :
    1. Arrêtez le service openvpn : rendez-vous sur la page System > Startup pour accéder à la liste des services et cliquez sur le bouton Stop en face du service openvpn.
    2. Rendez-vous sur la page Services > OpenVPN pour accéder à la liste des instances OpenVPN.
    3. Désactivez l’ancienne instance OpenVPN en décochant la case Enabled.
    4. Activer la nouvelle instance OpenVPN en cochant la case Enabled.
    5. Cliquez sur le bouton Save & Apply.
    6. Cliquez sur le bouton Start en face de la nouvelle instance OpenVPN.
    7. Voilà, vous êtes connecté sur la nouvelle instance OpenVPN 😉

Étape 4 : vérifier la connexion au serveur VPN

  1. Ouvrez votre navigateur Web, accédez au site Web https://www.dnsleaktest.com et regardez si l’adresse IP et la localisation détectées correspondent à celles de votre instance OpenVPN :Dans la capture d’écran ci-dessus, on voit bien que le tunnel VPN est bien actif, notre adresse IP publique et notre localisation correspondent à celles d’un serveur au Royaume-Uni.
  2. Lancez un test de fuites DNS (DNS leak test) en cliquant sur le bouton Standard test ou Extended test : Ici, les DNS identifiés pour résoudre les noms de domaine sont ceux d’ExpressVPN et non ceux de notre FAI, tout va bien ! 🙂
  3. Vous pouvez également utiliser les services de vérification d’adresse IP et de test de fuite DNS de votre fournisseur de VPN. Par exemple, ceux de :

Et voilà ! Les communications entrantes et sortantes entre votre réseau local et Internet sont maintenant totalement chiffrées 👍

Profitez-en bien ! 😎

15 commentaires

Répondre à JonathanAnnuler
Connecté en tant que (connexion / s'inscrire)

Formulaire protégé par reCAPTCHA. Les Règles de confidentialité et les Conditions d'utilisation de Google s'appliquent.

Page 1 sur 1

  • cd38

    J’ai installé OpenWrt 18.06.1 r7258-5eb055306f / LuCI openwrt-18.06 branch (git-18.228.31946-f64b152) sur un router Xiaomi Mi Router 3G Kernel Version 4.14.63

    Et je cherche à mettre en place un VPN depuis mon fournisseur ZoogVPN

    Je n’est pas de fichier ca.crt mais un ca.zoogvpn.com.crt qui est déjà dans le fichier ca1.tcp.zoogvpn.ovpn

    Par contre j’ai pas de crl.pem mais un identrust.cer que je ne sais pas quoi faire avec

    J’ai décider quand même d’essayer juste avec mon fichier opvn mais j’ai du mal avec les commandes dans cmder. J’ai quand même réussi en bidoulant un peu : 

    λ cd VPN
    C:\VPN λ scp /*.ovpn [email protected]:/etc/openvpn//*.ovpn: Protocol not available
    C:\VPN λ scp /ca1.tcp.zoogvpn.ovpn
    [email protected]:/etc/openvpn//ca1.tcp.zoogvpn.ovpn: No such file or directory
    C:\VPN λ scp ca1.tcp.zoogvpn.ovpn 
    [email protected]:/etc/openvpn/ca1.tcp.zoogvpn.ovpn                                                                  100% 1515     1.5KB/s   00:00

    Mais je bloque un peu plus loin : ssh

    root@OpenWrt:~# VPN_PROVIDER=ZoogVPN
    root@OpenWrt:~# sed -i "/auth-user-pass/c\auth-user-pass \/etc\/openvpn\/${VPN_PROVIDER}_auth.txt" /etc/openvpn/${VPN_PROVIDER}_*.ovpnsed: /etc/openvpn/ZoogVPN_*.ovpn: No such file or directory
    root@OpenWrt:~# sed -i "/auth-user-pass/c\auth-user-pass \/etc\/openvpn\/${VPN_PROVIDER}_auth.txt" /etc/openvpn/${VPN_PROVIDER}_ca1.tcp.zoogvpn.ovpn.ovpnsed: /etc/openvpn/ZoogVPN_ca1.tcp.zoogvpn.ovpn.ovpn: No such file or directory
    root@OpenWrt:~#

    Quelqu’un voit ou je fait des conneries ? 

  • cd38

    Bonjour,

    Au niveau du VPN je suis chez zoogvpn et j’ai que des fichier de conf en .ovpn, 1 fichier OpenVPN (en fête à chaque site j’ai 1 udp et 1 tpc lequel prednre ? ) CA Certificate (ca.crt) et 1 fichier IKEv2 Trust Certificate (ikev2.cer) je peux quand même essayer de suivre à peu pret le tuto ? 

    • Le Crabe

      Salut cd38,

      Oui tu peux suivre ce tutoriel ! Tu n’auras pas besoin du fichier IKEv2 Trust Certificate (ikev2.cer) car ici on se connecte avec le protocole OpenVPN. Préfère le protocole UDP qui est généralement plus rapide que le TCP.

    • cd38

      Super merci et bravo pour le tuto ! 

  • Steph

    Impossible de créer un compte sur le forum ou de me connecter avec FB ou Google : Erreur 502…

     

    Salut LeCrabe et merci pour tes tutos !

    J’ai suivi avec succès ton tuto pour passer le Xiaomi Router sous Openwrt.

    Par contre je bloque sur ce tuto dès le début… J’ai réussi à installer OpenVPN avec l’interface Luci mais je n’arrive pas à copier les fichier ovpn de mon PC (sous windows) au routeur. Avec Cmder j’obtiens « La syntaxe de la commande n’est pas correcte. »

    Peux-tu m’éclairer stp ?

    • Le Crabe

      Salut Steph, peux-tu nous donner la commande que tu saisies ?

    • Steph

      Salut Le Crabe

      Je pense que c’était un bug de Cmder. J’ai eu l’idée de redémarrer le PC et ça a fonctionné direct

      Un grand merci à toi !

  • Le Crabe

    Je constate que le débit Internet est beaucoup moins bon lorsque le client OpenVPN est en route. Après recherches, il semblerait que ce soit à cause des processeurs dont sont équipés certains routeurs qui ne sont pas assez puissants.

    Il existe certains routeurs qui ont un processeur « hardware-accelerated crypto », donc adapté pour exécuter des tâches de chiffrement/déchiffrement comme OpenVPN.

    Je suis en train de voir pour trouver une solution.

    Il est possible apparemment de compiler une image du firmware LEDE/OpenWrt avec une accélération cryptographique matérielle via le kernel : https://wiki.openwrt.org/do[...]raphic.hardware.accelerators

    When the acceleration is not in the instruction set of the CPU, it is supported via a kernel driver (/dev/crypto). There are two drivers offering /dev/crypto in OpenWRT.

    Je vous tiens au jus !

    • Jonathan

      Effectivement, avec l’application windows je passe de 14Mbits/s à 12 Mbits/s alors qu’avec l’openVPN, je suis à 5Mbits/s

    • Le Crabe

      Merci pour ton retour Jonathan, c’est à peu près la même pour moi avec l’Archer C7 V2.

    • maximushugus

      Salut salut ! Merci beaucoup pour le tuto.
      Pour les problèmes de performance, est ce que tu a réussi à trouver une solution ? Ou bien est ce une cause perdue ?

    • Le Crabe

      Malheureusement non… Je crois que comme le routeur Archer C7 ne dispose pas d’un CPU « hardware-accelerated crypto », il n’y a pas moyen d’améliorer les performances malheureusement…

      Il faut se tourner vers d’autres routeurs, je vais essayer de me renseigner sur ceux qui ont un CPU « hardware-accelerated crypto ».

    • maximushugus

      Ok merci 🙂 J’essayera plus tard d’installer OpenVPN sur mon routeur Xiaomi 3G. Mias je compte l’utiliser comme serveur OpenVPN (et pas comme client) : je ne sais pas si en terme de charge CPU ça change grand chose (puisque qu’en tant que serveur il devrait faire du décryptage alors qu’en tant que client il crypte). En tout cas j’essayerai de faire un petit retour

    • smotx

      J’ai suivi le tuto, la différence est que je tente d’utiliser mon vpn perso sur un serveur perso.

      J’ai un fichier ovpn sans besoin de login/pass donc je n’ai pas suivi cette partie.

      Mais il ne semble pas que cela fonctionne.

      quand je vais dans l’interface j’ai
      Protocole: non-géré
      Reçu: 0 B (0 Pqts.)
      Transmis: 0 B (0 Pqts.)
      Erreur: Network device is not present

      Auriez vous une idée ? merci

256 utilisateurs actifs