Proxy

是否有可能通過代理監控 nagios 中的 https 站點?

  • March 17, 2021

我對 nagios 工具有一個小問題:

是否有可能通過代理監控 nagios 中的 https 站點?這意味著我想監控我的代理是否可以訪問網際網路上的一些 https 資源?我認為這個命令沒有問題:

/usr/lib/nagios/plugins/check_http -j CONNECT -u "https://banking.postbank.de" -S

但是我們的 nagios 伺服器沒有直接的 Internet 訪問權限,並且此命令不起作用..(已安裝 openssl)我認為“-S”選項不適用於代理..:

 /usr/lib/nagios/plugins/check_http -I 10.46.4.200 -p 8080 -j CONNECT -u "https://banking.postbank.de" -S

那麼問題來了:怎麼辦?der 是某種 check_https 嗎?或類似的東西?有人做過這樣的檢查嗎?

非常感謝您的幫助,Fake4d

編寫腳本!使用wgetcurl編寫自己的外掛

例如:

#!/bin/bash
wget -t 5 --timeout 30 -O /dev/null -o /dev/null -e https_proxy=your.proxy:port https://www.google.com
if [ $? -eq 0 ] ; then
 echo all ok
 exit 0
else
 echo not ok
 exit 2
fi

您顯然可以擴展它,例如檢查返回頁面的內容。

check_http 當然適用於 https 網站,’-j CONNECT’ 是必不可少的,因為你已經擁有了,但你還需要一個 -H .. 並且你的代理伺服器設置為通過 https

例子:

check_http -I PROXYHOST -p PROXYPORT -H FQDN -u RELATIVE-URI -S -j CONNECT -s STRING-TO-MATCH

  • 使用相對 uri 而不是完整的 url,我得到了更好的結果 .. 例如:’/vendors’ 而不是 ’ http://example.com/vendors '
  • 當然 -s 僅當您嘗試匹配返回內容中的特定字元串時
  • 最後,在某些環境中,您最好的選擇仍然是將 wget 或 curl 包裝在腳本中

引用自:https://serverfault.com/questions/275417