Découvrez les nouveautés de cette version : Fonctionnalités, améliorations et évolutions vous attendent ! 👉 Cliquez ici pour en savoir plus

Configuration Linux

Version 28.1 par Stéphane Dugravot le 15/06/2022 - 17:20



Configuration Linux (Ubuntu - Mint)

3 solutions :

  1. Via le script d'install Cisco vpn anyconnect
  2. Via le package openconnect (compatible AnyConnect) : Open client for Cisco AnyConnect VPN
  3. Via network-manager + vpnc (compatible Cisco IPSec)

Configuration VPN Network Manager/vpnc

Installation

Network Manager, le logiciel qui gère les connexions réseaux que l'on trouve sous différentes distributions Linux (ici Ubuntu) sait gérer les connexions WiFi et VPN UHP. Pour la gestion du VPN, vous devez disposer bien sûr de Network Manager, mais aussi du client vpnc :

apt install vpnc network-manager-vpnc

Pour gnome, il faut ajouter

apt install network-manager-vpnc-gnome
Error

Si vous venez d'installer les paquets précédents (vpnc, network-manager-vpnc, etc ...), alors vous devez redémarrer votre poste de travail !


Configuration

Faites un clique droit sur l’icône de Network Manager dans la zone de notification, puis Modification des connexions ... puis rendez-vous dans l'onglet VPN, si vous avez bien installé le plugin vpnc, alors vous pouvez AJOUTER un profil.

Cliquez sur CREER, vous obtenez alors :

Capture_001.png

Saisissez alors les informations de la page suivantes :

  • Documentation officielle VPN
  • Domaine : Ne rien y inscrire
  • Méthode chiffrement : Sécurisé
  • Traversée du NAT : UDP Cisco
    Dans l'onglet Paramètres IPv4, ne rien changer car l'adresse doit être attribuée automatiquement.


Connexion

Faites un clique droit sur l’icône de Network Manager dans la zone de notification, puis Modification des connexions ... puis rendez-vous dans l'onglet VPN, si vous avez bien installé le plugin vpnc, alors vous pouvez AJOUTER un profil.

Une fois la connexion établie, l’icône de Network Manager indique un cadenas pour vous informer que la connexion a été établie avec succès.

Via le script d'install Cisco vpn anyconnect

Sous linux on peux installer le client anyconnect en lancant le script vpnsetup.sh disponible soit :

ici :

soit

en allant le chercher sur le https://vpn.lothaire.net 


VPN_Linux1.png

puis en cliquant sur le lien ( apres 1, à 2 min) :

VPN_Linux2.png


Une fois le script récuperé, on install le produit :


install_anyconnect
xxxxxx@pcxxxxx ~/Téléchargements $ sudo sh vpnsetup_64b.sh
[sudo] password for xxxxxx:
Installing Cisco AnyConnect Secure Mobility Client...
Removing previous installation...
mv: impossible d'évaluer «/opt/cisco/vpn/*.log»: Aucun fichier ou dossier de ce type
Extracting installation files to /tmp/vpn.zFF5b4/vpninst095927597.tgz...
Unarchiving installation files to /tmp/vpn.zFF5b4...
Starting the VPN agent...
Done!

Success

Remarque Linux MINT

pour les utilisateur de Linux MINT : Il est nécessaire d'installer la librairie libpangox


on doit rebooter sa machine, pour voir apparaître dans un menu l'application "Cisco Anyconnect Secure Mobility Client" :

VPN_Linux3.png


on le lance : 

VPN_Linux4.png


on accepte le certificat et on peut se connecter :


VPN_Linux5.png

NB : si on a ces erreurs "AnyConnect cannot confirm it is connected to your secure gateway.  The local network may not be trustworthy.  Please try another network."

c'est qu'il manque le certificat TERENA SSL CA, que l'on peut récupérer ici :

Fichier XML pour la configuration d'anyconnect

Dans le cas ou il y a plusieurs concentrateur vpn à gérer.

Fichier à installer dans :

  • MacOS X : /opt/cisco/anyconnect/profile
  • Windows : C:\ProgramData\Cisco\Cisco AnyConnect VPN Client\Profile\ 

