puppet 颁发证书

转载:http://blog.51cto.com/ywzhou/1576163
1、客户端申请证书

[root@zabbix ~]# puppet agent --server puppet.ewin.com --test
#windows系统在CMD中运行:

运行出错时可以在后面加上--debug查看详情。

错误分析:

Exiting; no certificate found and waitforcert is disabled

这表示必须在服务端的hosts文件中设置解析:

[root@puppet ~]# echo "10.188.1.103 zabbix.ewin.com" >> /etc/hosts
[root@puppet ~]# echo "10.188.1.172 ywzhou-pc.ewin.com" >> /etc/hosts

** 通常还必须在客户端能PING通自身,最好在客户端添加自身的解析,如:**

[root@zabbix ~]# echo "10.188.1.103 zabbix.ewin.com" >> /etc/hosts

2、服务端查看证书

[root@puppet ~]# puppet cert list --all

左边有+号的,表示已经签发,puppet首先会给自己签发一个本地证书,

两个客户端的证书前没+号,等待服务端签发。

3、服务端签发证书

  [root@puppet ~]# puppet cert --sign zabbix.ewin.com
  [root@puppet ~]# puppet cert --sign ywzhou-pc.ewin.com
  [root@puppet ~]# puppet cert --sign --all                 #签发所有证书

可以一个个签发,也可以一次性签发所有申请

请求证书存放在服务端的/var/lib/puppet/ssl/ca/requests/目录;签发后会删除。

4、客户端取回通过的证书

[root@zabbix ~]# puppet agent --server puppet.ewin.com --test

要记住这条命令,会经常使用。

** 错误分析:**

wKioL1RkcN6DJs8IAAGxBPZ1tuU484.jpg

证书申请出错,在服务端按提示操作,下面也有讲如何清除证书重新申请。

5、自动签发证书

[root@puppet ~]# vi /etc/puppet/autosign.conf
*.ewin.com

对所有来自ewin.com域的机器的请求,都自动签发证书

签发证书后服务端查看证书:


** 以下是扩展内容,当出现问题需要重新申请证书或重新安装puppet时使用**

6、注销证书

[root@puppet ~]# puppet cert revoke zabbix.ewin.com
[root@puppet ~]# puppet cert revoke --all

只是让证书失效,客户端连接会失败,并没有删除证书文件。

重启puppetmaster服务生效:

[root@puppet ~]# service puppetmaster restart

7、删除证书及重新申请

服务端删除证书:

[root@puppet ~]# puppet cert --clean zabbix.ewin.com  #单个删除
[root@puppet ~]# puppet cert --clean --all            #全部删除

也可以直接删除证书文件:

[root@puppet ~]# rm -f /var/lib/puppet/ssl/ca/requests/zabbix.ewin.com.pem   #请求证书
[root@puppet ~]# rm -f /var/lib/puppet/ssl/ca/signed/zabbix.ewin.com.pem     #签发证书

客户端删除证书:

[root@zabbix ~]# rm -rf /var/lib/puppet/ssl/         #linux
C:\ProgramData\PuppetLabs\puppet\etc\ssl             #windows

客户端重新申请证书:

[root@zabbix ~]# puppet agent --server puppet.ewin.com --test

服务端查看证书:

[root@puppet ~]# puppet cert list --all

8、重装服务端及重申证书

清除服务端:

[root@puppet ~]# yum remove -y puppet-server puppet    #删除安装目录
[root@puppet ~]# rm -f -r /etc/puppet                  #删除配置目录
[root@puppet ~]# rm -f -r /var/lib/puppet              #删除证书目录

重装服务端:

[root@puppet ~]# yum install -y puppet-server

客户端删除证书及重申证书见第7步

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容