L-P.acmetool

ansible-role-acmetool

Zainstaluj, skonfiguruj i uruchom acmetool, aby generować certyfikaty TLS Let's Encrypt.

acmetool zostanie skonfigurowany w trybie redirector. Będzie nasłuchiwał na porcie 80 i przekierowywał (HTTP 308) wszystko, co nie jest zapytaniem o wyzwanie.

Szczegóły znajdziesz w acme na GitHubie.

Wymagania

  • Wymagane jest become: true, ponieważ większość działań musi być wykonywana jako root, a reszta jako acme, który zostanie utworzony przez rolę.

  • Musisz otworzyć port 80/TCP, aby acmetool mógł obsługiwać wyzwania.

  • Ponieważ tryb redirector jest używany domyślnie, nie jest wymagany żaden serwer HTTP. Możesz zainstalować dowolny serwer, który chcesz używać po uruchomieniu tej roli, aby mógł korzystać z wygenerowanych certyfikatów.

  • Wybierz swojego dostawcę i ustaw jego punkt końcowy API w acmetool_server, zobacz poniżej.

  • Pakiet cron jest wymagany do automatycznego odnawiania.

Zmienne roli

Wymagane

# Adres używany do rejestracji domen w LetsEncrypt.
acmetool_email: "[email protected]"
# lista domen do zarejestrowania oddzielona spacjami.
acmetool_domains: "www.example.com example.com"

Inne

# Serwer CA. Domyślnie jest to serwer acme-staging do celów testowych.
# Musisz zmienić to na serwer produkcyjny:
# https://acme-v01.api.letsencrypt.org/directory
acmetool_server: "https://acme.example.com/directory"

# Zmień to na RSA, jeśli twój serwer nie obsługuje kluczy EC (np. murmur).
acmetool_key_type: "ecdsa"

# Jeśli nie ufasz acmetool, aby uruchamiać hooki jako root (sudo), ustaw to na false.
acmetool_enable_hooks: false

Zobacz domyślne wartości dla pełnej listy.

Przykład Playbooka

- hosts: all
  roles:
    - { role: "L-P.acmetool", become: true }

Ponieważ w Debianie usługi są automatycznie włączane i uruchamiane z ich domyślną konfiguracją po zainstalowaniu, nginx będzie miał problem z instalacją i zostawi dpkg w półzepsutym stanie.
Aby tego uniknąć, możesz uruchomić następujący play między instalacją acmetool a nginx. Uruchomi się on tylko, jeśli nginx nie jest jeszcze skonfigurowany.

- hosts: all
    become: true
    tasks:
    - name: Zatrzymaj acmetool
      tags: "nginx"
      command: "service acmetool stop"
      args:
        creates: "/etc/nginx/nginx.conf"

Możesz to dostosować do każdej innej usługi, która ma ten sam problem.

Licencja

MIT

Zainstaluj
ansible-galaxy install L-P.acmetool
Licencja
mit
Pobrania
355
Właściciel