[英]CHECK_NRPE: Error - Could not complete SSL handshake AND cannot SSH into box or access it locally
[英]CHECK_NRPE: Error - Could not complete SSL handshake
我在我的本地機器上的amazon ec2實例和nagios服務器上的xinetd下運行NRPE守護程序進程。
check_nrpe -H [amazon public IP]
給出了這個錯誤:
CHECK_NRPE: Error - Could not complete SSL handshake.
兩個Nrpe都是相同的版本。 兩者都使用此選項進行編譯:
./configure --with-ssl=/usr/bin/openssl --with-ssl-lib=/usr/lib/i386-linux-gnu/
“allowed host”條目包含我的本地IP地址。
現在這個錯誤的可能原因是什么?
如果您正在將nrpe作為服務運行,請確保在客戶端的nrpe.cfg中包含以下行:
# example 192. IP, yours will probably differ
allowed_hosts=127.0.0.1,192.168.1.100
你說已經完成,但是,如果你在xinetd下運行nrpe,請確保編輯文件/etc/xinetd.d/nrpe
的only_from
指令。
不要忘記重啟xinetd服務:
service xinetd restart
要檢查您是否有權訪問它,請嘗試在地址:端口上執行簡單的telnet,ping或traceroute以查看阻塞的位置。
telnet IP port
ping IP
traceroute -p $port IP
還要檢查目標服務器上nrpe守護程序是否正常工作。
netstat -at | grep nrpe
您還需要檢查兩台服務器上安裝的OpenSSL的版本,因為我已經看到這種斷開檢查有時會進行SSL握手!
@jgritty是對的。 你應該編輯nrpe.cfg
和nrpe
配置文件,以允許你的主nagios服務器訪問:
vim /usr/local/nagios/etc/nrpe.cf
allowed_hosts=127.0.0.1,172.16.16.150
和
vim /etc/xinetd.d/nrpe
only_from= 127.0.0.1 172.16.16.150
對於NRPE來說,這有點像是一個包羅萬象的錯誤信息。 檢查防火牆規則並確保端口已打開。 還嘗試禁用SELinux並查看是否允許連接通過。 這可能不是SSL問題,只是連接被拒絕的問題。
檢查你的/var/sys/system.log
。 在我的例子中,事實證明我的監控IP設置為我在nrpe.cfg文件中設置的IP。 不過,我不知道這種變化的原因。
看起來您正在僅限主機的網絡上的虛擬機中運行Nagios服務器。 如果是這樣,這將停止任何外部訪問。 確保您具有NAT或橋接網絡。
如此多的答案,沒有一個能夠解決我遇到這個問題的原因。
事實證明,nagios有可怕的跨版本支持,這是由於我擁有版本2“客戶端”(機器被監控)和版本3“服務器”(監控機器)。
一旦我將客戶端升級到版本3,問題就消失了,我可以做一個check_nrpe -H [client IP]
而沒有問題。
請注意,我不確定客戶端/服務器是否與nagios是正確的術語,因為在NRPE調用的情況下,服務器實際上是被調用的機器,但我離題了。
確保您已重新啟動Nagios客戶端插件。
我正在使用xinetd服務運行nrpe。
確保您的nagios用戶正確進行身份驗證(除上述基本步驟外)。 就我而言:
Jun 6 15:05:52 gse2 xinetd[33237]: **Unknown user: nagios**<br>[file=/etc/xinetd.d/nrpe] [line=9]
Jun 6 15:05:52 gse2 xinetd[33237]: Error parsing attribute user - DISABLING
SERVICE [file=/etc/xinetd.d/nrpe] [line=9]
Jun 6 15:05:52 gse2 xinetd[33237]: **Unknown group: nagios**<br>[file=/etc/xinetd.d/nrpe] [line=10]
Jun 6 15:05:52 gse2 xinetd[33237]: Error parsing attribute group - DISABLING
SERVICE [file=/etc/xinetd.d/nrpe] [line=10]
Jun 6 15:05:52 gse2 xinetd[33237]: Service nrpe missing attribute user - DISABLING
顯示在/ var / log消息中。
它最初逃脫了我,但后來我檢查了ypbind服務,發現它沒有啟動。
啟動ypbind后,nagios用戶和組正確進行身份驗證,錯誤消失了。
一些邊緣情況重新啟動nagios-nrpe-server
沒有幫助,因為進程沒有被殺死或者沒有正確重新啟動。
然后手動殺死它,然后開始。
SSL握手錯誤信息。除了您應該分配的allow_host。
您的nagios服務器位於具有C類型IP地址的本地LAN中,例如192.168.xxxx
當目標受監視服務器將ssl msg反饋給您的本地nagios服務器時,該消息應首先到達您的線路的公共IP,該消息不能跨越公共IP進入您的nagios服務器,哪個ip是內部IP。
您需要NAT來引導SSL消息從目標服務器到內部nagios服務器。
或者你最好使用“GET”方法,只需從nagios客戶端獲取監控消息,如SNMP,即可完成linux服務器本地資源的遠程監控。
SSL需要雙向反饋。
最好的祝福
對我來說,在客戶端的/etc/nagios/nrpe.cfg中設置以下內容:
dont_blame_nrpe=1
這是和ubuntu 16.04機器。 對於其他可能的問題,我建議查看nrpe日志。 這是配置日志的好文章。
檢查/etc/xinetd.d/nrpe中的配置並驗證服務器IP。 如果顯示only_from = 127.0.0.1,則使用服務器IP更改它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.