Mikaël Grialou <mikael.grialou@inrae.fr> v2.2, 09-2022
Global Protect
Il est maintenant possible d’utilier le client VPN GlobalProtect Linux.
Il est disponible en ligne de commande et en interface graphique.
Voir les infos ici : Ariane
Contexte
La DSI INRA met à disposition un service d’accès aux données et applications depuis l’extérieur en utilisant un système de VPN.
Les documentations de configuration des clients VPN sous Windows, Mac et Linux sont directement disponible dans Ariane.
La documentation personnelle ci-dessous explique plus spécifiquement la configuration pour une machine Linux utilisant une distribution Debian ou dérivés (ex : Ubuntu).
Pré-requis
-
Demander le service (Ariane)
Pour en bénéficier, chaque agent INRA doit faire la demande via Ariane : https://ariane.inra.fr
Demander un service > Informatique d’appui et de proximité > Services Réseau-Sécurité et Téléphonie > Accès aux données et applications depuis l’extérieur.
Compléter le formulaire et attendre l’approbation de cette demande.
-
Compte administrateur
Dans cette documentation les commandes sont à effectuer avec le compte root ou en utilisant la commande sudo
-
Installation des paquets
sudo apt update; sudo apt install vpnc vpnc-scripts
Pour la configuration et l’utilisation du VPN, deux solutions possibles expliquées ci-dessous :
-
En ligne de commande via la commande
vpnc
- (recommandée) -
Via le NetworkManager de l’environnement graphique
En ligne de commande
Ne pas oublier d’utiliser sudo ! |
Créer le fichier /etc/vpnc/vpnc-split
#!/bin/sh
# This script is called from the vpnc.conf
# ...
# ...
# Script /etc/vpnc/vpnc_split
# Add one IP to the list of split tunnel
add_ip ()
{
export CISCO_SPLIT_INC_${CISCO_SPLIT_INC}_ADDR=$1
export CISCO_SPLIT_INC_${CISCO_SPLIT_INC}_MASK=$2
export CISCO_SPLIT_INC_${CISCO_SPLIT_INC}_MASKLEN=$3
export CISCO_SPLIT_INC=$(($CISCO_SPLIT_INC + 1))
}
# Initialize empty split tunnel list
export CISCO_SPLIT_INC=0
# Delete DNS info provided by VPN server to use internet DNS
# Comment following line to use DNS beyond VPN tunnel
unset INTERNAL_IP4_DNS
# List of IPs or Nets beyond VPN tunnel
add_ip 138.102.0.0 255.255.128.0 17
add_ip 138.102.128.0 255.255.240.0 20
add_ip 138.102.144.0 255.255.248.0 21
add_ip 138.102.152.0 255.255.255.248 29
add_ip 138.102.152.16 255.255.255.240 28
add_ip 138.102.152.32 255.255.255.224 27
add_ip 138.102.152.64 255.255.255.192 26
add_ip 138.102.152.128 255.255.255.128 25
add_ip 138.102.153.0 255.255.255.0 24
add_ip 138.102.154.0 255.255.254.0 23
add_ip 138.102.156.0 255.255.252.0 22
add_ip 138.102.192.0 255.255.192.0 18
add_ip 139.124.42.0 255.255.255.0 24
add_ip 147.99.0.0 255.255.0.0 16
add_ip 147.100.0.0 255.255.128.0 17
add_ip 147.100.128.0 255.255.224.0 19
add_ip 147.100.160.0 255.255.248.0 21
add_ip 147.100.168.0 255.255.252.0 22
add_ip 147.100.172.0 255.255.255.192 26
add_ip 147.100.172.72 255.255.255.248 29
add_ip 147.100.172.80 255.255.255.240 28
add_ip 147.100.172.96 255.255.255.224 27
add_ip 147.100.172.128 255.255.255.128 25
add_ip 147.100.173.0 255.255.255.0 24
add_ip 147.100.174.0 255.255.254.0 23
add_ip 147.100.176.0 255.255.240.0 20
add_ip 147.100.192.0 255.255.192.0 18
add_ip 193.49.227.0 255.255.255.0 24
add_ip 193.50.8.0 255.255.255.0 24
add_ip 193.50.9.0 255.255.255.0 24
add_ip 195.50.16.0 255.255.255.0 24
add_ip 193.50.17.0 255.255.255.0 24
add_ip 193.50.18.0 255.255.255.0 24
add_ip 193.50.19.0 255.255.255.0 24
add_ip 193.50.25.0 255.255.255.0 24
add_ip 193.50.35.0 255.255.255.0 24
add_ip 193.50.36.0 255.255.255.0 24
add_ip 193.50.37.0 255.255.255.0 24
add_ip 193.51.165.0 255.255.255.0 24
add_ip 193.51.170.0 255.255.255.0 24
add_ip 193.54.97.0 255.255.255.0 24
add_ip 193.54.99.0 255.255.255.0 24
add_ip 194.167.77.0 255.255.255.0 24
add_ip 194.167.78.0 255.255.255.0 24
add_ip 194.221.34.0 255.255.255.0 24
add_ip 194.254.140.0 255.255.255.0 24
add_ip 194.254.141.0 255.255.255.0 24
add_ip 195.220.91.0 255.255.255.0 24
add_ip 195.221.30.0 255.255.255.0 24
add_ip 195.221.37.0 255.255.255.0 24
# Execute (i.e source) default script
# Modification pour "vpnc-scripts"
# Habituellement c'est "/etc/vpnc/vpnc-script" ou "/usr/share/vpnc-scripts/vpnc-script"
vpncscripts=`man -P cat vpnc 2> /dev/null | grep vpnc-script | grep Default | cut -d ':' -f 2 | sed -e 's/^[[:blank:]]*//' || true`
if [ -n "$vpncscripts" -a -f $vpncscripts ]; then
. $vpncscripts
else
echo "Erreur : aucun fichier vpnc-script trouvé"
fi
unset vpncscripts
# End of script
Ce script doit exécuter le fichier vpnc-script selon les distributions il est à un emplacement différent. En cas de doutes consulter le man de vpnc.
|
Le rendre exécutable :
sudo chmod +x /etc/vpnc/vpnc-split
-
Modifier le fichier
/etc/vpnc/default.conf
IPSec gateway acces.intranet.inra.fr
IPSec ID vpn-linux
IPSec secret xauthinra
# Entrez ci-dessous votre login LDAP (national) :
Xauth username XXXXXXXXXXXXX
script /etc/vpnc/vpnc-split
-
Connexion au VPN
Utiliser la commande
sudo vpnc
Indiquer le mot de passe de votre compte LDAP national.
La connexion au VPN INRA est opérationnelle.
-
Déconnexion
Utiliser la commande
sudo vpnc-disconnect
Exemples d’utilisation MIAT
Exemple 1 : Intranet
Il est possible de consulter l’intranet MIAT depuis l’extérieur via le VPN.
-
Connexion au VPN
-
Ouvrir un navigateur : https://vmalbe.toulouse.inra.fr
-
Déconnexion du VPN
Exemple 2 : Accès SSH aux serveurs
Pour accéder depuis votre domicile au home directory, il faut utiliser le VPN.
Ensuite il est possible d’accéder directement à "Badet" en ssh.
-
Connexion au VPN
-
SSH :
ssh login@badet.toulouse.inra.fr [ ... ]
-
Déconnexion du VPN
De la même façon, vous pouvez accéder aux serveurs de calcul MIAT.
Exemple 3 : Accès SSH aux PC
Il aussi possible d’accéder aux ordinateurs MIAT en utilisant le VPN.
Vous devez utiliser l’adresse IP du PC, car il n’y a pas d’enregistrement DNS pour les PC.
(ici l’adresse IP est 123.123.123.123)
-
Connexion au VPN
-
SSH :
ssh login@123.123.123.123 [ ... ]
-
Déconnexion du VPN
Environnement graphique - Network Manager
Nous constatons de nombreux dysfonctionnements du VPN via Network Manager, cette méthode n’est pas recommandée. |
-
Ajout des paquets :
(ici l’environement graphique est GNOME Shell)
sudo apt update && sudo apt install network-manager-vpnc network-manager-vpnc-gnome
-
Utilitaire de configuration réseau (dans les applications du système)

