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 いいえ はいの場合、CN名とともにSAN情報が追加されます
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

著者情報

このロールは2017年にJooho Leeによって作成されました。

プロジェクトについて

This role help generate self signed certificate.

インストール
ansible-galaxy install Jooho.generate-self-signed-cert
ライセンス
Unknown
ダウンロード
190
所有者