Bei einer direkt gehosteten ownCloud-Serverinstanz hinter einem Apache VirtualHost ist es üblich, eine öffentliche Domain auf den Server zu verweisen, die HTTP-Website erreichbar zu machen und den Apache-Installer von Certbot für diesen Hostnamen auszuführen. Lautet Ihre ownCloud-Adresse beispielsweise `/etc/localhost:1234`, cloud.example.comkann Certbot ein Let's Encrypt-Zertifikat anfordern und Apache für HTTPS mit `/etc/localhost:12344` konfigurieren sudo certbot --apache -d cloud.example.com. Testen Sie die Website und die automatische Zertifikatserneuerung, bevor Sie sich darauf verlassen.
Diese Anleitung beschreibt eine ownCloud Classic-Installation im Stil von Version 10.16, die unter Ubuntu mit Apache betrieben wird, wie in der ownCloud-Anleitung für Apache beschrieben. Wenn Sie ownCloud Classic 11 in Docker ausführen, muss laut ownCloud HTTPS auf dem Webproxy vor dem Container konfiguriert werden. Falls Ihr Hosting-Anbieter oder Reverse-Proxy TLS bereits terminiert, konfigurieren Sie das Zertifikat dort, anstatt es im ownCloud-Container zu installieren.
Prüfen Sie, ob diese Konfiguration zu Ihrem Server passt.
Let's Encrypt weist nach, dass Sie die Kontrolle über den angeforderten Domainnamen haben, bevor ein Zertifikat ausgestellt wird. Für die gängige HTTP-01-Herausforderung muss Let's Encrypt eine temporäre Datei von Ihrem Server über öffentliches HTTP auf Port 80 abrufen können. Derselbe Hostname muss auf den öffentlichen Endpunkt verweisen, der Ihre ownCloud-Website bereitstellt. Der HTTPS-Datenverkehr erreicht dann den Apache-Endpunkt auf Port 443.
- Sie haben einen öffentlichen Hostnamen, wie zum Beispiel
cloud.example.com, und kontrollieren dessen DNS-Einträge.
- Der Hostname wird zur öffentlichen IP-Adresse des Apache-Servers oder des öffentlichen Reverse-Proxys aufgelöst.
- Eingehende Verbindungen über die Ports 80 und 443 werden durch die entsprechende Firewall, den Router und die Cloud-Sicherheitsgruppe zugelassen.
- Apache stellt die ownCloud-Website bereits über einen VirtualHost für diesen Hostnamen bereit.
- Sie haben Administratorzugriff auf den Rechner, der den öffentlichen HTTP- und HTTPS-Datenverkehr verarbeitet.
Befindet sich Ihre Website hinter einem Proxy, Load Balancer, Container-Host oder Control Panel, ermitteln Sie vor der Ausführung von Certbot, wo das öffentliche TLS-Protokoll endet. Ein auf dem falschen Rechner installiertes Zertifikat sichert die Verbindung zwischen Browser und Server nicht. Bei ownCloud Classic 11 verwaltet das unterstützte Docker-Design Apache innerhalb des Containers und stellt HTTPS am Webproxy bereit.
Bereiten Sie den ownCloud-Hostnamen und die Apache-Website vor.
Verwenden Sie nach Möglichkeit einen dedizierten ownCloud-Hostnamen. ownCloud benötigt für die Anmeldung eine URL, die trusted_domainsin der config/config.phpDatei „trusted-domains“ aufgeführt ist. Wenn Sie von einer IP-Adresse oder einem anderen Hostnamen zu „trusted-domains“ wechseln cloud.example.com, fügen Sie den neuen Hostnamen einem ungenutzten Eintrag im Array „trusted-domains“ hinzu, bevor Sie die neue Adresse testen. Überschreiben Sie keinen anderen Eintrag versehentlich.
Stellen Sie sicher, dass die gewünschte ownCloud-Website über unverschlüsseltes HTTP erreichbar ist, bevor Sie ein Zertifikat anfordern. In Apache muss der VirtualHost den genauen Hostnamen mit einer ServerNameDirektive angeben. Die Apache-Anleitung von ownCloud setzt eine VirtualHost-Konfiguration voraus und platziert unter Ubuntu die Website-Definitionen im Verzeichnis `/var/www/sites/` /etc/apache2/sites-available/. Pfade und Dienstnamen können auf anderen Distributionen abweichen.
Sichern Sie die aktive Apache VirtualHost-Konfiguration, bevor Sie Änderungen vornehmen. So haben Sie einen Wiederherstellungspunkt, falls ein automatisiertes Installationsprogramm die falsche Website auswählt oder einen Konflikt mit einem HTTPS-Host verursacht. Wenn Sie mehrere Websites auf demselben Server betreiben, überprüfen Sie die vorhandenen VirtualHosts, um sicherzustellen, dass das Zertifikat dem ownCloud-Hostnamen und nicht dem Standard-Hostnamen zugeordnet ist.
Installieren und starten Sie Certbot für Apache
Installieren Sie Certbot gemäß der Anleitung für Ihr Betriebssystem und Ihre Apache-Konfiguration. Die offizielle Anleitung von Certbot empfiehlt für viele Linux-Installationen das Snap-Paket. Die Verfügbarkeit des Pakets und die unterstützten Installationswege hängen jedoch von der jeweiligen Distribution ab. Vermeiden Sie es, mehrere Certbot-Installationen über den Paketmanager Ihres Betriebssystems und Snap zu mischen. Verwenden Sie den Befehl, der diejenige Installation ausführt, certbotderen Apache-Plugin Sie nutzen möchten.
Auf einem Ubuntu-Host, auf dem Snap installiert und unterstützt wird, zeigen die Certbot-Anweisungen folgenden Installationspfad an:
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/local/bin/certbot
Falls Certbot bereits installiert ist, prüfen Sie vor der Installation einer weiteren Kopie, welche Version in Ihrer Shell ausgeführt wird und wie die Installation erfolgte. Weitere unterstützte Installationsoptionen finden Sie in der aktuellen Installationsanleitung für Certbot Apache .
Fordern Sie das Zertifikat für Ihren ownCloud-Hostnamen an und installieren Sie es:
sudo certbot --apache -d cloud.example.com
Ersetzen Sie dies cloud.example.comdurch den tatsächlichen Hostnamen. Certbot führt die Domainvalidierung durch und aktualisiert Apache mithilfe des Installationsprogramms, sodass das ausgestellte Zertifikat verwendet wird. Soll ein einzelnes Zertifikat mehrere Domains abdecken, geben Sie jeden Domainnamen explizit an, z. B. „example.com“ -d cloud.example.com -d files.example.com. Jeder aufgeführte Domainname muss auf einen erreichbaren Endpunkt verweisen und die Validierung bestehen.
Certbot fragt möglicherweise, ob HTTP-Anfragen auf HTTPS umgeleitet werden sollen. Die Aktivierung der Umleitung ist sinnvoll, sobald der HTTPS-VirtualHost funktioniert. ownCloud empfiehlt HTTPS für den Produktivbetrieb und eine permanente Umleitung für unverschlüsselten Datenverkehr. Wenn Sie die Apache-Konfiguration lieber selbst verwalten möchten, bietet Certbot auch einen reinen Zertifikatsmodus. Verwenden Sie die Apache-Anleitung von ownCloud, um die Zertifikatsdateien und den VirtualHost korrekt zu verbinden, und testen Sie die Konfiguration, bevor Sie Apache neu laden.
Wenn die HTTP-Validierung Ihren Server nicht erreichen kann
Die HTTP-01-Methode verwendet einen Pfad über /.well-known/acme-challenge/Port 80. Wenn ein Router Port 80 an einen anderen Rechner weiterleitet, eine Firewall ihn blockiert oder ein anderer Proxy diesen Pfad umleitet, kann die Validierung fehlschlagen, obwohl die ownCloud-Seite über HTTPS geladen wird. Überprüfen Sie die öffentlichen DNS-Einstellungen und die Portweiterleitung und stellen Sie sicher, dass die ACME-Challenge denselben Endpunkt erreicht, auf dem Certbot ausgeführt wird.
Wenn Ihr Internetanbieter oder Ihre Netzwerkrichtlinie Port 80 blockiert, sollten Sie stattdessen die DNS-01-Validierung in Betracht ziehen. Diese weist die Domainkontrolle über einen DNS-TXT-Eintrag nach und kann Wildcard-Zertifikate ausstellen. Die automatische Zertifikatserneuerung hängt jedoch davon ab, ob Ihr DNS-Anbieter ein geeignetes API-Plugin bereitstellt. Vermeiden Sie es, weit gefasste DNS-Zugangsdaten auf einem Webserver zu hinterlegen, wenn eng gefasste Zugangsdaten oder ein separater Validierungshost verfügbar sind. Verwenden Sie für ein Wildcard-Zertifikat kein reines HTTP-01-Verfahren.
Überprüfen Sie Apache und ownCloud nach der Installation.
Bevor Sie das Wartungsfenster schließen, überprüfen Sie, ob die Apache-Konfiguration gültig ist und ob Certbot das neue Zertifikat auflistet:
sudo apache2ctl configtest
sudo certbot certificates
Unter Ubuntu meldet ein erfolgreicher Apache-Syntaxcheck, dass die Konfiguration gültig ist. Öffnen Sie die Anwendung https://cloud.example.comin einem Browser und melden Sie sich an. Prüfen Sie, ob der Browser ein gültiges Zertifikat für den angegebenen Hostnamen anzeigt, und testen Sie einen typischen Datei-Upload-, Download- und Synchronisierungsclient. Falls Sie eine Weiterleitung aktiviert haben, rufen Sie die HTTP-Adresse auf und vergewissern Sie sich, dass Sie ohne Weiterleitungsschleife auf dem gleichen HTTPS-Hostnamen landen.
Meldet die ownCloud-Anmeldeseite eine nicht vertrauenswürdige Domain, überprüfen Sie trusted_domainsdie Serverkonfiguration. Leitet der Browser auf den falschen Hostnamen um oder generiert ownCloud HTTP-Links hinter einem Reverse-Proxy, überprüfen Sie die weitergeleiteten Host- und HTTPS-Header des Proxys sowie die ownCloud-Proxy-Einstellungen. Diese Einstellungen hängen von der Proxy-Topologie ab; kopieren Sie Reverse-Proxy-Überschreibungen nicht ohne triftigen Grund in eine direkte Apache-Installation.
Prüfen Sie die Verlängerung, bevor Sie den Auftrag als erledigt betrachten.
Die Standardzertifikate von Let's Encrypt sind nur kurz gültig, daher muss die Erneuerung automatisiert werden. Certbot-Installationen stellen üblicherweise einen Systemd-Timer oder einen Cronjob bereit. Testen Sie die Erneuerung vorab mit:
sudo certbot renew --dry-run
Ein Testlauf prüft den Erneuerungspfad, ohne das gültige Zertifikat zu ersetzen. Schlägt dieser fehl, lesen Sie die Certbot-Ausgabe und beheben Sie das angegebene DNS-, Firewall-, Challenge-Routing- oder Apache-Problem. Stellen Sie sicher, dass in den Diensten Ihres Betriebssystems ein Timer oder eine geplante Aufgabe vorhanden ist; gehen Sie nicht davon aus, dass die Erneuerung aktiv ist, nur weil das erste Zertifikat ausgestellt wurde. Halten Sie Port 80 frei, wenn Ihre Erneuerung HTTP-01 verwendet, oder stellen Sie sicher, dass Ihre DNS-01-Automatisierung den erforderlichen TXT-Eintrag weiterhin aktualisieren kann.
Häufige Entscheidungen und Fallstricke
| Situation | Empfohlene Route |
| ownCloud Classic 10.16 auf Ubuntu mit direktem Apache-Zugriff | Verwenden Sie den Apache-Installer von Certbot für den ownCloud-Hostnamen. |
| ownCloud Classic 11 in Docker | Konfigurieren Sie HTTPS auf dem Webproxy vor dem Container. |
| Das Hosting-Panel verwaltet bereits die Zertifikate. | Verwenden Sie den Let's Encrypt-Workflow des Panels und überprüfen Sie, ob die Lizenz erneuert wird. |
| Port 80 kann den Webserver nicht erreichen oder ein Platzhalter ist erforderlich | Verwenden Sie DNS-01 mit einer geeigneten Erneuerungsmethode. |
| Apache verfügt über mehrere VirtualHosts. | Bestätigen Sie, dass Certbot den VirtualHost ausgewählt hat, dessen Servername mit dem Hostnamen des Zertifikats übereinstimmt. |
Aktivieren Sie HSTS erst, includeSubDomainswenn alle relevanten Subdomains korrekt über HTTPS erreichbar sind; ein Header auf einem Hostnamen beeinflusst die Behandlung seiner Subdomains durch Browser. Stellen Sie zunächst sicher, dass Zertifikat, Weiterleitungen und Erneuerung zuverlässig funktionieren. Beachten Sie anschließend die Sicherheitshinweise von ownCloud für HSTS und andere TLS-Einstellungen, die für Ihre gesamte Domainstruktur relevant sind.
Die Dokumentation wurde am 6. Oktober 2026 geprüft. Die unten aufgeführten Dateipfade und Befehle setzen Ubuntu mit Apache und ownCloud Classic 10.16 voraus; Docker-, Reverse-Proxy-, Hosting-Panel-, Nginx- und Nicht-Ubuntu-Bereitstellungen benötigen Anweisungen für ihren jeweiligen TLS-Endpunkt.
Referenzen: ownCloud 10.16: Apache mit Let's Encrypt konfigurieren ; ownCloud 11: HTTPS- und Reverse-Proxy-Anleitung ; ownCloud 10.16: Vertrauenswürdige Domains ; Certbot: Apache-Installation und -Erneuerung ; Let's Encrypt: Herausforderungstypen ; Let's Encrypt: Port 80 offen halten .