Cisco Secure Client us dona dues maneres de respondre les mateixes indicacions d’inici de sessió: una persona que escriu a vpnui.exe, o un guió que alimenta respostes a vpncli.exe per l’entrada estàndard amb -s. La segona fa possibles les connexions programades sense llegir la pantalla de la GUI, i també converteix un inici de sessió en un fitxer que s’ha de protegir com una credencial. Quina voleu depèn de si hi ha una persona a la màquina i de la freqüència amb què rota la contrasenya. Cap de les dues opcions no canvia el que demana la passarel·la, només qui respon.

Tots dos camins acaben al mateix túnel, així que la comparació és d’operacions, no de protocol.

Dues maneres de respondre les mateixes indicacions

El camí de la GUI és interactiu per disseny: el client pregunta, algú respon i la sessió viu mentre aquesta persona la deixi tranquil·la. És l’elecció correcta en un portàtil que fa servir una persona, perquè les indicacions s’adapten al mètode d’autenticació de la passarel·la i ningú no ha de guardar una contrasenya en text pla al disc.

El camí del guió és l’adequat per a un quiosc, una màquina de laboratori o una tasca programada on no hi ha ningú per escriure. L’intercanvi és explícit: accepteu un fitxer de credencials al disc a canvi d’una connexió sense supervisió. Si la passarel·la ofereix autenticació per certificat o SAML, normalment aquest intercanvi no val la pena, perquè el fitxer només existeix per respondre indicacions que un mètode més fort evitarien.

No barregeu les dues coses en una mateixa màquina alhora. La línia d’ordres i el client gràfic competeixen pel mateix estat de sessió, i aquest és el problema de la secció següent.

Què ha de contenir el fitxer de respostes

El client pregunta per ordre — passarel·la, de vegades una selecció de grup, nom d’usuari, contrasenya i qualsevol confirmació del bàner. Un fitxer que respon a tot això té aquest aspecte, amb els valors reals substituïts:

connect vpn.example.com
MyGroup
alice
correct-horse-battery
y

La manera fiable de construir aquest fitxer és connectar-se una vegada a mà, apuntar cada línia que escriviu i cada premuda d’Enter, i reproduir exactament aquesta seqüència. Les implementacions que guarden el grup i el nom d’usuari al perfil poden necessitar línies en blanc on aquestes indicacions ja no apareixen, i l’última línia encara necessita el seu propi salt de línia. Un fitxer al qual falta una línia normalment es penja a l’última indicació en lloc de fallar amb un error clar, i per això se’n culpa la xarxa. Compareu el fitxer amb la vostra transcripció dues vegades, una per a l’ordre i una per a les línies en blanc.

Manteniu el fitxer fora de qualsevol carpeta sincronitzada i que només el pugui llegir el compte que executa la tasca. Aquesta contrasenya és text pla, així que el fitxer és una credencial: cap repositori, cap disc compartit, cap adjunt en un tiquet. El client no us avisarà de res d’això.

Per què la GUI ha de marxar primer

Comença el guió acabant el procés de la GUI i després executa la CLI des del seu propi directori d’instal·lació, perquè tant el directori de treball com la compilació del client importen. Un embolcall il·lustratiu:

@echo off
taskkill /IM vpnui.exe /F >nul 2>&1
cd /d "%PROGRAMFILES(x86)%\Cisco\Cisco Secure Client"
vpncli.exe -s < C:\secure\login.txt

Els codis de sortida no són aquí un senyal fiable d’èxit. El client imprimeix el seu progrés i manté el túnel en un procés a part, així que llegiu la sortida per trobar-hi la línia d’estat de connexió i només després comenceu la feina que depèn de la VPN.

Si us salteu matar la GUI, el guió pot semblar que s’executa mentre la sessió existent es queda en l’estat que l’usuari li hagi deixat. Aquesta fallada sembla intermitent, que és exactament el tipus d’error que sobreviu a una setmana d’endevinar.

Confirmeu una sessió, no la suposeu

Quan el guió retorna, comproveu alguna cosa que només existeix dins del túnel — un amfitrió intern o un sufix DNS que només respon el resolutor corporatiu. Llegiu també la línia d’estat de connexió a la sortida del client i tracteu qualsevol altra cosa com una fallada en lloc d’un èxit lent. Tornar a executar el fitxer amb una sessió ja activa pot deixar el client mig configurat, així que o us desconnecteu primer o us salteu l’inici de sessió quan la sessió hi és.

Després decidiu qui s’encarrega de la reconnexió. Un bucle que fa ping a una adreça interna i torna a executar l’inici de sessió pot mantenir un quiosc en línia durant mesos, i també pot bloquejar un compte la primera vegada que rota la contrasenya. Limiteu el nombre d’intents, aviseu quan se superi i deixeu que l’equip d’identitat roti el fitxer en lloc de deixar una contrasenya antiga reintentant fins al bloqueig.

El vpnclient.exe antic no és la mateixa eina

La mateixa automatització apareix sota un nom més antic, i les dues coses no són intercanviables. El client Cisco IPsec retirat feia servir vpnclient.exe amb arguments en línia com un verb connect, un nom de perfil, un usuari i una contrasenya en una sola línia d’ordres; vpncli.exe espera una seqüència d’indicacions a l’entrada estàndard amb -s. Per tant, copiar un guió antic de fòrum en una màquina actual produeix una ordre que s’executa, no fa res visible i se’n culpa la passarel·la.

Abans d’editar qualsevol argument, comproveu quin client hi ha instal·lat i quin crida realment el guió. La diferència de nom és prou petita per passar per alt en una tasca programada, i és el primer que cal verificar quan un guió heretat ha deixat de funcionar després d’una actualització.

Articles relacionats