-
Créer un nouveau réseau VPN de type "vpnc" - compatible Cisco


-
Paramétrer le réseau VPN avec la configuration suivante

-
Nom de la connexion : VPN_INRA
-
Passerelle : acces.intranet.inra.fr
-
Nom d’utilisateur : login_ldap_nationnal
-
Mot de passe utilisateur : laisser vide
-
Sélectionner "Toujours demander" (par mesure de sécurité)
-
-
Nom du groupe : vpn-linux
-
Mot de passe du groupe : xauthinra
-
Terminer par "Enregistrer"
-
Fermer la fenêtre.
-
Paramétrage du routage
Il est possible de paramétrer le routage via la fenêtre précédente, dans l’onglet "Paramètre IPv4" puis "Routes". Il y a 50 routes à paramétrer, une à une, et l’ajout via la fenêtre graphique est fastidieux . . . Je propose d’éditer directement le fichier de configuration de de copier / coller la configuration. |
Fermer l’ensemble des fenêtres précédentes correspondances à la configuration du VPN.
Éditer (en root ou via sudo) le fichier /etc/NetworkManager/system-connections/VPN_INRA
En fin de fichier compléter la partie suivante :
[ipv4]
method=auto
route1=138.102.0.0/17,0.0.0.0,0
route2=138.102.128.0/20,0.0.0.0,0
route3=138.102.144.0/21,0.0.0.0,0
route4=138.102.152.0/29,0.0.0.0,0
route5=138.102.152.16/28,0.0.0.0,0
route6=138.102.152.32/27,0.0.0.0,0
route7=138.102.152.64/26,0.0.0.0,0
route8=138.102.152.128/25,0.0.0.0,0
route9=138.102.153.0/24,0.0.0.0,0
route10=138.102.154.0/23,0.0.0.0,0
route11=138.102.156.0/22,0.0.0.0,0
route12=138.102.192.0/18,0.0.0.0,0
route13=139.124.42.0/24,0.0.0.0,0
route14=147.99.0.0/16,0.0.0.0,0
route15=147.100.0.0/17,0.0.0.0,0
route16=147.100.128.0/19,0.0.0.0,0
route17=147.100.160.0/21,0.0.0.0,0
route18=147.100.168.0/22,0.0.0.0,0
route19=147.100.172.0/26,0.0.0.0,0
route20=147.100.172.72/29,0.0.0.0,0
route21=147.100.172.80/28,0.0.0.0,0
route22=147.100.172.96/27,0.0.0.0,0
route23=147.100.172.128/25,0.0.0.0,0
route24=147.100.173.0/24,0.0.0.0,0
route25=147.100.174.0/23,0.0.0.0,0
route26=147.100.176.0/20,0.0.0.0,0
route27=147.100.192.0/18,0.0.0.0,0
route28=193.49.227.0/24,0.0.0.0,0
route29=193.50.8.0/24,0.0.0.0,0
route30=193.50.9.0/24,0.0.0.0,0
route31=193.50.17.0/24,0.0.0.0,0
route32=193.50.18.0/24,0.0.0.0,0
route33=193.50.19.0/24,0.0.0.0,0
route34=193.50.25.0/24,0.0.0.0,0
route35=193.50.35.0/24,0.0.0.0,0
route36=193.50.36.0/24,0.0.0.0,0
route37=193.50.37.0/24,0.0.0.0,0
route38=193.51.165.0/24,0.0.0.0,0
route39=193.51.170.0/24,0.0.0.0,0
route40=193.54.97.0/24,0.0.0.0,0
route41=193.54.99.0/24,0.0.0.0,0
route42=194.167.77.0/24,0.0.0.0,0
route43=194.167.78.0/24,0.0.0.0,0
route44=194.221.34.0/24,0.0.0.0,0
route45=194.254.140.0/24,0.0.0.0,0
route46=194.254.141.0/24,0.0.0.0,0
route47=195.50.16.0/24,0.0.0.0,0
route48=195.220.91.0/24,0.0.0.0,0
route49=195.221.30.0/24,0.0.0.0,0
route50=195.221.37.0/24,0.0.0.0,0
never-default=true
Enregistrer et fermer le fichier.
Connexion
Via le raccourci Gnome en haut à droite ou la fenêtre "Réseau".
Indiquer le mot de passe de votre compte LDAP national.
La connexion au VPN INRA est opérationnelle, quand vous avez terminé d’utiliser le VPN il faut se déconnecter.

ou
