plugin.video.catchuptvandmore icon indicating copy to clipboard operation
plugin.video.catchuptvandmore copied to clipboard

Comment paramétrer openVPN ?

Open chicungunya opened this issue 4 years ago • 15 comments

Bonjour,

Je souhaite paramétrer openVPN dans l'addon de votre plugin avec un compte NordVPN. Je ne trouve aucune explication.

J'ai téléchargé un fichier de configuration ici : https://nordvpn.com/fr/ovpn/ Je l'importe dans votre plugin, mais j'ai une erreur. Dans "Ajouter un argument", est ce que je dois mettre mon identifiant et mot de passe ? Si oui, sous quelle forme ?

Pourriez vous m'aider svp ?

Merci

chicungunya avatar Oct 17 '20 14:10 chicungunya

La documentation du site n'aide pas bcp je dois l'avouer. Comme catchup utilise /usr/bin/openvpn, il faut donc lui passer le fichier de configuration comme je pense expliqué ici : https://github.com/Catch-up-TV-and-More/plugin.video.catchuptvandmore/issues/288#issuecomment-612934011

Catchup embarque le projet de Brian Hornsby:

  • https://github.com/brianhornsby/script.openvpn
  • http://brianhornsby.com/blog/how-to-setup-your-vpn-client.php

cmoulliard avatar Oct 17 '20 16:10 cmoulliard

oui pas simple à configurer ... Est-ce que vous avez déjà essayez d'utiliser openVPN en dehors du plugin ? Pourriez-vous nous fournir l'erreur rencontré et les logs en mode debug de Kodi ?

wwark avatar Oct 17 '20 17:10 wwark

Bonjour et merci pour vos réponses. Alors j'ai suivi le tuto de @Forage en faisant soit le 1 ou le 2, en essayant mes identifiants Nordvpn ou mes "Service credentials" mais j'obtiens à chaque fois l'erreur ci-dessous :

ERROR: [Catch-up-TV-&-More.support] [Errno 13] Permission denied Traceback (most recent call last): File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.module.codequick/lib/codequick/support.py", line 325, in run_callback results = route.function(parent_ins, *arg_params, **self.callback_params) File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.catchuptvandmore/resources/lib/vpn.py", line 254, in vpn_item_callback connect_openvpn(ovpn) File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.catchuptvandmore/resources/lib/vpn.py", line 87, in connect_openvpn openvpn.connect() File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.catchuptvandmore/resources/lib/openvpn.py", line 224, in connect stderr=subprocess.PIPE) File "/home/jenkins/workspace/Android-ARM-Leia/tools/depends/xbmc-depends/arm-linux-androideabi-21-release/lib/python2.7/subprocess.py", line 394, in init File "/home/jenkins/workspace/Android-ARM-Leia/tools/depends/xbmc-depends/arm-linux-androideabi-21-release/lib/python2.7/subprocess.py", line 1047, in _execute_child OSError: [Errno 13] Permission denied

chicungunya avatar Oct 18 '20 14:10 chicungunya

On n'a pas sur quoi il y a un permission denied mais il est possible que ce soit sur l'execution de l'application openVPN dans Kodi. Suivant vos logs, on a l'air d'être sur android. Est-ce que vous avez testé OpenVPN sans le plugin sur votre device Android ? Dans les options du plugin, vous pouvez activé l'option "Run openVPN with superuser privilege (sudo) ...." et tester de nouveau ?

Normalement openvpn doit générer des logs dans android on aurait surement la cause. Je ne sais pas où se trouve les logs.

Merci,

wwark avatar Oct 18 '20 14:10 wwark

Juste pour qu'on soit clair, je n'ai pas installé de plugin openvpn sur Kodi, faut-il le faire ? Je vais essayer de tester sur mon mac Voici mes logs au complet : http://paste.kodi.tv/eniguzorep

Edit : OK sur mon mac avec la configuration ci-dessus. Je dois juste mettre mon id et mon mot de passe de mon compte Nordvpn et ça fonctionne

chicungunya avatar Oct 18 '20 14:10 chicungunya

Non mais il faut que l'application openvpn soit déployée sur votre environment où Kodi est installé. Vous devez définir l'emplacement de l'exécutable dans la configuration du VPN de notre plugin.

wwark avatar Oct 18 '20 14:10 wwark

Votre Kodi est sur votre Mac ou un device Android ? Le test de OpenVPN est à faire sur le même environnement que Kodi. Si c'est le Mac est-ce que vous avez des erreurs dans logs de openvpn dans /var/logs/ ou un sous-répertoire suite à un test de Kodi ?

wwark avatar Oct 18 '20 14:10 wwark

L'application est déployée sur mon environnement Kodi. J'ai essayé directement dans le plugin OpenVPN d'importer mon fichier mais j'obtiens l'erreur ci-dessous :

2020-10-18 10:54:47.061 T:14082 ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<-- - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS! Error Type: <type 'exceptions.OSError'> Error Contents: [Errno 13] Permission denied Traceback (most recent call last): File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.openvpn/default.py", line 262, in connect_openvpn(ovpn) File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.openvpn/default.py", line 144, in connect_openvpn openvpn.connect() File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.openvpn/resources/lib/openvpn.py", line 205, in connect stdout=subprocess.PIPE, stdin=subprocess.PIPE, stderr=subprocess.PIPE) File "/home/jenkins/workspace/Android-ARM-Leia/tools/depends/xbmc-depends/arm-linux-androideabi-21-release/lib/python2.7/subprocess.py", line 394, in init File "/home/jenkins/workspace/Android-ARM-Leia/tools/depends/xbmc-depends/arm-linux-androideabi-21-release/lib/python2.7/subprocess.py", line 1047, in _execute_child OSError: [Errno 13] Permission denied -->End of Python script error report<--

