Diese Anleitung zeigt Ihnen, wie Sie ein SSL/TLS-Zertifikat auf Pound installieren, dem schlanken HTTP/HTTPS-Reverse-Proxy. Sie behandelt den Teil, der den meisten Administratoren Schwierigkeiten bereitet: das Erstellen der einzelnen kombinierten PEM-Datei, die Pound in der richtigen Reihenfolge erwartet, sowie das Schreiben eines funktionierenden ListenHTTPS-Blocks, der veraltete Protokolle deaktiviert, Pound auf ein Backend verweist und eine Konfigurationsprüfung übersteht, bevor Sie den Dienst neu starten.
Ein kurzer Hinweis dazu, auf welches Pound sich diese Anleitung bezieht. Das ursprüngliche Apsis-Pound-Projekt wurde im September 2022 eingestellt. Die aktive Weiterentwicklung ging an den von Sergey Poznyakoff gepflegten Fork über unter github.com/graygnuorg/pound, der nun die maßgebliche Quelle ist und in der Version, die von aktuellen Linux-Distributionen paketiert wird. Die folgenden Direktiven entsprechen der modernen 4.x-Serie.
CSR für Pound erstellen
Wenn Sie Ihre CSR bereits erstellt haben und die ausgestellten Zertifikatsdateien vorliegen, springen Sie direkt zu SSL-Zertifikat auf Pound installieren.
Bevor eine Zertifizierungsstelle Ihr Zertifikat ausstellen kann, müssen Sie eine CSR (Certificate Signing Request) einreichen: einen kleinen Textblock, der Ihre Domaindaten und einen öffentlichen Schlüssel enthält, gepaart mit einem privaten Schlüssel, der auf dem Server verbleibt. Sie haben zwei Möglichkeiten:
- Erstellen Sie die CSR automatisch mit unserem CSR-Generator. Das Tool liefert sowohl die CSR als auch den passenden privaten Schlüssel, den Sie anschließend auf den Server übertragen.
- Erstellen Sie die CSR direkt auf dem Server mit OpenSSL, indem Sie unserem Tutorial zum Erstellen einer CSR auf Pound folgen. Der private Schlüssel verbleibt dabei auf dem Server.
Fügen Sie bei der Beantragung des Zertifikats den vollständigen CSR-Block ein, einschließlich der Zeilen —–BEGIN CERTIFICATE REQUEST—– und —–END CERTIFICATE REQUEST—–. Wenn Sie den Inhalt der CSR vor dem Einreichen überprüfen möchten, fügen Sie ihn in unseren CSR-Decoder ein. Bewahren Sie die zugehörige Datei mit dem privaten Schlüssel (in der Regel yourdomain.key) an einem sicheren Ort auf, der nur für root lesbar ist; Sie benötigen sie während der Installation.
SSL-Zertifikat auf Pound installieren
Sobald die CA das Zertifikat ausgestellt hat, erhalten Sie in der Regel:
- Ihr primäres (Server-)Zertifikat, in der Regel eine .crt– oder .pem-Datei, benannt nach Ihrer Domain.
- Ein oder mehrere Zwischenzertifikate, entweder als separate Dateien oder gebündelt in einer .ca-bundle-Datei.
- Den privaten Schlüssel (eine .key-Datei), der zusammen mit Ihrer CSR erstellt wurde.
Pound erwartet eine einzige PEM-Datei, die das Zertifikat, die Zwischenzertifikatskette und den unverschlüsselten privaten Schlüssel enthält. Das graygnuorg-Handbuch ist bei der Reihenfolge eindeutig: zuerst das Zertifikat, dann die Zwischenzertifikate (falls vorhanden), dann der private Schlüssel, in genau dieser Reihenfolge. Das Auslassen der Zertifikatskette ist der häufigste Installationsfehler: Das Zertifikat sieht in einem Desktop-Browser einwandfrei aus, schlägt aber auf Android, auf iOS und in Kommandozeilen-Clients fehl.
Schritt 1: Die kombinierte PEM-Datei erstellen
Diese Anleitung geht davon aus, dass die Zertifikatsdateien in /etc/pound/ abgelegt sind. Passen Sie die Pfade an Ihr Layout an. Verketten Sie die drei Dateien zu einer einzigen PEM-Datei. Das folgende Pipe-zu-tee-Muster führt die Umleitung mit Root-Rechten aus, was notwendig ist, da /etc/pound/ in der Regel nur von root beschreibbar ist (ein einfaches sudo cat … > /etc/pound/… würde fehlschlagen, da die Shell die Ausgabedatei als normaler Benutzer öffnet, bevor sudo überhaupt ausgeführt wird):
cat your_domain.crt intermediate.crt your_domain.key | sudo tee /etc/pound/your_domain.pem > /dev/null
Falls die CA die Zwischenzertifikate als eine einzige .ca-bundle-Datei geliefert hat, verwenden Sie stattdessen diese:
cat your_domain.crt your_domain.ca-bundle your_domain.key | sudo tee /etc/pound/your_domain.pem > /dev/null
Ersetzen Sie die Dateinamen durch Ihre eigenen. Der private Schlüssel innerhalb der kombinierten Datei muss unverschlüsselt sein, da Pound nicht interaktiv startet und daher nicht nach einer Passphrase fragen kann. Sperren Sie die resultierende Datei so ab, dass nur root sie lesen kann:
sudo chown root:root /etc/pound/your_domain.pem
sudo chmod 600 /etc/pound/your_domain.pem
Schritt 2: pound.cfg bearbeiten
Öffnen Sie die Pound-Konfigurationsdatei (üblicherweise /etc/pound/pound.cfg unter Debian und Ubuntu, oder /etc/pound.cfg bei einigen anderen Distributionen) und fügen Sie einen ListenHTTPS-Block hinzu, der auf die kombinierte PEM-Datei verweist. Ein minimaler, moderner Block sieht so aus:
ListenHTTPS
Address 0.0.0.0
Port 443
Cert "/etc/pound/your_domain.pem"
# Nur moderne TLS-Versionen: deaktiviert SSLv2, SSLv3, TLSv1.0 und TLSv1.1,
# lässt TLSv1.2 und TLSv1.3 aktiviert.
Disable TLSv1_1
Ciphers "ECDHE+AESGCM:ECDHE+CHACHA20:!aNULL:!MD5:!DSS"
Service
Backend
Address 127.0.0.1
Port 8080
End
End
End
Ein paar Anmerkungen zu den obigen Direktiven:
- Cert liefert die kombinierte PEM-Datei, die Sie in Schritt 1 erstellt haben. Das Handbuch stellt klar, dass Cert allen anderen SSL-spezifischen Direktiven innerhalb des Listeners vorausgehen muss, halten Sie es also am Anfang des Blocks.
- Disable deaktiviert das genannte Protokoll und jedes ältere Protokoll. Disable TLSv1_1 deaktiviert daher SSLv2, SSLv3, TLSv1.0 und TLSv1.1 und lässt TLSv1.2 und TLSv1.3 aktiv, was den aktuellen Branchenempfehlungen entspricht.
- Ciphers legt die OpenSSL-Cipher-Liste fest (verwendet für TLS 1.2; TLS 1.3 handelt seine eigenen Cipher-Suiten aus). Die obige Liste beschränkt den Proxy auf moderne ECDHE-Suiten mit AEAD; falls Sie ältere Clients unterstützen müssen, verwenden Sie stattdessen das „intermediate“-Profil von Mozilla unter ssl-config.mozilla.org.
- Service / Backend ist der Bereich, in dem Pound den entschlüsselten Datenverkehr weiterleitet. Das Beispiel leitet an ein einzelnes Backend auf der Loopback-Schnittstelle (Port 8080) weiter; ersetzen Sie Adresse und Port durch die Werte, auf denen Ihre Anwendung lauscht, und fügen Sie weitere Backend-Blöcke hinzu, wenn Pound Lastverteilung durchführen soll.
Wenn Pound auch einfaches HTTP entgegennehmen und weiterleiten soll (in der Regel nur, um auf HTTPS umzuleiten, siehe Schritt 4), fügen Sie in derselben Datei einen separaten ListenHTTP-Block hinzu.
Schritt 3: Konfiguration prüfen und Pound neu starten
Bevor Sie den Dienst neu laden, validieren Sie die Konfigurationsdatei, damit ein Tippfehler den Proxy nicht offline stellen kann. Pound verfügt über einen integrierten Prüfmodus:
sudo pound -c -f /etc/pound/pound.cfg
Er beendet sich bei Erfolg mit Status 0 und gibt nichts aus, oder mit Status 1 und einer Fehlermeldung mit Datei- und Zeilenangabe bei einem Fehler. Fügen Sie -v hinzu, wenn Sie eine explizite Bestätigung „configuration OK“ wünschen. Wenn die Prüfung erfolgreich ist, starten Sie Pound neu, damit der neue Listener übernommen wird:
sudo systemctl restart pound
Auf Systemen ohne systemd verwenden Sie stattdessen das ältere Init-Skript:
sudo /etc/init.d/pound restart
Bestätigen Sie, dass der Dienst läuft und auf Port 443 lauscht:
sudo systemctl status pound
sudo ss -tlnp | grep ':443'
Schritt 4 (empfohlen): HTTP auf HTTPS umleiten
Damit Besucher, die die Domain ohne https:// eingeben, auf der sicheren URL landen, fügen Sie einen einfachen HTTP-Listener hinzu, der jede Anfrage mit einer dauerhaften Weiterleitung auf die HTTPS-Version desselben Pfads beantwortet:
ListenHTTP
Address 0.0.0.0
Port 80
Service
Redirect 301 "https://example.com$1"
End
End
Ersetzen Sie example.com durch Ihre eigene Domain. Die Rückreferenz $1 bewahrt den ursprünglichen Anfragepfad. Führen Sie erneut sudo pound -c -f /etc/pound/pound.cfg aus und starten Sie den Dienst anschließend neu.
SSL-Installation testen
Öffnen Sie Ihre Website über https:// in einem Browser und prüfen Sie, ob das Vorhängeschloss geschlossen ist und das Zertifikat zu Ihrer Domain passt. Führen Sie anschließend mit unserem SSL Checker einen tiefergehenden Scan durch, um sofort einen Bericht über das Zertifikat, die Kette sowie die von Pound angebotenen Protokolle und Cipher zu erhalten. Ein sauberes Ergebnis bedeutet, dass Clients auf allen wichtigen Plattformen, einschließlich mobiler Geräte und API-Clients, dem Zertifikat vertrauen werden.
Häufig gestellte Fragen
Das ursprüngliche Apsis-Projekt wurde 2022 aufgegeben. Der aktiv gepflegte Fork ist graygnuorg/pound von Sergey Poznyakoff, aktuell in der 4.x-Serie, und genau dieser wird von den großen Linux-Distributionen als pound paketiert. Falls Sie noch etwas aus der alten 2.x-Reihe betreiben, planen Sie den Umstieg auf eine aktuelle Version: Die Konfigurationsdirektiven in dieser Anleitung gehen vom modernen Fork aus.
Laut Pound-Handbuch: zuerst das Serverzertifikat, dann die Zwischenzertifikate (falls vorhanden), dann der private Schlüssel, alle PEM-kodiert, in dieser einen Datei. Der private Schlüssel darf nicht mit einer Passphrase geschützt sein, da Pound als Daemon startet und keine Möglichkeit hat, danach zu fragen.
Verwenden Sie die Direktive Disable innerhalb des ListenHTTPS-Blocks. Pounds Disable deaktiviert das genannte Protokoll und jedes ältere Protokoll, sodass Disable TLSv1_1 SSLv2, SSLv3, TLSv1.0 und TLSv1.1 deaktiviert und nur TLSv1.2 und TLSv1.3 übrig lässt. Das ist die empfohlene Einstellung für neue Installationen.
Ja. Pound unterstützt SNI, sodass Sie mehrere Cert-Anweisungen innerhalb desselben ListenHTTPS-Listeners deklarieren können (oder Cert auf ein Verzeichnis mit PEM-Dateien verweisen). Pound durchläuft die Zertifikate der Reihe nach und liefert das erste aus, dessen Common Name oder SAN mit dem angeforderten Hostnamen übereinstimmt. Listen Sie daher spezifischere Zertifikate (Hostnamen) vor Wildcards auf.
Führen Sie sudo pound -c -f /etc/pound/pound.cfg aus. Die Option -c prüft die Konfigurationsdatei auf Syntaxfehler und beendet sich, ohne den Proxy zu starten; Exit-Status 0 bedeutet OK, Status 1 bedeutet, dass ein Fehler vorliegt (die Meldung nennt Datei und Zeile). Fügen Sie -v für eine explizite Erfolgsmeldung hinzu.
Ab dem 15. März 2026 sind öffentlich vertrauenswürdige SSL/TLS-Zertifikate auf 200 Tage begrenzt, und das CA/Browser Forum hat weitere Verkürzungen geplant (auf 100 Tage im Jahr 2027 und 47 Tage im Jahr 2029). Planen Sie, die obige Installation rechtzeitig vor jedem Ablauf zu wiederholen, oder automatisieren Sie Erneuerungen mit ACME.
Sparen Sie 10% auf SSL-Zertifikate, wenn Sie noch heute bestellen!
Schnelle Ausstellung, starke Verschlüsselung, 99,99% Browser-Vertrauen, engagierter Support und 25-tägige Geld-zurück-Garantie. Gutscheincode: SAVE10


