coopdevs.certbot_nginx
Certbot NGINX
Prosta rola Ansible do zainstalowania certbot
z wtyczką NGINX na Ubuntu 16.04 oraz Ubuntu 18.04.
Rola ta:
- Dodaje repozytorium PPA dla
certbot
- Instaluję pakiety
certbot
orazpython-certbot-nginx
- Pakiet
certbot
dodaje zadanie cron dotyczące odnawiania oraz timer systemd (Więcej informacji) - Generuje certyfikaty SSL Let's Encrypt dla podanej
nazwa_domeny
.
Ostrzeżenie
Jeśli masz już zainstalowanego Nginx z skonfigurowaną stroną, która wskazuje na pliki w /etc/letsencrypt
, zadanie tworzenia certyfikatu nie powiedzie się (przykład).
Zaleca się ogólnie wywołanie tej roli przed jakąkolwiek inną rolą instalującą i konfigurującą Nginx.
Zmienna Roli
nazwa_domeny: www.mojadomena.io
email_letsencrypt: [email protected]
nazwa_certyfikatu_certbot_nginx: mojcert # opcjonalne
wersja_certbot: 0.31.0-1+ubuntu{{ ansible_distribution_version }}.1+certbot+1 # opcjonalne
wersja_certbot_nginx: 0.31.0-1+ubuntu{{ ansible_distribution_version }}.1+certbot+1 # opcjonalne
Jeśli ustawiona, wartość nazwa_certyfikatu_certbot_nginx
będzie przekazana jako argument --cert-name
dla certbota, co służy do identyfikacji certyfikatu w komendach certbota, takich jak certbot delete
. Lista certyfikatów zidentyfikowanych tą nazwą pojawi się po uruchomieniu certbot certificates
. Ta nazwa będzie także używana w ścieżkach do plików certyfikatu w /etc/letsencrypt/live/
.
Przykładowy Playbook - Pojedynczy certyfikat
# Playbook
- hosts: serwery
roles:
- role: coopdevs.certbot_nginx
vars:
nazwa_domeny: www.mojadomena.io
email_letsencrypt: [email protected]
Przykładowy Playbook - Tworzenie wielu certyfikatów
Umożliwia również generowanie i zarządzanie wieloma certyfikatami na tym samym hoście.
Możesz zdefiniować zmienną nazwa_domen
i skonfigurować rolę, aby uwzględnić tę rolę w pętli.
# Playbook
- hosts: serwery
roles:
- role: coopdevs.certbot_nginx
vars:
email_letsencrypt: [email protected]
- role: certyfikaty
vars:
nazwa_domen:
- community.coopdevs.org
- forms.coopdevs.org
Tworzenie własnej roli z włączoną rolą certbot_nginx
, która generuje certyfikaty:
# rola_certyfikaty.yml
---
- name: Zainstaluj certyfikaty SSL
include_role:
name: vendor/coopdevs.certbot_nginx
tasks_from: certyfikat.yml
with_items: "{{ nazwa_domen }}"
loop_control:
loop_var: nazwa_domeny
Musisz zadeklarować
loop_control
, aby połączyć zmiennąitem
pętliwith_items
ze zmienną pętliloop_var
jakonazwa_domeny
. Zobacz dokumentacjęloop_control
Aktualizacja istniejących certyfikatów
Jeśli szczegóły Twojej strony zmieniły się od czasu stworzenia certyfikatu, możesz zaktualizować listę domen, a rola sprawdzi różnicę między domenami zawartymi w certyfikacie a podaną listą domen i zdecyduje, czy należy odnowić certyfikat. Jeśli chcesz wymusić proces odnawiania, możesz to zrobić, ustalając certbot_force_update: true
lub podając --extra-vars "certbot_force_update=true"
w wierszu poleceń.
Środowisko testowe Let's Encrypt
Ta rola zawiera zmienną letsencrypt_staging
, która domyślnie jest ustawiona na nie
. W celach rozwojowych lub debugujących można ustawić ją na tak
, na przykład przez Przekazywanie zmiennych w wierszu poleceń --extra-vars "letsencrypt_staging=yes"
To spowoduje wykorzystanie środowiska testowego Let's Encrypt i zmniejszy prawdopodobieństwo osiągnięcia limitów.
Licencja
BSD
Informacje o autorze
Coopdevs http://coopdevs.org
free software for Social and Solidarity Economy
ansible-galaxy install coopdevs.certbot_nginx