Skip to content

Cisco:Windows ​

最新的安装目录是:

C:\Program Files (x86)\Cisco\Cisco Secure Client\vpncli.exe

Windows 上没有现成的 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 会先下载到安装目录,再指向本地文件。

手动安装 ​

  1. 把 Cisco/win/cisco-vpn.bat 和 Cisco/win/config.bat 放到同一个目录。
  2. 安装 totp-go:irm https://sh.mawenqian.com/totp-go-install.ps1 | iex
  3. 编辑 config.bat,填入真实的 VPN_HOST、VPN_USER、VPN_PASSWORD、VPN_SECRET —— 变量名和 unix 端的 config.sh 完全一致。
  4. 可选:把 cisco-vpn.bat 的快捷方式放到桌面,以后双击即可自动连接。

使用 ​

双击运行 cisco-vpn.bat(或在终端里直接执行),它会依次:

  1. 打印当前 VPN 状态;
  2. 强制断开已有连接;
  3. 加载 config.bat,用 totp-go "%VPN_SECRET%" 现算一个 TOTP 验证码,直接在批处理脚本内把脚本化的登录输入写入 %TEMP%\cisco_input.txt(不经过任何辅助进程);
  4. 把这个文件通过管道传给 vpncli.exe -s(脚本模式)完成登录,然后删除临时文件。

一键断开 ​

一键安装已经自动创建了这个快捷方式;也可以自己创建一个,目标设置为:

C:\Windows\System32\cmd.exe /c "C:\Program Files (x86)\Cisco\Cisco Secure Client\vpncli.exe" disconnect & timeout /nobreak /t 3

以后想换图标:右键快捷方式 → 属性 → 更改图标。