Zurück zur Startseite

Automatisierung von TLS-Zertifikaten in Angie mit ACME-Modul: Anleitung

Der Artikel widmet sich der Einrichtung des ACME-Moduls im Angie-Webserver für die automatische Beschaffung und Erneuerung von TLS-Zertifikaten. Er behandelt HTTP- und DNS-Verifizierungsmethoden, einschließlich Wildcard-Zertifikaten, mit praktischen Konfigurationsbeispielen.

TLS-Zertifikate in Angie automatisieren: Vollständige ACME-Anleitung
Advertisement 728x90

Automatisierte TLS-Zertifikate in Angie: Vollständiger ACME-Modul-Leitfaden

Das ACME-Modul im Angie-Webserver automatisiert die Beschaffung und Erneuerung von TLS-Zertifikaten, einschließlich Wildcard-Zertifikaten, mit minimalem Aufwand. Die integrierte Unterstützung für das ACME-Protokoll macht externe Tools wie certbot überflüssig und vereinfacht die Einrichtung und Verwaltung der Website-Sicherheit.

Einrichtung von HTTP-Challenges für Standardzertifikate

Um Zertifikate über HTTP-Challenges (HTTP-01) zu erhalten, definieren Sie zunächst Eigenschaften in der acme_client-Direktive im http-Kontext. Hier ein Beispiel für RSA- und ECDSA-Zertifikate:

http {
  resolver 127.0.0.53 ipv6=off;
  acme_client rsa      https://acme-v02.api.letsencrypt.org/directory key_type=rsa;
  acme_client ecdsa    https://acme-v02.api.letsencrypt.org/directory;
}

Richten Sie dann Ihren Server so ein, dass er diese Zertifikate verwendet:

Google AdInline article slot
server {
  listen 443 ssl;
  server_name site.ru www.site.ru test.site.ru company.ru;
  acme rsa;
  acme ecdsa;
  ssl_certificate         $acme_cert_rsa;
  ssl_certificate_key $acme_cert_key_rsa;
  ssl_certificate         $acme_cert_ecdsa;
  ssl_certificate_key $acme_cert_key_ecdsa;
}

Angie öffnet automatisch Port 80 für HTTP-Challenges, sofern nicht anders über acme_http_port angegeben. Überwachen Sie die Zertifikatsausstellung über error_log oder die API, mit Meldungen auf Notice-Ebene bei erfolgreichen Erneuerungen.

Wildcard-Zertifikate über DNS-Verifizierung erhalten

DNS-Challenges (DNS-01) sind für Wildcard-Zertifikate erforderlich, die Zweitdomänen und alle Drittlevel-Subdomänen abdecken. Nutzen Sie Zonen-Delegation, indem Sie DNS-Einträge im Hosting-Panel erstellen:

_acme-challenge.site.ru. 60    IN      NS       ns.site.ru.
             ns.site.ru. 60    IN       A       {IP-des-Servers}

Richten Sie dann acme_client mit dem Parameter challenge=dns ein:

Google AdInline article slot
http {
  resolver 127.0.0.53 ipv6=off;
  acme_client ecdsa    https://acme-v02.api.letsencrypt.org/directory challenge=dns;
  server {
    listen 443 ssl;
    server_name site.ru *.site.ru;
    acme ecdsa;
    ssl_certificate         $acme_cert_ecdsa;
    ssl_certificate_key $acme_cert_key_ecdsa;
  }
}

Angie öffnet Port 53 für DNS-Abfragen; verwenden Sie acme_dns_port, um Konflikte mit lokalen Diensten zu vermeiden.

Alternative Methoden und erweiterte Funktionen

Wenn Standard-Challenges nicht möglich sind, unterstützt das ACME-Modul benutzerdefinierte Hooks, um Dateierstellung oder DNS-Eintragsverwaltung an externe Anwendungen auszulagern. Es unterstützt auch die TLS-ALPN-01-Methode, nützlich, wenn Port 80 nicht geöffnet werden kann, aktiviert über challenge=alpn.

Wichtige Vorteile

  • Automatisierung: Das ACME-Modul von Angie automatisiert die Ausstellung und Erneuerung von TLS-Zertifikaten, einschließlich Wildcards, vollständig ohne manuelle Eingriffe.
  • Flexibilität: Unterstützt HTTP-01-, DNS-01- und TLS-ALPN-01-Challenges sowie benutzerdefinierte Hooks für komplexe Setups.
  • Performance: Zertifikate werden in den Server-Speicher geladen und können mit ssl_certificate_cache für Optimierung gecacht werden.
  • Kompatibilität: Funktioniert mit jedem ACME-kompatiblen Anbieter wie Let's Encrypt.
  • Überwachung: Integriert sich in error_log und API zur Statusverfolgung von Zertifikaten.

Praktische Tipps zur Umsetzung

Beim Einrichten des ACME-Moduls beachten Sie diese Punkte:

Google AdInline article slot
  • Testen: Nutzen Sie die Staging-Umgebung von Let's Encrypt für erste Einrichtungen, um Rate-Limits zu vermeiden.
  • Sicherheit: Stellen Sie sicher, dass der resolver-DNS-Server vertrauenswürdig ist, und deaktivieren Sie IPv6 bei Bedarf.
  • Caching: Konfigurieren Sie ssl_certificate_cache, um die Performance zu steigern, insbesondere bei Zertifikatsvariablen.
  • Ports: Steuern Sie Challenge-Ports mit acme_http_port und acme_dns_port, um Konflikte zu verhindern.

Das ACME-Modul von Angie ist ein mächtiges Werkzeug, das die TLS-Zertifikatsverwaltung vereinfacht, Betriebskosten senkt und die Sicherheit von Webanwendungen steigert. Die nahtlose Integration ermöglicht Entwicklern und Admins, sich auf Kernaufgaben zu konzentrieren statt auf Routinewartung.

— Editorial Team

Advertisement 728x90

Weiterlesen