dehio3’s diary

仕事、生活、趣味のメモ

puppetで「Warning: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [certificate revoked for /CN=********* ]」

事象

疎通コマンド実行したら以下のエラーが出た。

Warning: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [certificate revoked for /CN=********* ]
agent からのテスト疎通コマンド
puppet agent -t
puppet agent -t -d (デバック)

対応

以下を参考 d.hatena.ne.jp

これは、Ruby(Net::HTTP?)が SSL証明書を見つけることができなくて、HTTPS 接続に失敗しているのが原因らしい。Net::HTTP が、SSL証明書を見つけられるようにしてあげれば良い。

らしく

証明書をダウンロードする

$ wget http://curl.haxx.se/ca/cacert.pem

で対応してる。

そもそもサーバとクライアントにある証明書を調査

  • サーバ
# find /var/lib/puppet/ssl -type f -ls
526835    4 -rw-r--r--   1 puppet   puppet        775  9月  8  2017 /var/lib/puppet/ssl/ca/ca_pub.pem
526836   24 -rw-r--r--   1 puppet   puppet      21834  6月 12 12:07 /var/lib/puppet/ssl/ca/inventory.txt
526843   12 -rw-r--r--   1 puppet   puppet       9173  6月 12 12:07 /var/lib/puppet/ssl/ca/ca_crl.pem
526838    4 -rw-r--r--   1 puppet   puppet          4  6月 12 12:07 /var/lib/puppet/ssl/ca/serial
526839    4 -rw-r--r--   1 puppet   puppet       1968  9月  8  2017 /var/lib/puppet/ssl/ca/ca_crt.pem
526840    4 -rw-r-----   1 puppet   puppet       3243  9月  8  2017 /var/lib/puppet/ssl/ca/ca_key.pem
526842    4 -rw-r-----   1 puppet   puppet         20  9月  8  2017 /var/lib/puppet/ssl/ca/private/ca.pass
526845    4 -rw-r--r--   1 puppet   puppet       1968  1月 10 14:57 /var/lib/puppet/ssl/certs/ca.pem
400727   12 -rw-r--r--   1 puppet   puppet       9173  6月 12 12:07 /var/lib/puppet/ssl/crl.pem
  • クライアント(エラー出てるサーバ)
# find /var/lib/puppet/ssl -type f -ls
2882456    4 -rw-r--r--   1 puppet   puppet       1606  6月 12 12:07 /var/lib/puppet/ssl/certificate_requests/<ホスト名>.pem
2882453    4 -rw-r-----   1 puppet   puppet       3247  6月 12 12:07 /var/lib/puppet/ssl/private_keys/<ホスト名>.pem
2882458   12 -rw-r--r--   1 puppet   puppet       9173  6月 12 12:07 /var/lib/puppet/ssl/crl.pem
2882454    4 -rw-r--r--   1 puppet   puppet        775  6月 12 12:07 /var/lib/puppet/ssl/public_keys/<ホスト名>.pem
2882457    4 -rw-r--r--   1 puppet   puppet       1972  6月 12 12:07 /var/lib/puppet/ssl/certs/<ホスト名>.pem
2882455    4 -rw-r--r--   1 puppet   puppet       1968  6月 12 12:07 /var/lib/puppet/ssl/certs/ca.pem
  • クライアント(成功してるサーバ)
# find /var/lib/puppet/ssl -type f -ls
7047134    4 -rw-r--r--   1 puppet   puppet       1610  1月 10 16:53 /var/lib/puppet/ssl/certificate_requests/<ホスト名>.pem
7047031    4 -rw-r-----   1 puppet   puppet       3243  1月 10 16:53 /var/lib/puppet/ssl/private_keys/<ホスト名>.pem
7047205    4 -rw-r--r--   1 puppet   puppet        967  1月 10 16:53 /var/lib/puppet/ssl/crl.pem
7047084    4 -rw-r--r--   1 puppet   puppet        775  1月 10 16:53 /var/lib/puppet/ssl/public_keys/<ホスト名>.pem
7047201    4 -rw-r--r--   1 puppet   puppet       1976  1月 10 16:53 /var/lib/puppet/ssl/certs/<ホスト名>.pem
7047090    4 -rw-r--r--   1 puppet   puppet       1968  1月 10 16:53 /var/lib/puppet/ssl/certs/ca.pem

違いがあるのはクライアントの以下のファイル

/var/lib/puppet/ssl/crl.pem

失敗してる方はサーバと同じサイズだが、成功している方はサイズが小さい。

なんのファイル??

cat /var/lib/puppet/ssl/crl.pem
-----BEGIN X509 CRL-----
中略
-----END X509 CRL-----

上記を成功しているサーバと同じにしたら疎通が成功した!

根本原因はまた別途調査!!