netzwirt.simple-pki

ansible-simple-pki

在Ubuntu/Debian上创建一个简单的PKI。主要基于 PKI-Tutorial

需求

一些关于openssl和PKI的基本知识。

角色变量

证书主题:

simplepki_domainComponent_tld: "com"
simplepki_domainComponent_domain: "example"
simplepki_organizationName: "示例公司"

服务器证书请求:

simplepki_server_certs:
- { fqdn: 'example.com' }
- { fqdn: 'anothor.com', altnames: ['sub.another.com','mydomain.com'] }

用户证书请求:

simplepki_user_certs:
- { username: 'fred', fullname: '弗雷德·弗林斯通', email: '[email protected]' }
- { username: 'john', fullname: '约翰·示例', email: '[email protected]' }

撤销证书:

simplepki_revocation_list:
- fred
- anothor.com

仅创建服务器证书

ansible-playbook playbook.yml --tags=servercert

从命令行续订证书

传递额外变量 simplepki_renew_certificates。此变量应仅作为命令行参数传递。

ansible-playbook --extra-vars '{"simplepki_renew_certificates": ["fred","john"]}'

从命令行撤销证书

传递额外变量 simplepki_revocation_list

ansible-playbook --extra-vars '{"simplepki_revocation_list": ["fred","john"]}'

依赖项

示例剧本

- hosts: pki
  roles:
     - { role: netzwirt.simple-pki }

撤销备忘单

撤销证书:

有效的撤销原因列表:

  • 未指定

  • 密钥泄露

  • CA泄露

  • 隶属关系变更

  • 被替代

  • 停业

  • 持证人暂时停用

    openssl ca -config etc/signing-ca.conf -revoke certs/fred.sha256.2048.crt -crl_reason unspecified

创建CRL:

openssl ca -gencrl -config etc/signing-ca.conf -out crl/signing-ca.crl

无CRL检查证书:

openssl verify -verbose -CAfile ca/chained-ca.sha256.2048.crt certs/fred.sha256.2048.crt

有CRL检查证书:

openssl verify -crl_check_all -verbose -CAfile ca/chained-ca.sha256.2048.crt \
         -CRLfile crl/signing-ca.crl certs/fred.sha256.2048.crt

许可证

BSD

作者信息

netzwirt

关于项目

Simple PKI for Ubuntu/Debian

安装
ansible-galaxy install netzwirt.simple-pki
许可证
Unknown
下载
116
拥有者