blacknight1user
Posts: 22
Joined: Mon Jun 29, 2015 4:43 pm

Reconnexion auto openvpn

Fri Jul 10, 2015 1:23 pm

Bonjour,

j'ouvre un autre post car suite au succés du montage Openvpn sur mon PI, j'aimerais améliorer le fonctionnement.
En effet, j'ai constaté de petite coupure d'accés au vpn et ca me bloque le PI aussi bien en accès internet que l'accés de mon PC client qui partage le VPN de mon PI. ca me fait tombé le:
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

J'ai remarqué que, a la suite d'une coupure vpn, et si je ne reboot pas le PI. je dois relancer à la fois le client.conf (openvpn) mais également la ligne Iptables ci-dessus.

Auriez-vous un script qui controle l'état de montage du VPN et qui, au besoin, le relance afin de retablir la connexion en automatique et qui relance également le iptable?
Si vous avez ca, la méthode également pour la mettre en place sur le PI.
j'ai vu un pugin nommé VPN autoconnect qui, a priori, ferait le boulot, mais je sais pas encore installer un package sur le PI! je sais même pas si c'est possible sur cette version allegé de Debian d'ailleur.
merci a vous

blacknight1user
Posts: 22
Joined: Mon Jun 29, 2015 4:43 pm

Re: Reconnexion auto openvpn

Sat Jul 11, 2015 9:32 am

personne n'a une solution?

jeanluc
Posts: 294
Joined: Thu Apr 11, 2013 9:44 am

Re: Reconnexion auto openvpn

Sat Jul 11, 2015 12:17 pm

Bonjour;

Rajouter ces lignes en bas du fichier conf securitykiss :

Code: Select all

script-security 2
up /etc/openvpn/up.sh
down /etc/openvpn/down.sh
Script "up.sh" (dans le dossier openvpn) :

Code: Select all

#!/bin/bash
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
Script "down.sh" (dans le dossier openvpn) :

Code: Select all

#!/bin/bash
iptables -D POSTROUTING -t nat -o tun0 -j MASQUERADE
Script "checkvpn.sh" lancé au boot du système : /etc/rc.local par exemple.. :

Code: Select all

#!/bin/bash
while [ 1 > 0 ]; do
sleep 60
VPNOK=$(ip addr show tun0 | grep inet | wc -l)
if [ "$VPNOK" -ne "1" ]
then 
/etc/init.d/openvpn restart
fi
done

blacknight1user
Posts: 22
Joined: Mon Jun 29, 2015 4:43 pm

Re: Reconnexion auto openvpn

Mon Jul 13, 2015 8:21 am

Mille merci pour ces explications, je test de suite :-)

blacknight1user
Posts: 22
Joined: Mon Jun 29, 2015 4:43 pm

Re: Reconnexion auto openvpn

Tue Jul 14, 2015 6:10 am

Génial jean-Luc, après 24H00 de test, plus de coupure, tout marche a la perfection.
tu es vraiment un crack, ta solution est du grand top.
merci encore pour tout.
:-)

EDIT:

oupsss, j'ai crié victoire trop tot, effectivement, tout fonctionnait mais avec ma vrai IP!!!
dans le log OpenVpn, j'ai ca:
WARNING: Failed running command (--up/--down): could not execute external program
Une solution?
(a noter que j'ai tenté de mettre un "sudo" devant les lignes au cas ou il y aurait des Pbrl d'autorisation, mais rien n'y fait!
merci

jeanluc
Posts: 294
Joined: Thu Apr 11, 2013 9:44 am

Re: Reconnexion auto openvpn

Tue Jul 14, 2015 9:01 am

Salut;

-regarde avec htop qui lance openvpn (en général c'est soit root soit nobody).

-Vérifie que les scripts up.sh et down.sh sont exécutables ...lance les toi même en console pour voir si erreurs)...idem pour checkvpn.sh

-Si user nobody...change le propriétaire de up.sh et down.sh

Dans checkvpn.sh remplace la ligne :

Code: Select all

/etc/init.d/openvpn restart
par :

Code: Select all

/etc/init.d/openvpn restart;echo `date` "--" "vpnok= "$vpnok >> /var/log/vpnlog.log
Comme ça tu verras le nombre de redémarrages...

Attention, securitykiss en version gratuite est limité à 300Mo/24h....ça peut aller très vite...

blacknight1user
Posts: 22
Joined: Mon Jun 29, 2015 4:43 pm

Re: Reconnexion auto openvpn

Tue Jul 14, 2015 9:17 am

je vais vérifier tt ca.
Pour info, je consomme environ 40Mo/24H00...
Htop, c'est quoi exactement, el ligne de commande, c'est inconnu!

jeanluc
Posts: 294
Joined: Thu Apr 11, 2013 9:44 am

Re: Reconnexion auto openvpn

Tue Jul 14, 2015 9:31 am

Code: Select all

sudo apt-get install -y htop
Puis :

Code: Select all

sudo htop
Tu pourras lister toutes tes applis en route, et l'user lançant les applis...cherche la ligne openvpn et regarde l'user...

blacknight1user
Posts: 22
Joined: Mon Jun 29, 2015 4:43 pm

Re: Reconnexion auto openvpn

Tue Jul 14, 2015 9:37 am

Arf, j'avais répondu et le message s'était pas validé.
htop ok
openvpn en mode Root
quant le lance bash up et down que j'ai créé, c'est tt bon

blacknight1user
Posts: 22
Joined: Mon Jun 29, 2015 4:43 pm

Re: Reconnexion auto openvpn

Tue Jul 14, 2015 9:40 am

Nvx message openvpn.log:

WARNING: External program may not be called unless '--script-security 2' or higher is enabled. Use '--script-security 3 system' for backward compatibility with 2.1_rc8 and earlier. See --help text or man page for detailed info.
Tue Jul 14 11:33:57 2015 WARNING: Failed running command (--up/--down): external program fork failed

blacknight1user
Posts: 22
Joined: Mon Jun 29, 2015 4:43 pm

Re: Reconnexion auto openvpn

Tue Jul 14, 2015 9:50 am

apres multiple reboot et changement de quelques parametres (security 3 comme indiqué sur le message d'erreur log), voici les derniers log:

Tue Jul 14 11:48:16 2015 /sbin/ifconfig tun0 10.11.0.62 pointopoint 10.11.0.61 mtu 1500
Tue Jul 14 11:48:16 2015 /etc/openvpn/up.sh tun0 1500 1544 10.11.0.62 10.11.0.61 init
Tue Jul 14 11:48:16 2015 WARNING: Failed running command (--up/--down): could not execute external program
Tue Jul 14 11:48:16 2015 Exiting

blacknight1user
Posts: 22
Joined: Mon Jun 29, 2015 4:43 pm

Re: Reconnexion auto openvpn

Tue Jul 14, 2015 10:04 am

j'ai un doute d'un seul coup concernant un de tes derniers messages:

les lignes:
#!/bin/bash
while [ 1 > 0 ]; do
sleep 60
VPNOK=$(ip addr show tun0 | grep inet | wc -l)
if [ "$VPNOK" -ne "1" ]
then
/etc/init.d/openvpn restart
fi
done

tu parles d'un fichier chekvpn.sh et ensuite de l'intégrer dans rc.local!

j'ai mis carrement les ligne dans le fichier rc.local sans créer de fichier checkvpn.sh
c'est ce que j'ai pu comprendre...
si il faut que je crée le fichier checkvpn.sh, je le met ou et surtout, dans le fichier rc.local, je met quoi pour le lancer?
merci

jeanluc
Posts: 294
Joined: Thu Apr 11, 2013 9:44 am

Re: Reconnexion auto openvpn

Tue Jul 14, 2015 12:11 pm

Oui, tu crées un script "checkvpn.sh" avec le contenu donné, tu le rends exécutable; tu le places par exemple dans /etc/openvpn et dans le fichier /etc/rc.local avant la ligne "exit 0" tu rajoutes " /etc/openvpn/checkvpn.sh &" ...tu redémarres , et dans htop tu dois voir le script tourner...
Edit:
OU dans /var/spool/cron/crontabs/root :
@reboot /etc/openvpn/checkvpn.sh &

blacknight1user
Posts: 22
Joined: Mon Jun 29, 2015 4:43 pm

Re: Reconnexion auto openvpn

Tue Jul 14, 2015 9:00 pm

Bon, j'ai tout fait et ca semble fonctionner correctement.
j'ai même un log OK que je peut lire dans /var/log
impec.
Merci beaucoup Jean-Claude et j'ai beaucoup appris en terme de prog, je veux toujours comprendre ce qu'il y a dans les fichiers sans les copier bêtement.
je suis super content ;-)

Return to “Français”