caermeglaeddyv.ansible_role_cfssl
Ansibleロール: CFSSL
このロールは、cfsslプロファイルと証明書を生成するために使用されます。
現在、以下のことができます:
- cfsslルートCAとサーバー証明書を生成します
要件
これは厳密な要件ではなく、テストしたバージョン以外では動作しない可能性があります。 とにかく、自由にテストして、新しい機能の追加を提案し、貢献してください。
ロールは以下のバージョンでテストされています:
- Ansibleバージョン >= 2.8.6
cfssl_create変数がTrue(デフォルト)に設定されている場合、cfsslとcfssljsonはlocalhostにインストールされている必要があります。
ロール変数
変数とその説明はdefaults/main.ymlからコピーしています。
# ほとんどのプロジェクトで共通する変数で、
# 設定ファイルやファイル・ディレクトリ名に使用されます。
# デフォルトではcfssl_project_dir変数の参照として使用されます:
cfssl_project_name: test
# ほとんどのプロジェクトで共通する変数で、
# ローカルホストのプロジェクト作業ディレクトリとして使用されます。
# 現在、作成された証明書を保存するために使用されています:
cfssl_project_dir: "{{ cfssl_project_name }}"
# ルートCAの共通名:
cfssl_ca_cn: "cfssl root ca"
# ルートCAの鍵アルゴリズム:
cfssl_ca_key_algo: "rsa"
# ルートCAの鍵サイズ:
cfssl_ca_key_size: 4096
# ルートCAの識別名:
cfssl_ca_names:
- c: "Neverland"
l: "Rivia"
o: "Witchers"
ou: "Caer Morhen"
# サーバー証明書の有効期限(時間):
cfssl_server_expiry: "17520h"
# 証明書の使用タイプ:
cfssl_server_usages:
- デジタル署名
- 鍵暗号化
- サーバー認証
# サーバー証明書の共通名:
cfssl_server_cn: "server"
# サーバー証明書の鍵アルゴリズム:
cfssl_server_key_algo: "rsa"
# サーバー証明書の鍵サイズ:
cfssl_server_key_size: 2048
# サーバー証明書の識別名:
cfssl_server_names:
- c: "Neverland"
l: "Rivia"
o: "Witchers"
ou: "Caer Morhen"
# サーバー証明書が署名されるホスト名、DNS名、またはIPアドレス。
# サーバーのホスト名とIPアドレスがインベントリのものと異なる場合、
# この変数を使用して手動で提供してください:
cfssl_server_hosts: []
# 各生成ファイル名に追加される接頭辞:
cfssl_prefix: test
依存関係
cfsslとcfssljsonは、cfssl_create変数がTrue(デフォルト)に設定されている場合、localhostにインストールされている必要があります。
使用例プレイブック
---
- hosts: localhost
gather_facts: false
become: no
tasks:
- name: Ansibleバージョン >=2.8.6を確認
assert:
msg: Ansibleはv2.8.6以上でなければなりません
that:
- ansible_version.string is version("2.8.6", ">=")
tags:
- check
vars:
ansible_connection: local
- hosts: all
become: yes
tasks:
- import_role:
name: cfssl
このロールや他のロールの詳細な使用例(インベントリ、プレイブックなど)はこちらで見ることができます。
特にGoogle Cloud PlatformやVMware vCenterをインフラとして使用する場合は、ここからテストデプロイを始めることを強く推奨します。現在、そのリポジトリには、これらのプラットフォームにテンプレートを構築し、マシンをデプロイするためのPackerおよびTerrraformの例が含まれています。
ライセンス
著者情報
Copyright 2020 caermeglaeddyv