1

環境を監視するために Nagios/Icinga 監視システムをセットアップしています。すべてのサイトで機能していないため、check_ssl_cert を使用して SSL 証明書を監視したいと考えています。

私のコマンド:

/usr/lib/nagios/plugins/check_ssl_cert -c 7 -w 28 -H 141.85.37.43 -r /etc/ssl/certs/

戻り値:SSL_CERT CRITICAL: Error: verify depth is 6

(141.85.37.43 は単なる例のアドレスであり、私自身のものではありませんが、同じ間違いを犯します)。

私が試したら

# openssl s_client -connect ftp.myDomain.de:443
CONNECTED(00000003)
140037719324328:error:14077438:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert internal     error:s23_clnt.c:741:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 7 bytes and written 320 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
---

また

# curl https://ftp.myDomain.de:443 -v
* About to connect() to ftp.myDomain.de port 443 (#0)
*   Trying 212.xxx.xxx.xxx...
* connected
* Connected to ftp.myDomain.de (212.xxx.xxx.xxx) port 443 (#0)
* successfully set certificate verify locations:
*   CAfile: none
  CApath: /etc/ssl/certs
* SSLv3, TLS handshake, Client hello (1):
* SSLv3, TLS alert, Server hello (2):
* error:14077438:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert internal error
* Closing connection #0
curl: (35) error:14077438:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert internal error

というubuntuシステムでcrushFTPを使用していftp.myDomain.deます。https://ftp.myDomain.de問題なく使えます。証明書は .pem ファイルとしてインストールされ、Thawte によって検証されました。

私の証明書に何か問題がありますか?

4

4 に答える 4

3

私は何かを得たと思います。それは私のSSL証明書に関係しています。ssl version 3作業結果を得るために確認する必要があります。

Icinga plugins # openssl s_client -connect ftp.myDomain.de:443 -ssl3

check_ssl_cert提供されているcheck-httpと同じように、バージョンを定義するために新しいparam -sslを変更して追加しました:

http://pastebin.com/f46YQFg3 (stackoverflow.com を切望するには、そこに投稿する必要があります)

そしてそれをチェックすることができます

Icinga plugins # /usr/lib/nagios/plugins/check_ssl_cert -c 7 -w 28 -H "ftp.myDomain.de" -r "/etc/ssl/certs/" --ssl 3
SSL_CERT OK - X.509 certificate for 'ftp.myDomain.de' from 'Thawte DV SSL CA' valid until Jun  5 23:59:59 2015 GMT (expires in 676 days)|days=676;28;7;;

だから私の問題は解決されましたが、古い証明書との違いは何かを理解する必要があります-回避策は必要ありません-証明書と、そこで何かを変更する必要があるかどうか

于 2013-07-29T11:26:33.470 に答える
2

背後にいる開発者と連絡を取り、check_ssl_cert彼は私のソリューションを最適化し、更新されたバージョンで実装しました。

https://trac.id.ethz.ch/projects/nagios_plugins/wiki/check_ssl_cert

于 2013-07-31T10:27:57.247 に答える
1

新しい Nagios ボックスで同じ問題に遭遇し、最新バージョンを試してみましたがcheck_ssl_cert成功しませんでした。

結局、解決策はインストールすることでしたexpect

于 2014-11-03T23:05:55.677 に答える
0

必要な詳細がすべて揃っているわけではないので、確かなことは言えませんが、証明書に問題はないようです。ただ、認証チェーンが長すぎて check_ssl_cert で確認できないだけです。

エラー メッセージには、「深度が 6 であることを確認してください」と表示されます。これは、証明書検証チェーンが 6 項目を超えていることを意味し、必ずしも失敗するわけではありません。

check_ssl_cert の 228 行目と 205 行目あたりに、次のコードが表示されます。

exec_with_timeout $TIMEOUT "echo 'Q' | $OPENSSL s_client ${CLIENT} ${CLIENTPASS} -connect $HOST:$PORT ${SERVERNAME} -verify 6 ${ROOT_CA} 2> ${ERROR} 1> ${CERT}"

-verify 6テストするチェーンの最大長が制限されていることに注意してください。これを変更すると-verify 16(やり過ぎかもしれませんが、チェーンを処理する必要があります)、おそらく機能します。

于 2013-07-28T22:31:49.130 に答える