chicungunya avatar Oct 18 '20 14:10 chicungunya

C'est la même erreur que dans notre plugin. Cette erreur est lié à l'exécution sûrement d'OpenVPN mais vous n'avez pas le droit (surement limité au root d'android ...)

Est-ce qu'il serait possible d'avoir les logs en niveau debug suite avec le test du plugin OpenVPN ? Est-ce que vous me confirmer que l'application OpenVPN d'android avec la configuration de NordVPN fonctionne ?

wwark avatar Oct 18 '20 16:10 wwark

Bonjour, Est-il possible de récupérer la "country" dans une variable ou en tant qu'argument a mettre pour la connexion VPN ? Cela permettrait de pouvoir avoir une certaine autonomie suivant la géolocalisation.

JustBeta avatar Dec 26 '20 13:12 JustBeta

Bonjour, Après plusieurs tentatives infructueuses de configurer le dispositif OPENVPN de l'extension Catch-Up TV, j'ai utilisé une solution avec les caractéristiques suivantes :

  • configuration openvpn indépendante de KODI et de ses extensions
  • fonctionnement du VPN en tant que SERVICE (démarrage automatique au boot, et fonctionnement permanent du VPN pour toutes les applications)
  • cette procédure utilise l'accès SSH au système La configuration utilisée: Raspberry PI3B OSMC 2020-12-26 KODI LEIA 18.9 Catch-Up TV & more version beta 0.2.28 B14 VPN Vyvrvpn (nécessitant un identifiant et un mot de passe à la connexion) Dans ce cas, le fonctionnement en tant que service nécessite l'utilisation d'un fichier contenant l'identifiant de connexion et le mot de passe.

La procédure est la suivante:

  • récupération auprès du fournisseur du VPN d'un fichier de configuration client xxxx.ovpn
  • connexion ssh au PI
  • installation openvpn : sudo apt-get install openvpn
  • création d'un dossier openvpn dans le dossier "home" du PI (dans mon cas /home/pi/osmc: mkdir /home/osmc/openvpn
  • se positionner sur ce dossier : cd openvpn
  • transfert dans ce dossier du fichier xxxx.ovpn récupéré chez le fournisseur du VPN
  • création du fichier contenant les identifiants: nano pass.txt 1ère ligne identifiant 2ème ligne mot de passe
  • adapter ce fichier de configuration pour inclure ces identifiants de connexion
  •                                                                                  nano                xxxx.ovpn
    
  • modifier la ligne auth-user-pass en auth-user-pass pass.txt
  • sauver le fichier mis à jour
  • test de fonctionnement de openvpn : sudo openvpn --config xxxx.ovpn (arrêt avec ctrl+c)
  • SEULEMENT si le test de fonctionnement est réussi :
  • copier le fichier xxxx.ovpn dans le dossier système sudo cp xxxx.ovpn /etc/openvpn/xxxx.conf (attention le suffixe du fichier doit être changé de OVPN en CONF)
  • copier le fichier pass.txt dans le dossier système sudo cp pass.txt /etc/openvpn/pass.txt
  • définir le service système openvpn: sudo systemctl enable [email protected] (xxxx sera le nom du service et doit correspondre au nom du fichier "xxxx.conf" le service sera démarré automatiquement au boot ( la suppression du service se fera en utilisant disable au lien de enable)
  • démarrage du VPN : sudo service openvpn@xxxx start
  • arrêt du service sudo service openvpn@xxxx stop
  • état du service sudo service domoticz@xxxx status

Nota: il est possible d'obtenir auprès du fournisseur de VPN plusieurs fichiers "ovpn" de configuration correspondant chacun à un pays de "sortie" adapté au traffic envisagé (contournement géographique). Dans ce cas, il est possible de définir plusieurs services openvpn correspondant chacun à la configuration souhaitée et de l'activer individuellement et indépendamment de KODI en fonction du trafic désiré.

J'espère que cet exemple pourra être utile à d'autres utilisateurs de VPN avec KODI.

pouilld avatar Jan 12 '21 15:01 pouilld

Merci pour ton retour expérience, Moi, ma config est sous Windows 10 (je sais en générale ça fait jazzé) ! J'utilise l'addons VPN-Manager qui est top pour switcher automatiquement sur les différents pays. Ce qui me permet de me de changer de pays en changent d'addons. Mon problème, est avec catch-up-tv (qui est vraiment super bien) mais je ne sais pas comment récupérer le pays. Donc, je suis obligé de faire le changement manuellement.

D'où ma question.

JustBeta avatar Jan 13 '21 07:01 JustBeta

Le fichier de configuration importé dans CUTV fonctionne correctement quand openvpn est activé via SSH. Par contre lors d'une demande de connexion via le plugin CUTV, ce dernier indique un erreur.

Existe-t-il un fichier log dans CUTV permettant d'identifier la nature de l'erreur détectée ? D'avance merci.

pouilld avatar Jan 13 '21 15:01 pouilld

Les paramètres de CUTV permettent d'importer plusieurs fichiers de configuration ovpn et de leur attribuer un nom. Lors d'une demande de connexion, le plugin affiche les différents fichiers ovpn enregistrés avec leur nom et permet de sélectionner celui à utiliser pour se connecter.

Il est ainsi possible d'avoir un fichier de configuration par pays de "sortie" et de choisir celui à utiliser.

pouilld avatar Jan 13 '21 15:01 pouilld

Oui, le fait de pouvoir choisir manuellement c'est bien, d'où intérêt d'avoir une variable qui donne le pays. On pourrait avoir une connexion automatique.

JustBeta avatar Jan 13 '21 17:01 JustBeta