Jooho.generate-self-signed-cert

Ansible 角色:生成自签名证书

此角色帮助生成自签名证书。它将创建以下组合:

案例 1:

  • 根 CA
  • 中间 CA
  • 服务器证书(带 SAN/不带 SAN)

案例 2:

  • 根 CA
  • 服务器证书(带 SAN/不带 SAN)

要求

yum

角色变量

名称 默认值 是否必需 描述
cert_base_dir /root/cert_base 默认证书基础目录
root_cert_bit 4096 默认根证书位数
intermediate_cert_bit 4096 默认中间证书位数
server_cert_bit 2048 默认服务器证书位数
serial_number 1000 证书常见信息 - 序列号
countryName CA 证书常见信息 - 国家名称
stateOrProvinceName ON 证书常见信息 - 省份名称
localityName MILTON 证书常见信息 - 地区名称
organizationName RED HAT 证书常见信息 - 组织名称
organizationalUnitName SCE 证书常见信息 - 组织单位名称
emailAddress test@test.com 证书常见信息 - 电子邮件地址
root_commonName Root CA 根证书信息 - 根 CN
intermediate_commonName Intermediate CA 中间证书信息 - 中间 CN
cert_commonName lb.example.com 服务器证书信息 - 服务器证书 CN
use_intermediate_cert yes 如果为否,则不签发中间证书
use_san yes 如果为是,SAN 信息将与 CN 名称一起添加
san_dns 添加多个 SAN DNS 列表
san_ip 添加多个 SAN IP 列表
overwrite_server_cert yes 删除基于 CN 名称的服务器证书目录
clean_all no 重新创建所有证书

依赖关系

示例剧本

- name: 示例剧本
  hosts: localhost
  gather_facts: false

   roles:
      - { role: Jooho.generate-self-signed-cert }

示例变量

通配符证书:

cert_commonName: *.cloudapps.example.com

SAN DNS 列表:

san_dns:
 - { index: 1, dns: lb.example.com}
 - { index: 2, dns: master-cluster.example.com}

SAN IP 列表:

san_ip:
 - { index: 1, ip: 192.168.200.205}

注意

私钥和证书的权限应为 400/444,但此 Ansible 角色使用 777/777,因为这些文件会被复制到其他地方。复制后,建议更改权限。

有用命令

openssl x509 -in {{cert_base_dir}}/{{server_cert_commonName}}/{{server_cert_commonName}}.cert.pem -text
openssl x509 -in /root/cert_base/lb.example.com/lb.example.com.cert.pem -text

参考文档

许可证

BSD/MIT

作者信息

此角色由 Jooho Lee 于 2017 年创建。

关于项目

This role help generate self signed certificate.

安装
ansible-galaxy install Jooho.generate-self-signed-cert
许可证
Unknown
下载
190
拥有者