En poursuivant votre navigation sur ce site, vous acceptez l'utilisation de cookies pour vous proposer des contenus et services adaptés. Mentions légales.
Texte à méditer :   Prenez un bon contenu, une pincée de pixels, laissez reposer, vous obtenez un GuppY des plus harmonieux.   
Vous êtes ici :   Accueil » Actualités RSS -
 
 
 
    Imprimer la page...

Actualités RSS -

Linopen, aide, audio, astuce, ubuntu, linux mint, doc, tuto, nord


Linopen : le site de linux et du libre, aide, astuces, ubuntu, linux mint, linuxmint, doc, tuto, nord, daphile, hifi, demat, audio, info


Stopper la connection internet si le VPN se déconnecte - par linopen le 28/03/2020 @ 22:52 

Si vous utilisez votre connection internet derrière un VPN, vous souhaitez sans doute interrompre votre connection si le VPN se déconnecte.

Certains VPN propose cette fonction (kill switch). Dans le cas de Surfshark VPN sous Linux par exemple, celui-ci fonctionne dans un terminal et cette fonction ne semble pas implémentée. Pour remédier à ce petit souci, j'ai procédé comme suit :

- créer un fichier que vous nommerez par exemple vpnguard avec l'éditeur de texte et saisissez le code suivant :

 #!/bin/sh
while [ 1 ]
do
echo "IFCONFIG :"
ifconfig tun0 || sudo ifconfig enp0s25 down 
sleep 10
done

- A noter, adapter la ligne ifconfig en fonction de vos paramètres, tun0 est ma connection vpn, enp0s25 correspond a ma connection via la carte ethernet. Quand le VPN est actif, la connection tun0 est active et remplace la connection via enp0s25. Lorsque le VPN se déconnecte ou s'arrête, la connection enp0s25 redevient active, la commande "sudo ifconfig enp0s25 down" stoppe cette connection. 

Pour connaitre comment votre connection est nommée, ouvrir un terminal et saisir la commande ifconfig

Exemple de ce que me renvoit la commande ifconfig :

