天天看點

puppet 頒發證書

轉載: http://blog.51cto.com/ywzhou/1576163 1、用戶端申請證書

[root@zabbix ~]# puppet agent --server puppet.ewin.com --test
#windows系統在CMD中運作:
           
http://s3.51cto.com/wyfs02/M02/52/74/wKiom1Rkbs-x83igAAFaSPmYHCs794.jpg
puppet 頒發證書
http://s3.51cto.com/wyfs02/M02/52/74/wKiom1Rkbs-x83igAAFaSPmYHCs794.jpg wKiom1Rkbs-x83igAAFaSPmYHCs794.jpg http://s3.51cto.com/wyfs02/M02/52/74/wKiom1Rkbs-x83igAAFaSPmYHCs794.jpg

運作出錯時可以在後面加上--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
           
http://s3.51cto.com/wyfs02/M00/52/74/wKiom1Rkbs_y8WPWAADO7-raOYg895.jpg
puppet 頒發證書
http://s3.51cto.com/wyfs02/M00/52/74/wKiom1Rkbs_y8WPWAADO7-raOYg895.jpg wKiom1Rkbs_y8WPWAADO7-raOYg895.jpg http://s3.51cto.com/wyfs02/M00/52/74/wKiom1Rkbs_y8WPWAADO7-raOYg895.jpg http://s3.51cto.com/wyfs02/M01/52/72/wKioL1Rkbz7gMmimAABZQ_oJkMA760.jpg
puppet 頒發證書
http://s3.51cto.com/wyfs02/M01/52/72/wKioL1Rkbz7gMmimAABZQ_oJkMA760.jpg wKioL1Rkbz7gMmimAABZQ_oJkMA760.jpg http://s3.51cto.com/wyfs02/M01/52/72/wKioL1Rkbz7gMmimAABZQ_oJkMA760.jpg

左邊有+号的,表示已經簽發,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                 #簽發所有證書
           

可以一個個簽發,也可以一次性簽發所有申請

http://s3.51cto.com/wyfs02/M01/52/73/wKioL1RkcN7BObBoAACFe078fP0820.jpg
puppet 頒發證書
http://s3.51cto.com/wyfs02/M01/52/73/wKioL1RkcN7BObBoAACFe078fP0820.jpg wKioL1RkcN7BObBoAACFe078fP0820.jpg http://s3.51cto.com/wyfs02/M01/52/73/wKioL1RkcN7BObBoAACFe078fP0820.jpg http://s3.51cto.com/wyfs02/M01/52/75/wKiom1RkcHDzzWPjAACBaBnQH74398.jpg
puppet 頒發證書
http://s3.51cto.com/wyfs02/M01/52/75/wKiom1RkcHDzzWPjAACBaBnQH74398.jpg wKiom1RkcHDzzWPjAACBaBnQH74398.jpg http://s3.51cto.com/wyfs02/M01/52/75/wKiom1RkcHDzzWPjAACBaBnQH74398.jpg

請求證書存放在服務端的/var/lib/puppet/ssl/ca/requests/目錄;簽發後會删除。

4、用戶端取回通過的證書

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

要記住這條指令,會經常使用。

http://s3.51cto.com/wyfs02/M02/52/73/wKioL1RkcN7DCWWFAAEq_1mehro635.jpg
puppet 頒發證書
http://s3.51cto.com/wyfs02/M02/52/73/wKioL1RkcN7DCWWFAAEq_1mehro635.jpg wKioL1RkcN7DCWWFAAEq_1mehro635.jpg http://s3.51cto.com/wyfs02/M02/52/73/wKioL1RkcN7DCWWFAAEq_1mehro635.jpg http://s3.51cto.com/wyfs02/M00/52/73/wKioL1RkciPyS6XMAADzz04yUfk082.jpg
puppet 頒發證書
http://s3.51cto.com/wyfs02/M00/52/73/wKioL1RkciPyS6XMAADzz04yUfk082.jpg wKioL1RkciPyS6XMAADzz04yUfk082.jpg http://s3.51cto.com/wyfs02/M00/52/73/wKioL1RkciPyS6XMAADzz04yUfk082.jpg

** 錯誤分析:**

puppet 頒發證書

wKioL1RkcN6DJs8IAAGxBPZ1tuU484.jpg

證書申請出錯,在服務端按提示操作,下面也有講如何清除證書重新申請。

5、自動簽發證書

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

對所有來自ewin.com域的機器的請求,都自動簽發證書

簽發證書後服務端檢視證書:

http://s3.51cto.com/wyfs02/M00/53/25/wKioL1RlW4qSDOgmAAER9uvCnXs770.jpg
puppet 頒發證書
http://s3.51cto.com/wyfs02/M00/53/25/wKioL1RlW4qSDOgmAAER9uvCnXs770.jpg wKioL1RlW4qSDOgmAAER9uvCnXs770.jpg http://s3.51cto.com/wyfs02/M00/53/25/wKioL1RlW4qSDOgmAAER9uvCnXs770.jpg

** 以下是擴充内容,當出現問題需要重新申請證書或重新安裝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步

繼續閱讀