vpncli -s fronte á GUI: inicie sesión en Cisco Secure Client
vpncli -s le un ficheiro de respostas preparado, mentres que a GUI le unha persoa. Compare cando o script paga a pena, que necesita o ficheiro e como practicalo.
Cisco Secure Client dálle dúas formas de responder ás mesmas solicitudes de inicio de sesión: unha persoa que escribe en vpnui.exe, ou un script que alimenta respostas a vpncli.exe pola entrada estándar con -s. A segunda fai posibles as conexións programadas sen ler a pantalla da GUI, e tamén converte un inicio de sesión nun ficheiro que hai que protexer como unha credencial. Cal queira depende de se hai unha persoa na máquina e da frecuencia con que rota o contrasinal. Ningunha opción cambia o que pide a pasarela, só quen responde.
Os dous camiños rematan no mesmo túnel, así que a comparación é de operación, non de protocolo.
Dúas formas de responder ás mesmas solicitudes
A ruta da GUI é interactiva por deseño: o cliente pregunta, alguén responde e a sesión vive mentres esa persoa a deixe tranquila. É a elección correcta nun portátil que usa unha persoa, porque as solicitudes adáptanse ao método de autenticación da pasarela e ninguén ten que gardar un contrasinal en texto plano no disco.
A ruta do script é a axeitada para un quiosco, unha máquina de laboratorio ou unha tarefa programada onde non hai ninguén para escribir. O intercambio é explícito: acepta un ficheiro de credenciais no disco a cambio dunha conexión sen supervisión. Se a pasarela ofrece autenticación por certificado ou SAML, ese intercambio adoita non paga a pena, porque o ficheiro só existe para responder solicitudes que un método máis forte evitaría.
Non mesture as dúas nunha mesma máquina ao mesmo tempo. A liña de ordes e o cliente gráfico compiten polo mesmo estado de sesión, e ese é o problema da sección seguinte.
Que debe conter o ficheiro de respostas
O cliente pregunta por orde — pasarela, ás veces unha selección de grupo, nome de usuario, contrasinal e calquera confirmación do aviso. Un ficheiro que responde a todo iso ten este aspecto, cos valores reais substituídos:
connect vpn.example.com
MyGroup
alice
correct-horse-battery
yA forma fiable de construír ese ficheiro é conectarse unha vez a man, anotar cada liña que escribe e cada pulsación de Enter, e despois reproducir exactamente esa secuencia. As implantacións que gardan o grupo e o nome de usuario no perfil poden necesitar liñas en branco onde esas solicitudes xa non aparecen, e a última liña segue necesitando o seu propio salto de liña. Un ficheiro ao que lle falta unha liña adoita colgarse na última solicitude en lugar de fallar cun erro claro, e por iso se culpa a rede. Compare o ficheiro coa súa transcrición dúas veces, unha pola orde e outra polas liñas en branco.
Manteña o ficheiro fóra de calquera cartafol sincronizado e lexible só pola conta que executa a tarefa. Ese contrasinal é texto plano, así que o ficheiro é unha credencial: nin repositorio, nin disco compartido, nin anexo nun tícket. O cliente non lle avisará de nada disto.
Por que a GUI ten que marchar primeiro
Comece o script terminando o proceso da GUI e despois execute a CLI desde o seu propio directorio de instalación, porque importan tanto o directorio de traballo como a compilación do cliente. Un envoltorio ilustrativo:
@echo off
taskkill /IM vpnui.exe /F >nul 2>&1
cd /d "%PROGRAMFILES(x86)%\Cisco\Cisco Secure Client"
vpncli.exe -s < C:\secure\login.txtOs códigos de saída non son aquí un sinal fiable de éxito. O cliente imprime o seu progreso e mantén o túnel nun proceso aparte, así que lea a saída para atopar a liña de estado de conexión e só entón comece o traballo que depende da VPN.
Se se salta matar a GUI, o script pode parecer que se executa mentres a sesión existente queda no estado en que o usuario a deixou. Ese fallo parece intermitente, que é xusto o tipo de erro que sobrevive a unha semana de conxecturas.
Confirme unha sesión, non a supoña
Cando o script volva, comprobe algo que só existe dentro do túnel — un host interno ou un sufixo DNS ao que só responde o resolutor corporativo. Lea tamén a liña de estado de conexión na saída do cliente e trate calquera outra cousa como un fallo en lugar dun éxito lento. Volver executar o ficheiro cunha sesión xa activa pode deixar o cliente medio configurado, así que ou desconecte primeiro ou salte o inicio de sesión cando a sesión estea presente.
Despois decida quen se encarga da reconexión. Un bucle que fai ping a un enderezo interno e volve executar o inicio de sesión pode manter un quiosco en liña durante meses, e tamén pode bloquear unha conta a primeira vez que rota o contrasinal. Limite o número de intentos, avise cando se supere e deixe que o equipo de identidade rote o ficheiro en lugar de deixar que un contrasinal obsoleto reintente ata o bloqueo.
O vpnclient.exe antigo non é a mesma ferramenta
A mesma automatización aparece baixo un nome máis antigo, e as dúas non son intercambiables. O cliente Cisco IPsec retirado usaba vpnclient.exe con argumentos en liña como un verbo connect, un nome de perfil, un usuario e un contrasinal nunha soa liña de ordes; vpncli.exe espera unha secuencia de solicitudes na entrada estándar con -s. Copiar un script antigo de foro nunha máquina actual produce, por tanto, unha orde que se executa, non fai nada visible e se culpa a pasarela.
Antes de editar calquera argumento, comprobe que cliente está instalado e a cal chama realmente o script. A diferenza de nome é o bastante pequena para pasala por alto nunha tarefa programada, e é o primeiro que hai que verificar cando un script herdado deixou de funcionar tras unha actualización.