pescobar.dehydrated
ansible-role-dehydrated
dehydrated letsencrypt/acme クライアントをインストール
役割の変数
dehydrated_config_dir: "/etc/dehydrated"
dehydrated_wellknown_dir: "/var/www/dehydrated/"
dehydrated_certs_dir: "{{ dehydrated_config_dir }}/certs"
dehydrated_version: "master"
dehydrated_install_dir: "/usr/local/bin"
dehydrated_contact_email: "[email protected]"
dehydrated_domains:
- "{{ ansible_fqdn }}"
dehydrated_hook_script_path: "{{ dehydrated_config_dir }}/hook.sh"
# 新しい証明書がデプロイされるときに実行されるコマンド
# このコマンドは、dehydrated フックスクリプトの deploy_cert() 関数で定義されています
dehydrated_hook_deploy_cert_cmd: |
systemctl reload httpd
例プレイブック (geerlingguy.apacheを使用)
- name: SSL付きのウェブサーバーを設定
hosts: webserver
gather_facts: True
remote_user: root
vars:
dehydrated_contact_email: "[email protected]"
vhost_public_domain: mycoolweb.com
apache_global_vhost_settings: |
DirectoryIndex index.php index.html
Alias /.well-known/acme-challenge/ {{ dehydrated_wellknown_dir }}
<Directory {{ dehydrated_wellknown_dir }} >
Require all granted
</Directory>
apache_vhosts:
- servername: "{{ vhost_public_domain }}"
serveralias: "www.{{ vhost_public_domain }}"
serveradmin: "{{ dehydrated_contact_email }}"
documentroot: "/var/www/{{ vhost_public_domain }}"
extra_parameters: |
# letsencryptのリクエストを除いて全てのトラフィックをhttpsにリダイレクト
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} !^/.well-known/
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
apache_vhosts_ssl:
- servername: "{{ vhost_public_domain }}"
serveralias: "www.{{ vhost_public_domain }}"
serveradmin: "{{ dehydrated_contact_email }}"
documentroot: "/var/www/{{ vhost_public_domain }}"
certificate_file: "{{ dehydrated_certs_dir }}/{{ vhost_public_domain }}/cert.pem"
certificate_key_file: "{{ dehydrated_certs_dir }}/{{ vhost_public_domain }}/privkey.pem"
certificate_chain_file: "{{ dehydrated_certs_dir }}/{{ vhost_public_domain }}/fullchain.pem"
# この変数は "geerlingguy.apache" ロールに必要で、ssl証明書が存在する場合のみ
# ssl vhostsが設定されます。
apache_ignore_missing_ssl_certificate: false
tasks:
- name: Apacheウェブサーバーをインストールして設定(まだSSLなし)
import_role:
name: geerlingguy.apache
- name: dehydrated letsencrypt/acme クライアントをインストール
import_role:
name: ansible-role-dehydrated
# ハンドラーを実行してApacheが .well-known フォルダーを有効にし
# dehydratedがssl証明書をリクエストします
- meta: flush_handlers
- name: 再度Apacheウェブサーバーをインストールして設定(ssl vhostsを設定)
import_role:
name: geerlingguy.apache
ライセンス
GPLv3
著者情報
パブロ・エスコバル
インストール
ansible-galaxy install pescobar.dehydrated
ライセンス
Unknown
ダウンロード
1.4k
所有者
Systems engineer. Linux/HPC/Cloud/BioInfo