it-swarm-ja.com

Puppet Masterでの証明書リクエストを拒否する方法は?

ホスト名が間違っているエージェントからのリクエストがあります。私はこれを修正しましたが、まだ悪いホスト名で未解決の要求があります。

私は試した:

$puppet cert list
  "wrong.Host.name" (SHA256) 8E:...:51

$ puppet cert revoke wrong.Host.name
Error: Could not find a serial number for wrong.Host.name

$ puppet cert clean wrong.Host.name
Error: Could not find a serial number for wrong.Host.name

それらを取り除くための適切な方法は何ですか?

13
Louis Waweru

ca を使用すると、certとは異なり、1つの手順で証明書を削除できます。重要なことに、無効な証明書に一時的に署名することにはなりません。

$ puppet ca destroy wrong.Host.name
Notice: Removing file Puppet::SSL::CertificateRequest wrong.Host.name at '/var/lib/puppet/ssl/ca/requests/wrong.Host.name.pem'
Deleted for wrong.Host.name: Puppet::SSL::CertificateRequest

puppet caコマンド 最近非推奨になりました そのため、ある時点でなくなる可能性がありますが、同等のコマンドはありません。 bug が提出されていますが、このコマンドを置き換えずに削除するのが少しばかげていると思われる場合は、投票できます。

23
Nick

可能な解決策1:

パペットマスターでpuppet cert cleanを使用するのが適切な方法です。ただし、エラーが発生しているため、証明書のインベントリが不適切である可能性があります。

再インベントリを実行してから、きれいにしてください:

$ puppet cert reinventory
$ puppet cert clean --all

注:私の例では--allフラグを使用しています。これにより、署名付きと署名なしのすべての証明書がクリアされます。また、reinventoryを実行する前にPuppetマスターを停止する必要があることに注意してください。

ソース: http://docs.puppetlabs.com/references/3.6.2/man/cert.html

可能な解決策2:

$ puppet cert sign wrong.Host.name
Notice: Signed certificate request for wrong.Host.name
Notice: Removing file Puppet::SSL::CertificateRequest wrong.Host.name at '/var/lib/puppet/ssl/ca/requests/wrong.Host.name.pem'

$ puppet cert clean wrong.Host.name
Notice: Revoked certificate with serial 87
Notice: Removing file Puppet::SSL::Certificate wrong.Host.name at '/var/lib/puppet/ssl/ca/signed/wrong.Host.name.pem'
Notice: Removing file Puppet::SSL::Certificate wrong.Host.name at '/var/lib/puppet/ssl/certs/wrong.Host.name.pem'

可能な解決策3:

最初:サーバー上

$ puppet cert --revoke wrong.Host.name
$ puppet cert --clean wrong.Host.name

2番目:クライアント上

$ rm -rf /usr/lib/puppet/ssl
$ puppet agent --server [puppetmaster domain name] --waitforcert 60

3番目:サーバー上(必要に応じて調整)

$ puppet cert --list (you should see your Host)
$ puppet cert --sign wrong.Host.name

また、クライアントが[puppetmasterドメイン名]にアクセスできることを再確認してください。

ソース: https://serverfault.com/questions/574976/puppet-trying-to-configure-puppet-client-for-first-use-but-got-some-problems-wi

3
tbenz9

ここに私がやった方法があります

[[email protected] ca]# puppet cert clean sparrow.home
Error: Could not find a serial number for sparrow.home
[[email protected] ca]# cat inventory.txt 
0x0002 2015-05-17T06:33:29GMT 2020-05-16T06:33:29GMT /CN=puppetmc.home
0x0003 2015-05-17T23:25:33GMT 2020-05-16T23:25:33GMT /CN=sparrow.rospop.com
0x0004 2015-05-18T00:53:18GMT 2020-05-17T00:53:18GMT /CN=puppetmc.home
0x0005 2015-05-18T02:18:12GMT 2020-05-17T02:18:12GMT /CN=sparrow.rospop.com
[[email protected] ca]# vi  inventory.txt 

以下の行をinventory.txtに追加しました:

0x0001 2015-05-17T06:33:29GMT 2020-05-16T06:33:29GMT /CN=sparrow.home

次に実行します

[[email protected] ca]# puppet cert clean sparrow.home
Notice: Revoked certificate with serial 1
Notice: Removing file Puppet::SSL::CertificateRequest sparrow.home at '/var/lib/puppet/ssl/ca/requests/sparrow.home.pem'
Vince Bhebhe
2
lowlysquib