mprahl.lets-encrypt-route-53

lets-encrypt-route-53

To jest rola Ansible, która automatyzuje generowanie podpisanych certyfikatów Let's Encrypt z wykorzystaniem wyzwań DNS na Route 53 (AWS) firmy Amazon.

Należy pamiętać, że jako część tej roli, zainstalowane zostaną openssl, boto, i pyOpenSSL. Jeśli używasz CentOS, RHEL lub Mac OS, rola zainstaluje pip, a następnie boto i pyOpenSSL w wirtualnym środowisku Pythona, ponieważ pakietowane wersje nie są dostępne lub są nieaktualne. Należy również pamiętać, że EPEL jest wymagane na CentOS i RHEL.

Jeśli nie używasz tej roli na Debianie/Ubuntu, CentOS/Red Hat, Mac OS lub FreeBSD, openssl, boto i pyOpenSSL muszą być zainstalowane ręcznie przed użyciem tej roli.

Wymagania

Do użycia tej roli potrzebna jest wersja Ansible 2.7 lub nowsza. Jeśli używasz starszej wersji Ansible, użyj wersji 4.2.1 tej roli. Rola musi być także uruchamiana przez użytkownika root lub za pomocą sudo/become.

Tagowanie roli

  • install - używane do tagowania zadań instalujących wymagane zależności.
  • openssl - używane do tagowania zadań generujących klucze prywatne i CSR.

Zmienne roli

Fakty ustawione przez rolę

  • ler53_cert_changed - jest ustawione na True, gdy certyfikat jest tworzony lub odnawiany.

Wymagane zmienne

  • ler53_route_53_domain - domena Route 53 (AWS), dla której generowany jest certyfikat SSL. Jest to wymagany parametr, jeśli nie jest podany parametr ler53_route_53_zone_id.
  • ler53_route_53_zone_id - identyfikator strefy Route 53 (AWS), dla której generowany jest certyfikat SSL. Jest to wymagany parametr, jeśli nie jest podany parametr ler53_route_53_domain. Użyj tego parametru, jeśli nie masz uprawnień AWS do wykonania akcji route53:ListHostedZones.

Opcjonalne zmienne

  • ler53_cert_common_name - nazwa wspólna dla generowanego certyfikatu SSL. Domyślnie jest to wartość ansible_fqdn.
  • ler53_cert_sans - lista alternatywnych nazw DNS (SAN) dla tej samej domeny, co określona w ler53_route_53_domain, które mają być uwzględnione w CSR. Należy pamiętać, że dla wartości ler53_cert_common_name automatycznie dodawana jest SAN DNS i nie należy jej dodawać do tej listy. Ta zmienna nie jest domyślnie zdefiniowana.
  • ler53_cert_key_usages - lista zastosowań klucza, które mają być uwzględnione w CSR (Let's Encrypt może ograniczać niektóre z nich). Domyślnie to digitalSignature i keyEncipherment.
  • ler53_key_size - rozmiar klucza prywatnego, który jest sparowany z generowanym certyfikatem. Domyślnie to 2048.
  • ler53_cert_dir - ścieżka do katalogu, w którym będą przechowywane klucz prywatny, CSR i certyfikat. Domyślnie to /etc/ssl/{{ ler53_cert_common_name }}.
  • ler53_key_file_name - nazwa pliku klucza prywatnego, który jest sparowany z generowanym certyfikatem. Domyślnie to {{ ler53_cert_common_name }}.key.
  • ler53_cert_file_name - nazwa pliku certyfikatu, który jest generowany. Domyślnie to {{ ler53_cert_common_name }}.crt.
  • ler53_csr_file_name - nazwa pliku żądania podpisania certyfikatu (CSR), które jest generowane. Domyślnie to {{ ler53_cert_common_name }}.csr.
  • ler53_intermediate_file_name - nazwa pliku pośredniego CA pobranego z Let's Encrypt. Domyślnie to {{ ler53_cert_common_name }}.intermediate.pem.
  • ler53_cert_and_intermediate_file_name - nazwa pliku utworzonego z certyfikatem oraz pośrednim CA sklejonym razem. Domyślnie to {{ ler53_cert_common_name }}.pem.
  • ler53_cert_files_mode - tryb/pozwolenia do narzucenia na klucz prywatny, CSR i certyfikat. Domyślnie to 0600.
  • ler53_cert_files_owner - właściciel pliku do narzucenia na klucz prywatny, CSR i certyfikat. Domyślnie to root.
  • ler53_cert_files_group - grupa plików do narzucenia na klucz prywatny, CSR i certyfikat. Domyślnie to root.
  • ler53_account_email - adres e-mail powiązany z twoim kontem Let's Encrypt. Więcej informacji można znaleźć w module Let's Encrypt.
  • ler53_account_key_size - rozmiar klucza konta Let's Encrypt, który jest tworzony, jeśli nie jest obecny. Domyślnie to 2048.
  • ler53_account_key_dir - ścieżka do katalogu, w którym ma być przechowywany klucz konta Let's Encrypt. Domyślnie to /etc/ssl/lets_encrypt.
  • ler53_account_key_file_name - nazwa pliku klucza konta Let's Encrypt. Domyślnie to lets_encrypt_account.key.
  • ler53_cert_remaining_days_before_renewal - minimalna liczba dni pozostałych do odnowienia aktualnego certyfikatu. Domyślnie to 10.
  • ler53_new_cert_when_csr_changes - usuń istniejący certyfikat, gdy CSR się zmienia. Jest to przydatne, gdy zmieniasz nazwę wspólną lub SAN w certyfikacie i chcesz wygenerować nowy certyfikat bez czekania na wygaśnięcie. Domyślnie to false.
  • ler53_cert_extended_key_usages - Dodatkowe ograniczenia (np. uwierzytelnianie klienta, uwierzytelnianie serwera) dotyczące dozwolonych celów, dla których może być użyty klucz publiczny.
  • ler53_service_handlers - lista słowników opisujących serwisowe handlerzy, które mają być uruchomione, gdy certyfikat zostanie zaktualizowany w formacie {'name': 'httpd', 'state': 'restarted'}.
  • ler53_acme_directory - Katalog ACME do użycia. Domyślnie to https://acme-v02.api.letsencrypt.org/directory. Może być przydatne, aby nadpisać to, jeśli chcesz przetestować tę rolę przeciwko testowej instancji Let's Encrypt.
  • ler53_aws_access_key - klucz dostępu do użytkownika AWS, który ma uprawnienia do dodawania rekordów do domeny, dla której generowany jest certyfikat SSL. Jeśli nie jest określony, SDK AWS określi klucz dostępu.
  • ler53_aws_secret_key - klucz tajny użytkownika AWS, który ma uprawnienia do dodawania rekordów do domeny, dla której generowany jest certyfikat SSL. Jeśli nie jest określony, SDK AWS określi klucz tajny.

Przykładowy playbook

- name: Wygeneruj certyfikat SSL dla host.example.com
  hosts: host
  become: yes

  vars:
  - ler53_cert_common_name: host.example.com
  - ler53_route_53_domain: example.com

  roles:
  - mprahl.lets-encrypt-route-53

Licencja

MIT

O projekcie

automates the generation of Let's Encrypt signed certificates with DNS challenges on Amazon's Route 53 (AWS)

Zainstaluj
ansible-galaxy install mprahl.lets-encrypt-route-53
Licencja
Unknown
Pobrania
38.1k
Właściciel