我有一个网站托管在两个服务器。该网站是基于SSL的。
我希望使用本地Opsview监视每个服务器的网站(加载主页面并查找特定字符串)。这意味着我需要访问Opsview的主机文件,并添加"domain.com 10.10.10.33“,并每次更改它以匹配正确的服务器。我显然不能编写这个脚本,因为结果很可能在检查过程中出现偏差。
是否有某种类型的Linux爬虫能够获取IP地址、域名并将它们结合在一起?我试过卷曲--代理和wget -头球,但都没有用。
发布于 2014-09-10 16:41:36
我最终找到了解决方案,而没有取消认证警告等等。
这需要最新的卷曲,即7.37.1。
正确的语法是:
curl --resolve yourdomain.com:443:se.rv.er.ip https://yourdomain.com发布于 2014-09-10 14:53:16
许多SSL服务器并不关心提供了什么主机:报头,所以只要您能够说服客户机(例如wget)忽略证书CN不匹配,只需简单地请求https://$ipaddress/foo就可以了。
否则,可以尝试这样的方法:
(echo -e 'GET /foo HTTP/1.0\r\nHost: domain.com\r\n\r'; sleep 2) | openssl s_client -connect 10.10.10.33:443 | grep "a certain string"发布于 2014-09-10 15:16:54
您不需要主机名,您可以单独使用IP进行连接并使用curl传递域。
curl -k -H "Host: your-domain-name" https://ip-of-server/someURL-k将使cURL忽略证书错误,-H将放置主机,并将下载结果。您可以在awk、grep或其他您拥有的任何工具上使用它。
https://serverfault.com/questions/627564
复制相似问题