bendews.letsencrypt-cloudflare
LetsEncrypt-Cloudflare
この役割は、CloudflareをDNSプロバイダーとして利用する際に、LetsEncrypt証明書を更新するプロセスを簡略化します。
要件
- Python >= 2.6
- OpenSSL(サポートされている場合、自動的にインストールされます)
役割変数
使用可能な変数は以下にリストされています。デフォルト値も含まれています(変更可能な多くの変数についてはdefaults/main.yml
を参照してください)。
必須項目:
letsencrypt_email: ""
cloudflare_email: ""
cloudflare_api_key: "" # 指定されたCloudflareアカウントの「グローバル」APIキー
cloudflare_domain: "" # エントリを作成するためのCloudflareホストDNSゾーン
重要な注意事項:
デフォルトでは、この役割はインベントリのホスト名をコモンネームとして証明書を要求し、生成された/受信した証明書ファイルをすべて /etc/ssl/[Certificate Common Name]
に配置し、すべてのLetsEncryptアカウントファイルを /etc/ssl/lets_encrypt
に配置します。これらのパスはすべてオーバーライド可能です(defaults/main.yml
を参照)。
さらに、証明書ファイルは生成後に別の場所にコピーして名前を変更することもできます。以下の変数を変更してください:
copy_csr_full_path: ""
copy_crt_full_path: ""
copy_key_full_path: ""
copy_intermediate_full_path: "" # include_intermediateを'yes'に設定する必要があります
copy_fullchain_full_path: "" # include_intermediateを'yes'に設定する必要があります
この役割はデフォルトで「ステージング」LetsEncryptエンドポイントを使用します。これにより、機能的には正しいが信頼されていない証明書が生成されます。正当な証明書を生成するには、以下を設定してください:
letsencrypt_production: yes
生成されたファイルは、使用後に以下の変数を指定することで削除できます:
cleanup_all: yes
例のプレイブック
- hosts: servers
tasks:
- name: SSL証明書を更新/ダウンロードする
include_role:
name: letsencrypt-cloudflare
vars:
letsencrypt_email: "[email protected]"
cloudflare_email: "[email protected]"
cloudflare_domain: "abc.com"
cloudflare_api_key: "AAABBBCCCDDDEEE111222333"
letsencrypt_production: yes
include_intermediate: yes
TODO:
- 複数のCNのサポートを追加する
ライセンス
MIT
作者情報
2017年にBen Dewsによって作成されました。
インストール
ansible-galaxy install bendews.letsencrypt-cloudflare
ライセンス
mit
ダウンロード
4.5k
所有者
Engineer with a passion for network & infrastructure automation