jaywink.letsencrypt

Status budowy Ansible Galaxy Licencja

Ansible LetsEncrypt

Rola do automatyzacji certyfikatów LetsEncrypt.

Stabilność: beta.

Wymagana wersja Ansible: 2.x

Co to robi?

Ta rola zainstaluje oficjalnego klienta Certbot, zainstaluje go i wyda lub odnowi certyfikat dla wybranego domeny.

Funkcjonalność obejmuje:

  • Testowanie na Ubuntu 14.04 i Debianie 8, Debianie 9
  • Tylko jedna domena na rolę
  • Działa tylko w trybie certonly

PR-y są mile widziane, aby dodać więcej funkcji.

Instalacja

Możesz zainstalować rolę bezpośrednio z Galaxy w następujący sposób:

ansible-galaxy install jaywink.letsencrypt

Szczegóły

Lokalizacja i wersja klienta Cerbot

Ubuntu 14.04, Debian 8
  • Klient zostanie zainstalowany w /opt/certbot jako root
  • Każde uruchomienie pobierze kod klienta Certbot z udostępnionej wersji. Możesz ustawić konkretną wersję Certbot, używając zmiennej letsencrypt_certbot_version.
Debian 9
  • Klient zostanie zainstalowany przez APT w standardowej lokalizacji zgodnie z najnowszą wersją w repozytoriach.

Ważne informacje

  • Lista usług, które należy zatrzymać przed uzyskaniem nowego certyfikatu i (ponownie) uruchomić po jego uzyskaniu, może być skonfigurowana przy użyciu zmiennej letsencrypt_pause_services.

  • Używany jest tryb certonly, co oznacza, że nie ma automatycznej instalacji serwera webowego.

  • Po wydaniu certyfikatu można go znaleźć w /etc/letsencrypt/live/<nazwa_domeny>

    • Wskazówka, użyj tego w swojej konfiguracji Apache2, na przykład w swojej głównej roli. Upewnij się, aby nie próbować uruchamiać Apache2 z aktywnym wirtualnym hostem bez uprzedniego uruchomienia roli LetsEncrypt!

      SSLCertificateFile /etc/letsencrypt/live/{{ letsencrypt_domain }}/cert.pem
      SSLCertificateKeyFile /etc/letsencrypt/live/{{ letsencrypt_domain }}/privkey.pem
      SSLCertificateChainFile /etc/letsencrypt/live/{{ letsencrypt_domain }}/chain.pem
      
  • Uwaga! Jeśli ta rola nie powiedzie się w części związanej z żądaniem certyfikatu, mogłeś zatrzymać usługi - zachowaj ostrożność!

  • Jeśli certyfikat był wcześniej żądany, ta rola automatycznie spróbuje go odnowić, jeśli to możliwe. Wyłącz tę funkcjonalność, ustawiając letsencrypt_force_renew na false. W takim przypadku nie będzie podejmowana próba odnowienia, jeśli certyfikat nie wymaga odnowienia.

  • Subdomena www. zostanie automatycznie zażądana wraz z certyfikatem.

    • Aby wyłączyć to zachowanie, ustaw letsencrypt_request_www na false w swoich zmiennych.

Wymagania

Testowane z następującymi:

  • Ubuntu 14.04 i Debian 8, Debian 9
  • Apache2 i Nginx
  • Ansible 2.x

Zmienne roli

Wymagane

  • letsencrypt_domain - Domena, dla której jest certyfikat.
  • letsencrypt_email - Twój e-mail jako właściciela certyfikatu.

Opcjonalne

  • letsencrypt_certbot_args - Dodatkowe argumenty wiersza poleceń, które mają być przekazane do Certbotu - będą połączone z letsencrypt_certbot_default_args. Zobacz dokumentację Certbota w jakich argumentach możesz skorzystać.
  • letsencrypt_certbot_default_args - Zobacz defaults/main.yml, jakie są domyślne argumenty. Możesz również dodać, aby nadpisać wszystkie argumenty dla Certbota, na przykład używając innego pluginu, ustawić je za pomocą tej zmiennej.
  • letsencrypt_certbot_verbose - Spraw, aby Certbot wyświetlał dane w konsoli (domyślnie true).
  • letsencrypt_certbot_version - Ustaw konkretną wersję Certbota, na przykład tag lub gałąź git. Należy zauważyć, że najniższa wspierana wersja Certbota to 0.6.0. Nie ma to wpływu na Debiana 9.
  • letsencrypt_force_renew - Czy zawsze próbować odnowić certyfikat, domyślnie true.
  • letsencrypt_pause_services - Lista usług do zatrzymania/uruchomienia podczas wywoływania Certbota.
  • letsencrypt_request_www - Automatycznie żądaj www. (domyślnie true).

Przykładowa książka

Ta rola działa najlepiej, gdy jest dołączona tuż przed główną rolą twojej witryny, na przykład. Lub może być używana w indywidualnej książce, na przykład jak poniżej.

Ta rola powinna uzyskać uprawnienia roota na docelowym hoście.

---
- hosts: myhost
  become: yes
  become_user: root
  roles:
    - role: ansible-letsencrypt
      letsencrypt_email: [email protected]
      letsencrypt_domain: example.com
      letsencrypt_pause_services:
        - apache2

Licencja

MIT

Informacje o autorze

Jason Robinson (@jaywink) - mail@jasonrobinson.me - https://jasonrobinson.me - https://twitter.com/jaywink

Szczególne podziękowania dla Stefana Grönke (@gronke) za jego pracę nad rozwijaniem tej roli.

Zobacz CONTRIBUTORS, aby uzyskać pełną listę współpracowników.

O projekcie

A role to automate LetsEncrypt certificates.

Zainstaluj
ansible-galaxy install jaywink.letsencrypt
Licencja
Unknown
Pobrania
6.1k
Właściciel
Pythonista and Djangonaut. Federated social web hacker. Author of Socialhome. Extinction Rebel.