Cisco:Windows
最新的安装目录是:
C:\Program Files (x86)\Cisco\Cisco Secure Client\vpncli.exeWindows 上没有现成的 oathtool 等价物,所以这里改用 totp-go 生成验证码 —— 一个独立的小型命令行工具,不需要 Python。
前置依赖
PATH 中要有 totp-go。下面的一键安装脚本检测不到时会自动安装;手动安装:
powershell
irm https://sh.mawenqian.com/totp-go-install.ps1 | iex一键安装
powershell
irm https://sh.mawenqian.com/cisco-win-install.ps1 | iex它会:
- 把
cisco-vpn.bat和一份config.bat模板放到%USERPROFILE%\.local\opt\cisco-vpn(可用-InstallDir ...覆盖)。 totp-go不在PATH中时自动安装它。- 询问是否在桌面创建 Connect VPN / Disconnect VPN 快捷方式 —— 选择创建之后就再也不用碰终端了。
以后重新运行安装脚本只会刷新 cisco-vpn.bat,不会动你的 config.bat。
快捷方式图标
默认使用仓库自带的 connect.ico 和 disconnect.ico,两个快捷方式各用各的。
想用自己的图标,传入 -ConnectIconUrl <url> / -DisconnectIconUrl <url> 指向一个 .ico 文件即可。快捷方式的图标必须是本地的 .ico / .exe / .dll 文件(Windows 不支持直接用远程 URL 做图标),所以提供的 URL 会先下载到安装目录,再指向本地文件。
手动安装
- 把
Cisco/win/cisco-vpn.bat和Cisco/win/config.bat放到同一个目录。 - 安装
totp-go:irm https://sh.mawenqian.com/totp-go-install.ps1 | iex - 编辑
config.bat,填入真实的VPN_HOST、VPN_USER、VPN_PASSWORD、VPN_SECRET—— 变量名和 unix 端的config.sh完全一致。 - 可选:把
cisco-vpn.bat的快捷方式放到桌面,以后双击即可自动连接。
使用
双击运行 cisco-vpn.bat(或在终端里直接执行),它会依次:
- 打印当前 VPN 状态;
- 强制断开已有连接;
- 加载
config.bat,用totp-go "%VPN_SECRET%"现算一个 TOTP 验证码,直接在批处理脚本内把脚本化的登录输入写入%TEMP%\cisco_input.txt(不经过任何辅助进程); - 把这个文件通过管道传给
vpncli.exe -s(脚本模式)完成登录,然后删除临时文件。
一键断开
一键安装已经自动创建了这个快捷方式;也可以自己创建一个,目标设置为:
C:\Windows\System32\cmd.exe /c "C:\Program Files (x86)\Cisco\Cisco Secure Client\vpncli.exe" disconnect & timeout /nobreak /t 3以后想换图标:右键快捷方式 → 属性 → 更改图标。