답변:
서버 (puppetmaster)에서 다음을 실행하십시오.
puppetca --generate <NAME>
그런 다음 서버에서 클라이언트로 다음을 복사하십시오.
/var/lib/puppet/ssl/certs/<NAME>.pem
/var/lib/puppet/ssl/certs/ca.pem
/var/lib/puppet/ssl/private_keys/<NAME>.pem
<NAME>
호스트 이름 이외의 것으로 서명 하려면 다음을 사용하십시오.
puppetd --fqdn=<NAME>
데몬을 실행하는 경우 /etc/puppet/puppet.conf에 추가하십시오.
[puppetd]
certname=<NAME>
puppet cert --generate <NAME>
참조 serverfault.com/a/457364/71452
호스트 데이터베이스가있는 경우 자동 서명 기능을 사용할 수 있습니다. 당신의에서 puppet.conf
파일의에서 [puppetmasterd]
, 추가 :
autosign = /path/to/autosign.conf
그런 다음 crontab을 사용하여이 파일을 생성하십시오. 자동 서명 파일은 꼭두각시 마스터에 처음 연결할 때 자동 서명 할 호스트 목록입니다. LDAP를 사용하여 퍼펫 호스트를 구성하므로 cron은 다음과 같습니다.
* * * * * root /usr/bin/ldapsearch -x '(objectClass=puppetClient)' cn | /bin/grep ^cn | /bin/sed 's!^cn: !!' > /etc/puppet/autosign.conf
iClassify를 사용하는 사람들이 동일한 작업을 수행하기 위해 쿼리를 작성할 수 있다고 확신합니다.
물론 네트워크를 신뢰해야합니다. 나는 이것을 EC2에서 사용합니다. 내 puppetmaster 서버는 신뢰할 수있는 다른 그룹의 연결 만 허용하는 그룹에 있습니다. 귀하의 puppetmaster가 인터넷에 연결되어 있으면이 작업을 수행하지 않는 것이 좋습니다.
간단한 답변 : 새로운 요청에 자동으로 서명합니다. 이것은 물론 꼭두각시 마스터에 연결된 시스템을 맹목적으로 신뢰하기 때문에 위험합니다. 이는 수동 서명이 필요한 목적입니다.
[puppetmasterd]
autosign = true
서명 할 키를 결정하는 데 사용할 false 및 파일을 지정할 수 있습니다.
또 다른 옵션은 Capistrano 와 같은 도구를 사용하는 것입니다 . 여기서 puppetmaster 노드를 지정하고 클라이언트 인스턴스 노드를 작성하고 다음 작업을 수행하십시오.
[puppetmasterd]
섹션 제목은 이제입니다 [master]
. 자세한 내용은 docs.puppetlabs.com/guides/tools.html 을 참조하십시오.
서버 (puppetmaster)에서 다음을 실행하십시오.
puppetca --generate <NAME>
그런 다음 서버에서 클라이언트로 다음을 복사하십시오.
/var/lib/puppet/ssl/certs/<NAME>.pem
/var/lib/puppet/ssl/certs/ca.pem
/var/lib/puppet/ssl/private_keys/<NAME>.pem
호스트 이름 이외의 다른 것을 사용하려면 다음을 사용하십시오.
puppetd --fqdn=<NAME>
데몬을 실행하는 경우 /etc/puppet/puppet.conf에 추가하십시오.
[puppetd]
certname=<NAME>