Ubuntu 16.04 openconnect cisco vpn n'a pas réussi à obtenir le cookie webvpn

16

Sur Ubuntu 16.04, j'obtiens l'erreur suivante:

$ openconnect -v vpn.com
POST https://vpn.com/
Attempting to connect to server 1.1.1.1:443
SSL negotiation with vpn.com
Connected to HTTPS on vpn.com
Got HTTP response: HTTP/1.1 200 OK
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Cache-Control: no-cache
Pragma: no-cache
Connection: Keep-Alive
Date: Mon, 22 Aug 2016 00:04:14 GMT
X-Frame-Options: SAMEORIGIN
X-Aggregate-Auth: 1
HTTP body chunked (-2)
XML POST enabled
Error: Server asked us to run CSD hostscan.
You need to provide a suitable --csd-wrapper argument.
Failed to obtain WebVPN cookie

J'ai également essayé --no-xmlpost postet obtenu une erreur.

Voici quelques informations:
j'avais Ubuntu 14.04 et je me connectais au serveur vpn en utilisant openconnect. Il y a une semaine, il a cessé de fonctionner avec ce problème. Je suppose que le site vpn a mis à niveau son serveur vpn Cisco vers le cheval de Troie CSD requis. Quoi qu'il en soit, j'ai décidé de passer à la version 16.04 et j'ai toujours le même problème.

sdstack
la source
Pour moi, la solution était dans cette réponse . J'avais besoin d'utiliser une option différente pour la commande: --authgroupau lieu de --usergroup.
totymedli
Pour moi, le problème était que j'avais une mauvaise configuration du serveur de noms /etc/resolv.confet que les recherches DNS échouaient.
Leons

Réponses:

11

J'ai trouvé ma réponse à travers cet article:
https://gist.github.com/l0ki000/56845c00fd2a0e76d688

J'ai fait ce qui suit:

cd ~  
mkdir .cisco  
cd .cisco  
wget https://gist.githubusercontent.com/l0ki000/56845c00fd2a0e76d688/raw/61fc41ac8aec53ae0f9f0dfbfa858c1740307de4/csd-wrapper.sh  
chmod +x csd-wrapper.sh  

Editez le fichier avec le serveur vpn:

CSD_HOSTNAME=vpnserver.com  

Exécutez le fichier

./csd-wrapper.sh  

Exécutez openconnect:

sudo openconnect --csd-user=YOURLINUXUSERNAME --csd-wrapper=/home/YOURLINUXUSERNAME/.cisco/csd-wrapper.sh vpnserver.com  
sdstack
la source
1
Curieux - pourquoi votre connexion est-elle ouverte sudo? Ils prennent en charge le fonctionnement non root . Depuis cette page: Pour des raisons de sécurité, il est préférable que le code réseau puisse s'exécuter sans privilèges root - et il existe quelques options qui permettent à OpenConnect de s'exécuter en tant qu'utilisateur non privilégié à la place.
Randall
3

J'ai trouvé que je devais également spécifier --os = win. Cela semblait fonctionner autour d'une réponse 404 que le serveur générait lors de la tentative de téléchargement de sfinst.

GET https://vpn.company.com/CACHE/sdesktop/install/binaries/sfinst
Got HTTP response: HTTP/1.1 404 Not Found (does not exist)

Des informations sur le problème 404 pour sfinst peuvent être trouvées sur la liste de diffusion openconnect-devel " Connexion avec Linux lorsque le CSD est disponible ".

J'ai réussi avec la commande suivante qui utilise le drapeau os et le drapeau csd-wrapper ensemble:

sudo openconnect \
    --user <USERNAME> \
    --cert-expire-warning=15 \
    --certificate <CERTFILE> \
    --os=win \
    --csd-user=<USERNAME> \
    --csd-wrapper=<PATHTO>/csd-wrapper.sh \
    https://<VPNADDRESS e.g., vpn.company.com>
DAP
la source
1

J'ai eu cette erreur dans Ubuntu 18.04
J'ai pu me connecter au serveur en utilisant le lien ci-dessous et la deuxième réponse .

il suffit d'utiliser le -v drapeau

sudo openconnect -v NAMESERVER.COM
hoseinmont
la source