usegalaxy_eu.certbot
Rola Ansible: Certbot (dla Let's Encrypt)
Instaluje i konfiguruje Certbot (dla Let's Encrypt).
Wymagania
Jeśli instalujesz z kodu źródłowego, potrzebny jest Git. Możesz zainstalować Git używając roli geerlingguy.git
.
Zmienne Roli
Zmienna certbot_install_from_source
kontroluje, czy Certbot ma być zainstalowany z Git czy zarządzania pakietami. Domyślnie jest to ostatnie, więc zmienna ma wartość no
.
certbot_auto_renew: true
certbot_auto_renew_user: "{{ ansible_user }}"
certbot_auto_renew_hour: 3
certbot_auto_renew_minute: 30
Domyślnie ta rola konfiguruje zadanie cron, które uruchamia się pod podanym kontem użytkownika o danej godzinie i minucie, każdego dnia. Domyślnie uruchamia certbot renew
(lub certbot-auto renew
) codziennie o 03:30:00 przez użytkownika, którego używasz w skrypcie Ansible. Zaleca się ustawienie własnego użytkownika/godziny/minuty, aby odnawianie odbywało się w czasie niskiego ruchu i było realizowane przez konto niebędące kontem root.
Instalacja z Git
Możesz zainstalować Certbot z jego repozytorium Git, jeśli chcesz. Może to być przydatne w kilku przypadkach, zwłaszcza gdy starsze dystrybucje nie mają dostępnych pakietów Certbota (np. CentOS < 7, Ubuntu < 16.10 i Debian < 8).
certbot_install_from_source: no
certbot_repo: https://github.com/certbot/certbot.git
certbot_version: master
certbot_keep_updated: yes
Opcje repozytorium Certbota Git. Aby zainstalować z kodu źródłowego, ustaw certbot_install_from_source
na yes
. Klonuje to skonfigurowane certbot_repo
, przestrzegając ustawienia certbot_version
. Jeśli certbot_keep_updated
jest ustawione na yes
, repozytorium jest aktualizowane za każdym razem, gdy ta rola jest uruchamiana.
certbot_dir: /opt/certbot
Katalog, w którym Certbot będzie klonowany.
Dostawcy DNS
Jeśli korzystasz z dostawcy DNS, takiego jak Cloudflare, dostępne są następujące zmienne:
certbot_dns_provider: cloudflare
certbot_dns_credentials:
api_token: twój_token_api_dostawcy_dns
certbot_dns_provider_propagation_seconds: 60
Prawidłowe opcje dla certbot_dns_credentials
różnią się w zależności od dostawcy DNS. Zobacz certbot --help all
po szczegóły.
Zależności
Brak.
Przykład Skryptu
- hosts: serwery
vars:
certbot_auto_renew_user: twoja_nazwa_użytkownika_tutaj
certbot_auto_renew_minute: 20
certbot_auto_renew_hour: 5
# certbot_agree_tos: "--agree-tos" # Odkomentuj, aby się zgodzić
roles:
- geerlingguy.certbot
Po instalacji możesz tworzyć certyfikaty, używając skryptu certbot
(lub certbot-auto
), który domyślnie jest zainstalowany w skonfigurowanym certbot_dir
(gdy korzystasz z Git). Oto kilka przykładowych poleceń do konfigurowania certyfikatów z Certbot:
# Automatycznie dodaj certyfikaty dla wszystkich wirtualnych hostów Apache (używaj ostrożnie!).
/opt/certbot/certbot-auto --apache
# Generuj certyfikaty, ale nie modyfikuj konfiguracji Apache (bezpieczniej).
/opt/certbot/certbot-auto --apache certonly
Domyślnie ta rola dodaje zadanie cron, które odnawia wszystkie zainstalowane certyfikaty raz dziennie o godzinie i minucie przez Ciebie wybranej.
Możesz przetestować automatyczne odnawianie (bez faktycznego odnawiania certyfikatu) za pomocą polecenia:
/opt/certbot/certbot-auto renew --dry-run
Zobacz pełną dokumentację i opcje na stronie Certbot.
Licencja
MIT / BSD
Informacje o Autorze
- Ta rola została stworzona w 2016 roku przez Jeffa Geerlinga, autora Ansible for DevOps.
- Została dalej zmodyfikowana i utrzymywana przez Galaxy Europe.
Certbot with custom additions
ansible-galaxy install usegalaxy_eu.certbot