我们公司正在使用自签名索尼克墙防火墙功能。远程客户端需要通过VPN通过NetExtender客户。
一些客户正在使用Linux 操作系统没有桌面环境故意。
出现问题NetExtender那些的客户没有桌面环境每次连接尝试时都检查计算机
每次连接尝试时NetExtender客户需要获得此问题的批准:
警告:自签名证书
是否要继续?(Y:是,N:否,V:查看证书)
我从这里了解了自签名证书关联
然后我尝试/home/$USER/.netExtenderCerts/PUB_CERT/ca-bundle.crt
通过复制/usr/local/share/ca-certificates
并使用update-ca-certificiates
命令来安装文件。
# cp /home/$USER/.netExtenderCerts/PUB_CERT/ca-bundle.crt /usr/local/share/ca-certificates
# update-ca-certificates
Updating certificates in /etc/ssl/certs...
1 added, 0 removed; done.
应用此方法并重新启动操作系统后,NetExtender 客户端仍悬而未决,同一个问题。这阻止了建立自动连接。
我怎样才能阻止 netExtender 客户端询问这个问题?
答案1
为了阻止 NetExtender 的证书验证对话,您可以使用未记录的开关"--always-trust"
例如:
netExtender -u user -p password -d 'domain' --always-trust host
已在 Linux 上测试过,但我不确定 NetExtender Windows CLI。
笔记:正如 Håkan Lindqvist 所评论的,请考虑到这将会引发 MITM 攻击。
答案2
Håkan Lindqvists 的评论非常有道理。
似乎只有 中包含的证书才~/.netExtenderCerts/PUB_CERT/ca-bundle.crt
由 netExtender 评估。好消息是,这是一个包含 Base64 编码证书的文本文件,因此将您的证书添加到文件中非常简单。
首先,您需要获取证书的副本。您可以通过在浏览器中打开 vpn 服务器地址、(右键)单击 URL 旁边的挂锁图标、检查证书然后将其导出来执行此操作。将证书另存为Base64-encoded ASCII, single certificate
或类似名称。
我建议备份原始ca-bundle.crt
文件,以防下一步失败或您希望恢复证书。
最后,将导出的证书和备份合并为一个文件并另存为ca-bundle.crt
免责声明:我没有找到这方面的文档,所以我的解决方案是基于实验的
答案3
#! /bin/bash
echo Y | netExtender -u user -p password -d 'domain' host
答案4
netExtender GUI 创建的/home/$USER/.netextender
内容格式如下:
[trustedcerts]
<ip>:<port>=<fingerprint>
手动创建此文件并将 ip、端口和指纹替换为您的值。(要获取指纹,请键入V
以查看证书,然后复制所有内容SHA1[...]
。)