[23:37:00] linopen:~ $ ifconfig
enp0s25: flags=4163  mtu 1500
        inet 192.111.1.27  netmask 255.255.255.0  broadcast 192.189.1.315
        inet6 2ab1:a0e:3ac:20d0:be60:5bff:fea3:49ac  prefixlen 64  scopeid 0x0
        inet6 2a01:e0a:3ac:20d0:cdf1:ebf:c7ac:1166  prefixlen 64  scopeid 0x0
        inet6 fe80::be30:b5ff:fea3:49ac  prefixlen 64  scopeid 0x20
        ether bc:30:49:a3:a3:ac  txqueuelen 1000  (Ethernet)
        RX packets 956063  bytes 1097703946 (1.0 GB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 470081  bytes 79598290 (79.5 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 21  memory 0xf7ae0000-f7b00000  

lo: flags=73  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 128582  bytes 12588058 (12.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 128582  bytes 12588058 (12.5 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

tun0: flags=4305  mtu 1500
        inet 10.4.4.8  netmask 255.255.255.0  destination 10.4.4.8
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 100  (UNSPEC)
        RX packets 800945  bytes 975391298 (975.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 318661  bytes 38249765 (38.2 MB)
        TX errors 0  dropped 120660 overruns 0  carrier 0  collisions 0

[23:37:07] linopen:~ $ 

- Enregistrer et fermer l'éditeur.

- Rendre ensuite ce fichier exécutable , clic droit sur le fichier, puis Propriétés, puis onglet Permissions, puis cocher la case "Autoriser l'exécution du fichier comme un programme"

- copier ensuite ce fichier dans le dossier /usr/bin (avec les droits administrateur, clic droit sur le dossier /bin et ouvrir en tant qu'administrateur)

- fermez votre gestionnaire de fichiers et retournez ensuite sur votre bureau, clic droit, créer un lanceur, une fenetre s'ouvre, renseignez comme ceci :

type : application dans un terminal

nom : vpnguard

commande : vpnguard

Puis valider.

Vous pouvez désormais lancer cette application créée via le raccourci sur votre bureau, ou en ouvrant un terminal et saisir vpnguard.

Dès lors que votre VPN fera des caprices, votre connection internet sera coupée.

Attention toutefois à toujours laisser cette fenêtre de terminal active (vous pouvez la réduire mais ne pas la fermer).

On peut améliorer un peu ce script comme je l'ai fait, dans mon cas j'utilise le VPN Surfshark.

Les lignes echo "VPN :" et sudo surfshark-vpn status ne sont utiles pour vous seulement si vous utilisez Surfshark VPN, il donne des infos sur la connection (état, adresse IP, paquets envoyés/reçus), dans le cas contraire supprimez ces lignes.

 #!/bin/sh
while [ 1 ]
do
echo "============================================="
echo "VPN STATUS MONITOR AND LIFEGUARD : "
echo "--------------------------------------------------------------------------------"
echo "IFCONFIG :"
ifconfig tun0 || sudo ifconfig enp0s25 down 
echo "--------------------------------------------------------------------------------"
echo "VPN :"
sudo surfshark-vpn status

sleep 10
echo "  "
done

Stopper la connection internet si le VPN se déconnecte - par linopen le 28/03/2020 @ 22:52 

Si vous utilisez votre connection internet derrière un VPN, vous souhaitez sans doute interrompre votre connection si le VPN se déconnecte.

Certains VPN propose cette fonction (kill switch). Dans le cas de Surfshark VPN sous Linux par exemple, celui-ci fonctionne dans un terminal et cette fonction ne semble pas implémentée. Pour remédier à ce petit souci, j'ai procédé comme suit :

- créer un fichier que vous nommerez par exemple vpnguard avec l'éditeur de texte et saisissez le code suivant :

 #!/bin/sh
while [ 1 ]
do
echo "IFCONFIG :"
ifconfig tun0 || sudo ifconfig enp0s25 down 
sleep 10
done

- A noter, adapter la ligne ifconfig en fonction de vos paramètres, tun0 est ma connection vpn, enp0s25 correspond a ma connection via la carte ethernet. Quand le VPN est actif, la connection tun0 est active et remplace la connection via enp0s25. Lorsque le VPN se déconnecte ou s'arrête, la connection enp0s25 redevient active, la commande "sudo ifconfig enp0s25 down" stoppe cette connection. 

Pour connaitre comment votre connection est nommée, ouvrir un terminal et saisir la commande ifconfig

Exemple de ce que me renvoit la commande ifconfig :

[23:37:00] linopen:~ $ ifconfig
enp0s25: flags=4163  mtu 1500
        inet 192.111.1.27  netmask 255.255.255.0  broadcast 192.189.1.315
        inet6 2ab1:a0e:3ac:20d0:be60:5bff:fea3:49ac  prefixlen 64  scopeid 0x0
        inet6 2a01:e0a:3ac:20d0:cdf1:ebf:c7ac:1166  prefixlen 64  scopeid 0x0
        inet6 fe80::be30:b5ff:fea3:49ac  prefixlen 64  scopeid 0x20
        ether bc:30:49:a3:a3:ac  txqueuelen 1000  (Ethernet)
        RX packets 956063  bytes 1097703946 (1.0 GB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 470081  bytes 79598290 (79.5 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 21  memory 0xf7ae0000-f7b00000  

lo: flags=73  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 128582  bytes 12588058 (12.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 128582  bytes 12588058 (12.5 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

tun0: flags=4305  mtu 1500
        inet 10.4.4.8  netmask 255.255.255.0  destination 10.4.4.8
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 100  (UNSPEC)
        RX packets 800945  bytes 975391298 (975.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 318661  bytes 38249765 (38.2 MB)
        TX errors 0  dropped 120660 overruns 0  carrier 0  collisions 0

[23:37:07] linopen:~ $ 

- Enregistrer et fermer l'éditeur.

- Rendre ensuite ce fichier exécutable , clic droit sur le fichier, puis Propriétés, puis onglet Permissions, puis cocher la case "Autoriser l'exécution du fichier comme un programme"

- copier ensuite ce fichier dans le dossier /usr/bin (avec les droits administrateur, clic droit sur le dossier /bin et ouvrir en tant qu'administrateur)

- fermez votre gestionnaire de fichiers et retournez ensuite sur votre bureau, clic droit, créer un lanceur, une fenetre s'ouvre, renseignez comme ceci :

type : application dans un terminal

nom : vpnguard

commande : vpnguard

Puis valider.

Vous pouvez désormais lancer cette application créée via le raccourci sur votre bureau, ou en ouvrant un terminal et saisir vpnguard.

Dès lors que votre VPN fera des caprices, votre connection internet sera coupée.

Attention toutefois à toujours laisser cette fenêtre de terminal active (vous pouvez la réduire mais ne pas la fermer).

On peut améliorer un peu ce script comme je l'ai fait, dans mon cas j'utilise le VPN Surfshark.

Les lignes echo "VPN :" et sudo surfshark-vpn status ne sont utiles pour vous seulement si vous utilisez Surfshark VPN, il donne des infos sur la connection (état, adresse IP, paquets envoyés/reçus), dans le cas contraire supprimez ces lignes.

 #!/bin/sh
while [ 1 ]
do
echo "============================================="
echo "VPN STATUS MONITOR AND LIFEGUARD : "
echo "--------------------------------------------------------------------------------"
echo "IFCONFIG :"
ifconfig tun0 || sudo ifconfig enp0s25 down 
echo "--------------------------------------------------------------------------------"
echo "VPN :"
sudo surfshark-vpn status

sleep 10
echo "  "
done

(28/03/2020 @ 22:52)

01/04/2020 @ 21:14