Mettre un nom suffixé .xml

<?xml version="1.0" encoding="UTF-8"?>

<AnyConnectProfile xmlns="http://schemas.xmlsoap.org/encoding/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://schemas.xmlsoap.org/encoding/ AnyConnectProfile.xsd">
<ClientInitialization>
<UseStartBeforeLogon UserControllable="false">false</UseStartBeforeLogon>
<CertEnrollmentPin>pinAllowed</CertEnrollmentPin>
<CertificateMatch>
<KeyUsage>
<MatchKey>Non_Repudiation</MatchKey>
<MatchKey>Digital_Signature</MatchKey>
</KeyUsage>
<ExtendedKeyUsage>
<ExtendedMatchKey>ClientAuth</ExtendedMatchKey>
<ExtendedMatchKey>ServerAuth</ExtendedMatchKey>
<CustomExtendedMatchKey>1.3.6.1.5.5.7.3.11</CustomExtendedMatchKey>
</ExtendedKeyUsage>
<DistinguishedName>
<DistinguishedNameDefinition Operator="Equal" Wildcard="Enabled">
<Name>CN</Name>
<Pattern>ASASecurity</Pattern>
</DistinguishedNameDefinition>
<DistinguishedNameDefinition Operator="Equal" Wildcard="Disabled">
<Name>L</Name>
<Pattern>Boulder</Pattern>
</DistinguishedNameDefinition>
</DistinguishedName>
</CertificateMatch>
</ClientInitialization>
<ServerList>
<HostEntry>
<HostName>UL</HostName>
<HostAddress>vpn.lothaire.net</HostAddress>
</HostEntry>
</ServerList>
</AnyConnectProfile> 


Via le package Openconnect en CLI

Installation préalable :

sudo apt-get install openconnect


Commande :

sudo openconnect -u dugravot6@dn-infra --authgroup='Universite-de-Lorraine' --no-cert-check vpn.lothaire.net


Via le package Openconnect avec Network-Manager

On installe le package openconnect et les plugin network-manager-openconnect, network-manager-openconnect-gnome (fonctionne aussi avec linux mint 18.3 en cinnamon)


Openconnect
sudo apt-get install openconnect network-manager-openconnect network-manager-openconnect-gnome

Rebooter sa machine , on verra maintenant apparaître dans son module de gestion réseau/VPN un nouveau module "VPN Compatible Cisco Anyconnect ( openconnect)"


VPN_Linux6.png


VPN_Linux7.png


créer , Renseigner uniquement le nomde la connexion et la passerelle

VPN_Linux8.png

Pour avoir de bonnes performances il faut activer le Split-Tunnel (seules les connexions nécessaires passent dans le tunnel),
il faut cocher une case dans les paramètres IPV4 > Routes (la traduction française a coupé la phrase)

openconnect-split-tunnel.jpg

votre nvelle connexion VPN s'affiche maintenant dans votre gestionnaire réseau :

VPN_Linux9.png

cocher " Automatically start ....." et cliquer à coté du VPN host pour la connexion :


VPN_Linux10.png

valider le certificat :

VPN_Linux11.png


puis loguer vous :


VPN_Linux12.png

En cas de problèmes

Problème AnyConnect cannot confirm it is connected to your secure gateway

Lors du démarrage du client Anyconnect, on obtient le message suivant :

untrust.png

Pour résourde ce problème, procédez comme cela :

  1. Renommer le dossier ca

    cd /opt/.cisco/certificates
    mv ca ca.orig
  2. Nouveau dossier

    mkdir ca
  3. Dans le dossier ca, créez un nouveau certificat, vous pouvez le téléchargez à partir de ce fichier :
    vpn.pem
  4. Redémarrez le service

    /etc/init.d/vpnagentd restart
  5. Et le client, le problème ne devrait plus se poser.

Les accès vers les machines privées ne se font pas depuis l'extérieur

Il faut modifier la conf du VPN comme ça :

Capture d'écran de 2015-02-03 12 14 28.png