
Tengo algunas dificultades con Cisco AnyConnect v3.1 con respecto al inicio de sesión automático. Tengo que permanecer conectado a un único servidor todo el día, todos los días, y sería genial si no tuviera que desenterrar mi contraseña de 16 caracteres todos los días. Me encantaría que el cliente iniciara sesión automáticamente, pero en este momento ni siquiera estoy seguro de que sea una posibilidad.
Debo tener en cuenta que nuestra empresa de alojamiento me proporciona el software AnyConnect y que ni yo ni nadie de mi organización tenemos acceso a la parte de administración. Vi que existe un software de este tipo en Internet llamado "AnyConnect Profile Editor", pero Cisco no me permitió descargarlo sin un inicio de sesión válido.
He estado %appdata%\local\cisco\cisco anyconnect secure mobility client\preferences.xml
revisando mis preferencias y %programdata%\Cisco\Cisco AnyConnect Secure Mobility Client\Profile\ANYCONNECT.XML
revisando la configuración de mi perfil. Ninguno de estos mostró en ninguna parte que pudiera almacenar mis credenciales. Incluso rompí mi perfil varias veces al intentar calzar mi contraseña en algunos lugares. Eso no funcionó, imagínate.
Por último, encontréesta publicación en el foroque parecía especificar "huellas digitales" de certificados de cliente y servidor, así como algo llamado token SDI.
Descargo de responsabilidad: Soy desarrollador web front-end durante el día y ha pasado bastante tiempo desde que tuve que administrar la red por mí mismo, ¡perdón por la pregunta de novato!
Respuesta1
Yo uso algo como esto:
set FILE=%TEMP%\tmp
echo connect your.host.name> %FILE%
(echo 0)>> %FILE%
echo yourUserName>> %FILE%
echo yourPassWord>> %FILE%
"C:\Program Files\Cisco\Cisco AnyConnect Secure Mobility Client\vpncli.exe" -s < %FILE%
(Actualizar:¿Por qué los paréntesis alrededor echo 0
? Esto debería recordarle, al realizar una elección diferente a 0
, que 1>
o 2>
tiene un significado especial, redirigiendo stdout
o stderr
, respectivamente, pero sin hacer eco 1
de o 2
. Así que nos mantenemos en el lado seguro con ( echo 0)
.)
Esto es un poco más conciso:
(echo connect your.host.name& echo 0& echo yourUserName& echo yourPassWord& echo.) > %FILE%
more %FILE% | "C:\Program Files\Cisco\Cisco AnyConnect Secure Mobility Client\vpncli.exe" -s
Sin embargo, si desea lograr lo mismo sin un archivo temporal, esto no funciona para mí; me interesaría saber por qué:
(echo connect your.host.name& echo 0& echo yourUserName& echo yourPassWord) | "%ProgramFiles(x86)%\Cisco\Cisco AnyConnect Secure Mobility Client\vpncli.exe" -s
Actualizar:Esto funciona, encontrado a través dehttps://stackoverflow.com/a/29747723/880783:
(echo connect your.host.name^& echo 0^& echo yourUserName^&echo yourPassWord^&rem.) | "%ProgramFiles(x86)%\Cisco\Cisco AnyConnect Secure Mobility Client\vpncli.exe" -s
Todas estas variantes dependen, por supuesto, de la configuración de su servidor (especialmente del grupo VPN que debe elegir). Para saber qué necesita ingresar, llame vpncli.exe
sin ningún parámetro una vez, comience con connect your.host.name
y luego anote lo que se le solicita.
Actualizar:Esto tiene la ventaja adicional de ofrecer total libertad con respecto al servidor, nombre de usuario y contraseña, y no depende de ningún valor de suspensión (lo cual siempre es difícil si su sistema tiende a estar ocupado con otra cosa).
Respuesta2
Aquí está mi secuencia de comandos para iniciar Cisco AnyConnect Mobility Client v3.1 e iniciar sesión automáticamente. Guarde este script comoNOMBRE DE ARCHIVO.vbs, reemplazar CONTRASEÑAcon su contraseña, reemplace la ruta al exe del Cliente VPN si es necesario (probablemente no), y es posible que también necesite ajustar el segundo tiempo de suspensión dependiendo de su velocidad de conexión (la mía funciona de manera confiable a 5000, pero la suya puede necesitar menos/más hora de marcar a casa). Tengo el mío fijado en mi barra de tareas, pero también puedes presionarlo con teclas de acceso rápido.
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run """%PROGRAMFILES(x86)%\Cisco\Cisco AnyConnect Secure Mobility Client\vpnui.exe"""
WScript.Sleep 3000
WshShell.AppActivate "Cisco AnyConnect Secure Mobility Client"
WshShell.SendKeys "{TAB}"
WshShell.SendKeys "{TAB}"
WshShell.SendKeys "{ENTER}"
WScript.Sleep 5000
WshShell.SendKeys "PASSWORD"
WshShell.SendKeys "{ENTER}"
Respuesta3
Estoy respondiendo mi propia pregunta con esta respuesta "meh": no es lo que buscaba y aceptaré con gusto otra respuesta que pueda responder mejor a mi pregunta original.
Como no tuve suerte con los inicios de sesión automáticos, lo mejor que se me ocurrió fue copiar automáticamente mi contraseña ridículamente larga en mi portapapeles. En Windows, creé un .bat
archivo con esto en el cuerpo:
echo|set /p=MyPassword|clip
Donde "Mi Contraseña" es su contraseña real.
Al hacer doble clic, este archivo copiará su contraseña en su portapapeles para iniciar sesión rápidamente. ¡Mejor que nada!