OpenConnect
OpenConnect 是最初创建用于支持思科 AnyConnect SSL VPN 的SSL VPN客户端。它被移植以支持Juniper SSL VPN,现在称为Pulse Connect Secure。
OpenConnect在GNU Lesser Public License 2.1协议下发布。
类似vpnc,OpenConnect不被官方支持或与Cisco Systems, Juniper Networks or Pulse有任何形式的的关联。它仅仅与他们的设备进行交互。
OpenConnect的开发开始于Cisco的Linux客户端试用版被发现有很多缺陷之后:
- 不能在 TPM 或 PKCS#11 智能卡使用SSL证书,甚至不能使用密码。
- 缺少对i386以外的Linux平台的支持。
- 缺少Linux桌面NetworkManager的集成。
- 缺少针对Linux发行版正确的打包(RPM/DEB)。
- 使用dlopen()对类库隐式引用,甚至使用仅适用于开发的符号链接比如:libz.so —— 使它很难正确的发现打包的正确依赖关系。
- 临时文件允许未授权用户以root身份欺骗覆盖任意文件。
- 不能以无特权用户运行,这将降低上述bug的严重性。
- 无法审核代码以进一步研究这种"Security 101"bugs。
当然,OpenConnect不止解决了以上所有问题。
相关链接: