LIP-Computing.ssl-certs

ansible-role-ssl-certs

Generiere und/oder stelle ein SSL-Zertifikat bereit

Verfügbar auf Ansible Galaxy: LIP-Computing.ssl-certs

Beispiele

Beispiel zur Erstellung eines selbstsignierten SSL-Zertifikats

 - hosts: all
   roles:
     - LIP-Computing.ssl-certs

Dies erstellt ein Zertifikat und einen privaten Schlüssel in:

  • /etc/ssl/myserver.mydomain.com.key
  • /etc/ssl/myserver.mydomain.com.pem

Beispiel zur Bereitstellung eines SSL-Zertifikats

Hier sind zwei Beispiele für Playbooks:

 - hosts: all
   roles:
    - role: LIP-Computing.ssl-certs
      ssl_certs_common_name: "example.com"
 - hosts: all
   roles:
    - role: LIP-Computing.ssl-certs
      ssl_certs_common_name: "myhost.mydomain"
      ssl_certs_country: "PT"
      ssl_certs_locality: "Lissabon"
      ssl_certs_organization: "LIP"
      ssl_certs_state: "Lissabon"
      ssl_certs_path_owner: "root"
      ssl_certs_path_group: "root"
      ssl_certs_generate_dh_param: true

Das Zertifikat muss in files/ssl/example.com.key und files/ssl/example.com.pem abgelegt werden. Wenn sie nicht existieren, werden sie als selbstsigniertes Zertifikat in /etc/ssl/example.com.key und /etc/ssl/example.com.pem mit dem angegebenen gemeinsamen Namen generiert.

Beispiel zur Bereitstellung eines SSL-Zertifikats mit lokalen Schlüssel/pem-Dateien

 - hosts: all
   roles:
    - role: LIP-Computing.ssl-certs
      ssl_certs_local_privkey_path: '/path/to/example.com.key'
      ssl_certs_local_cert_path: '/path/to/example.com.pem'

Beispiel zur Bereitstellung eines SSL-Zertifikats, das in Variablen gespeichert ist

Ein SSL-Zertifikat und der Schlüssel sind einfach Text, der als Variable gespeichert werden kann, was nützlich ist, wenn man ansible vault verwendet.

Beispiel für Variablendaten, beachten Sie, wie der Textblock eingerückt ist. Dies ist notwendig, um den Text korrekt über das Template-Modul einzufügen.

ssl_certs_local_privkey_data: |
  -----BEGIN RSA PRIVATE KEY-----
  MIIEpQIBAAKCAQEAu2uhv2cjoN4F3arUZ5cDrwuxf3koCwrKSK75as0WZoxYrpyw
  Lyx9ldyD4nGabVep0R/uAgQ/HqEf2jC7WIvGcEq8bHB9PyEEWzT8IjKQX0YTc//4
  gkHBkpyU0fVrj5nkc30EIbcbH4RHRDwye4VhP/iCPchDG7OqvCyOdm8=
  -----END RSA PRIVATE KEY-----
ssl_certs_local_cert_data: |
  -----BEGIN CERTIFICATE-----
  MIIDmzCCAoOgAwIBAgIJAKWMlgLwrBzXMA0GCSqGSIb3DQEBCwUAMGQxCzAJBgNV
  QAL3naEfBSZBl0tBohuxn8Xd3yLPuKGUOk3pSL1IJy0Ca6p+QwjkaZUd9X3gf1V2
  SEfYSaGPvfIlSuHIshno
  -----END CERTIFICATE-----

Dann einfach die Rolle wie im ersten Beispiel einfügen.

Beispiel zur Verwendung dieser Rolle mit meiner Nginx-Rolle: jdauphant.nginx

 - hosts: all
   roles:
     - LIP-Computing.ssl-certs
       ssl_certs_generate_dh_param: true
     - role: jdauphant.nginx
       nginx_configs:
          ssl:
               - ssl_certificate_key {{ssl_certs_privkey_path}}
               - ssl_certificate     {{ssl_certs_cert_path}}
               - ssl_dhparam         {{ssl_certs_dhparam_path}}
       nginx_sites:
          default:
               - listen 443 ssl
               - server_name _
               - root "/usr/share/nginx/html"
               - index index.html
Über das Projekt

Generate and/or deploy SSL certificate

Installieren
ansible-galaxy install LIP-Computing.ssl-certs
GitHub Repository
Lizenz
bsd-2-clause
Downloads
70
Besitzer
LIP Computing group