我们正在使用 Nagios 来监控我们的一些网站。我们有一个使用旧插件的脚本,我们正尝试使用 cpan 中的 webinject.pl 切换到该插件。当脚本运行时,它会生成此错误:
LWP::Protocol::https::Socket: SSL connect attempt failed with unknown error error:1407741A:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert decode error at /usr/local/share/perl5/LWP/Protocol/http.pm line 51.
该网站似乎不支持 https 的 TLSv1。如果重要的话,该站点是 Cisco WebVPN。我已将相同的脚本指向支持 TLSv1 的不同站点,并且它似乎工作正常。
我的网络搜索结果是空的。连接成功:
<case
id="1"
description1="Metro Home Page"
description2="Metro, login test"
method="get"
url="https://metro.myco.com/index.php"
verifypositive="restricted"
logrequest="yes"
logresponse="yes"
sleep="1"
/>
连接失败:
<case
id="2"
description1="WebVPN Home Page"
description2="webvpn.myco.com login test"
method="get"
url="https://webvpn.myco.com/webvpn.html"
verifypositive="Authorized"
logrequest="yes"
logresponse="yes"
sleep="1"
/>
我在这方面做了更多的工作,并且有一个我不喜欢的部分修复。我在代码中添加了一行到 sub _get_useragent
强制使用 SSLv3。这将允许插件连接到此站点。我可能会复制该插件,使其特定于该站点。但更好的解决方案是向测试用例添加一个选项。