DE · AT · CHAnleitung

Eigene Domain und SSL-Zertifikat für Odoo

Aktualisiert:

Gilt für: Odoo 20.0; Website-App in Community und Enterprise; Odoo Online, Odoo.sh und On-Premise; Zertifikate verwaltet Odoo nur bei Online und Odoo.sh

Kurz gesagt

Bei Odoo Online und Odoo.sh verbinden Sie eine eigene Domain über einen CNAME-Eintrag auf die Datenbankadresse; das HTTPS-Zertifikat erzeugt Odoo danach selbst über Let's Encrypt, für die nackte Domain aber nicht. Dort führt sie deshalb eine dauerhafte Weiterleitung auf Ihre Hauptadresse. Auf einem eigenen Server endet HTTPS in einem Reverse Proxy, das Zertifikat holt ein ACME-Client, und er kann auch die nackte Domain direkt bedienen. Der Ablauf hängt am Hostingmodell, nicht am Land.

Das Wichtigste

  • Odoo Online und Odoo.sh erzeugen je zugeordneter Domain ein eigenes Let's-Encrypt-Zertifikat; für die nackte Domain entsteht keines, sie wird dort per dauerhafter Weiterleitung auf die Hauptadresse geführt, während ein eigener Server sie direkt mit einem eigenen Zertifikat bedienen kann.
  • Der DNS-Eintrag ist ein CNAME auf die Datenbankadresse; Odoo.sh nimmt eine nackte Domain nicht an.
  • Beim eigenen Server endet HTTPS in einem Reverse Proxy, und Odoo läuft im Proxy-Modus.
  • Odoo prüft ein neues Zertifikat bis zu fünf Tage lang; die Erstellung kann bis zu 24 Stunden dauern.
  • CAA-Einträge der Domain müssen Let's Encrypt erlauben, sonst schlägt die Erstellung fehl.
  • Let's Encrypt stellt Standardzertifikate mit 90 Tagen Laufzeit aus und empfiehlt die Erneuerung nach 60 Tagen.

Was Sie vorab brauchen

  • Die Domain und den Zugang zu ihren DNS-Einträgen. Zuständig ist die Registrierungsstelle, bei der Sie den Domainnamen gekauft haben; die DNS-Einträge können bei derselben Stelle oder bei einem anderen Anbieter liegen.
  • Die Datenbankadresse Ihres Systems. Odoo Online und Odoo.sh nutzen standardmäßig eine Subdomain von odoo.com, zum Beispiel meinunternehmen.odoo.com.
  • Ein Konto mit dem Zugriffsrecht Einstellungen in Ihrer Datenbank, sonst sehen Sie die Website-Einstellungen nicht.
  • Beim eigenen Server: einen Reverse Proxy vor Odoo, den Proxy-Modus in der Odoo-Konfiguration, einen erreichbaren Port 80 und 443 sowie ein ACME-Client-Programm für die Zertifikate.

DNS und Zertifikat je Hostingmodell

Der Ablauf unterscheidet sich nur in zwei Punkten: wohin der DNS-Eintrag zeigt und wer das Zertifikat erneuert.

Hostingmodell DNS-Eintrag Zertifikat Erneuerung
Odoo Online CNAME auf die Datenbankadresse, zum Beispiel meinunternehmen.odoo.com Odoo erzeugt je zugeordneter Domain ein eigenes Zertifikat von Let’s Encrypt automatisch durch Odoo; Erstellung bis 24 Stunden, Prüfversuche über fünf Tage
Odoo.sh CNAME auf die Adresse der Produktionsdatenbank; eine nackte Domain wird nicht angenommen Zertifikat von Let’s Encrypt, laut Dokumentation innerhalb einer Stunde automatisch, sofern die Weiterleitung richtig gesetzt ist
Eigener Server (On-Premise) A-Eintrag mit der IP-Adresse des Servers Ihr eigenes Zertifikat, eingebunden im Reverse Proxy (ssl_certificate, ssl_certificate_key) Ihr ACME-Client; Let’s Encrypt empfiehlt bei 90 Tagen Laufzeit die Erneuerung nach 60 Tagen

Für die nackte Domain gilt bei Odoo Online und Odoo.sh eine Besonderheit: Odoo erstellt dafür kein Zertifikat, sie wird deshalb über eine Weiterleitung auf die Hauptadresse geführt. Ein eigener Server kann sie direkt bedienen.

Schritt für Schritt: Domain mit Odoo verbinden

Schritt 1: Datenbankadresse notieren

Notieren Sie die Adresse, unter der Ihre Datenbank erreichbar ist. Bei Odoo Online und Odoo.sh ist das standardmäßig eine Subdomain von odoo.com. Bei Odoo.sh steht die Hauptadresse des Projekts unter Einstellungen ‣ Projektname; für einen einzelnen Zweig finden Sie sie unter Zweige ‣ [Zweig] ‣ Einstellungen ‣ Benutzerdefinierte Domains, wo die Dokumentation auch angibt, auf welche Adresse Ihr CNAME-Eintrag zeigen soll. Beim eigenen Server ist es der Name, den Sie später als server_name in den Reverse Proxy eintragen, im Nginx-Beispiel der Dokumentation odoo.mycompany.com.

Ergebnis: Sie kennen die Zieladresse für den DNS-Eintrag.

Schritt 2: DNS-Eintrag anlegen

Legen Sie im DNS-Verwalter Ihrer Domain einen CNAME-Eintrag an, dessen Wert die Datenbankadresse ist. Bei Odoo Online ist das die Adresse, die bei der Erstellung der Datenbank vergeben wurde, bei Odoo.sh die Adresse der Produktionsdatenbank. Beim eigenen Server tragen Sie stattdessen einen A-Eintrag mit der IP-Adresse Ihres Servers ein; A-Einträge nehmen als Wert nur IP-Adressen an. Die Dokumentation nennt für DNS-Änderungen bis zu 72 Stunden, bis sie weltweit bei allen Servern angekommen sind.

Ergebnis: Der Name Ihrer Domain löst auf die Adresse Ihrer Odoo-Datenbank beziehungsweise Ihres Servers auf.

Schritt 3: Nackte Domain auf Ihre Hauptadresse umleiten

Eine nackte Domain ist ein Name ohne Subdomain, zum Beispiel ihrunternehmen.de. Bei Odoo Online und Odoo.sh erstellt Odoo dafür kein Zertifikat; die Dokumentation bezeichnet die Weiterleitung als empfohlenen Schritt und nennt sie erforderlich, damit Besucher die nackte Domain nutzen können: eine dauerhafte Weiterleitung (Statuscode 301) von http://ihrunternehmen.de und von https://ihrunternehmen.de auf Ihre Hauptadresse mit https, im Beispiel https://www.ihrunternehmen.de. Der Grund: Die nackte Domain lässt sich nur über einen A-Eintrag mit IP-Adresse konfigurieren; ein CNAME ist dort nicht möglich, und die IP-Adresse einer Odoo-Datenbank kann sich ändern. Ziel ist die Adresse, die Sie als Hauptadresse führen; die Dokumentation erlaubt dafür neben www auch andere Subdomains. Die Weiterleitung richten Sie dort ein, wo Ihre DNS-Einträge liegen; die Dokumentation weist darauf hin, dass nicht jeder DNS-Anbieter eine nackte Domain auf HTTPS umleitet, und verweist als Ausweg auf einen CDN-Anbieter. Beim eigenen Server ist sie nicht nötig: Dort können Sie ein Zertifikat für die nackte Domain selbst ausstellen.

Ergebnis: Bei Odoo Online und Odoo.sh führen beide Schreibweisen auf dieselbe Adresse mit https; beim eigenen Server ist die nackte Domain selbst erreichbar.

Schritt 4: Domain in Odoo hinterlegen

Bei Odoo Online öffnen Sie den Datenbankmanager, wählen den Datenbanknamen und dort den Bereich für Domainnamen (Domain Names). Dort ist die Adresse einzutragen, zu prüfen und ein zweites Mal zu bestätigen. Bei Odoo.sh gehen Sie auf Zweige ‣ [Zweig] ‣ Einstellungen ‣ Benutzerdefinierte Domains, geben die Domain ein und klicken Domain hinzufügen. Die beiden Dokumentationsseiten nennen unterschiedliche Reihenfolgen: Die Seite zu den Domainnamen warnt, die Domain erst nach dem CNAME-Eintrag zuzuordnen, weil die Zuordnung sonst die Zertifikatsprüfung verhindert; die Odoo.sh-Seite nennt das Hinzufügen der Domain zuerst. Entscheidend ist nicht die Reihenfolge, sondern dass der CNAME-Eintrag beim Prüfversuch steht: Odoo wiederholt die Prüfung fünf Tage lang. Beim eigenen Server entfällt dieser Schritt.

Ergebnis: Die Domain steht in Odoo in der Liste der benutzerdefinierten Domains.

Schritt 5: Domain an die Website binden

Ist die Website-App installiert, öffnen Sie Website ‣ Konfiguration ‣ Einstellungen und tragen im Feld Domain die vollständige Adresse mit https:// ein. Bei mehreren Websites wählen Sie zuerst die richtige Website aus. Diese Zuordnung ist nicht dasselbe wie die Zuordnung zur Datenbank: Sie legt die Domain als Hauptadresse der Website fest, damit Suchmaschinen die richtige Adresse indizieren, und macht sie zur Basis-URL für Portal-Links. Was auf der Website datenschutzrechtlich zu regeln ist, steht im Artikel Cookies und Datenschutz.

Ergebnis: Die Website-Adresse und die Basis-URL der Datenbank nennen Ihre Domain.

Schritt 6: Basis-URL ohne Website-App setzen

Ohne Website-App setzt die Datenbank ihre Basis-URL (web base URL) auf die Adresse, mit der sich ein Administrator anmeldet. Melden Sie sich deshalb einmal über die neue Domain an. Wollen Sie den automatischen Wechsel verhindern, setzen Sie im Entwicklermodus unter Einstellungen ‣ Technisch ‣ Systemparameter den Schlüssel web.base.url.freeze auf True. Den Wert web.base.url können Sie dort auch selbst eintragen: mit Protokoll und ohne Schrägstrich am Ende.

Ergebnis: Angebots- und Portal-Links tragen die neue Adresse.

Schritt 7: Zertifikat sicherstellen und HTTPS erzwingen

Bei Odoo Online und Odoo.sh entsteht das Zertifikat ohne Ihr Zutun. Prüfen Sie vorher die CAA-Einträge der Domain: Verbietet ein CAA-Eintrag Let’s Encrypt, schlägt die Erstellung fehl; ein Eintrag der Form 0 issue "letsencrypt.org" erlaubt sie. Beim eigenen Server holt ein ACME-Client das Zertifikat von der Zertifizierungsstelle und erneuert es später. Die HTTP-01-Prüfung liest dafür eine Datei unter http://ihre-domain/.well-known/acme-challenge/, braucht also Port 80; die DNS-01-Prüfung erwartet einen TXT-Eintrag unter _acme-challenge und kann auch Wildcard-Zertifikate ausstellen. Im Nginx-Beispiel der Dokumentation stehen Zertifikat und Schlüssel in ssl_certificate und ssl_certificate_key; für die Umleitung von http auf https und für den HSTS-Kopf (Strict-Transport-Security, “max-age=31536000; includeSubDomains”) sind fertige Zeilen abgedruckt.

Ergebnis: Die Adresse ist über https erreichbar, und der Browser zeigt keine Warnung.

So prüfen Sie das Ergebnis

  1. Rufen Sie Ihre Domain mit https:// auf und öffnen Sie die Zertifikatsinformationen des Browsers. Der Name im Zertifikat muss zu der Adresse passen, die Sie aufgerufen haben.
  2. Rufen Sie die Adresse zusätzlich einmal ohne www und einmal mit http:// auf. Bei Odoo Online und Odoo.sh müssen beide Aufrufe auf Ihrer Hauptadresse mit https enden, im Beispiel https://www.ihre-domain; auf einem eigenen Server muss die nackte Domain selbst ein gültiges Zertifikat vorweisen oder ebenfalls weiterleiten.
  3. Öffnen Sie ein Angebot oder einen Portal-Link aus Odoo und vergleichen Sie die Adresse darin mit Ihrer Domain. Steht dort noch die odoo.com-Adresse, fehlen Schritt 5 oder Schritt 6.
  4. Tragen Sie Ihre Domain in einen Zertifikatsprüfer ein und prüfen Sie, welche Zertifizierungsstelle ausgestellt hat und bis wann das Zertifikat gilt.
  5. Wiederholen Sie die Prüfung nach jeder DNS- oder Domänenänderung; die Dokumentation nennt bis zu 72 Stunden, bis ein Eintrag weltweit bei allen Servern angekommen ist.

Wenn etwas nicht klappt

Symptom Ursache nach Dokumentation Abhilfe
Der Browser meldet eine Namensabweichung oder “Ihre Verbindung ist nicht privat” Die Domain wurde in Odoo zugeordnet, bevor der CNAME-Eintrag im DNS stand; das Zertifikat passt deshalb noch nicht CNAME-Eintrag prüfen, bis zu fünf Tage warten; danach ein Support-Ticket mit Screenshots der CNAME-Einträge
Bei Odoo Online oder Odoo.sh kommt für die nackte Domain keine verschlüsselte Verbindung zustande Odoo erstellt für nackte Domains kein Zertifikat Dauerhafte Weiterleitung der nackten Domain auf Ihre Hauptadresse einrichten; auf einem eigenen Server ein Zertifikat für den nackten Namen ausstellen lassen
Die Zertifikatserstellung bricht ab Ein CAA-Eintrag der Domain erlaubt Let’s Encrypt nicht CAA-Eintrag auf letsencrypt.org anpassen
Die Prüfung scheitert, obwohl der CNAME stimmt Beim eigenen Server ist Port 80 gesperrt oder gefiltert; die HTTP-01-Prüfung kann die Datei unter http://ihre-domain/.well-known/acme-challenge/ nicht abrufen Port 80 öffnen oder eine Prüfung wählen, die ohne ihn auskommt (DNS-01 oder TLS-ALPN-01 auf Port 443); Let’s Encrypt empfiehlt, Port 80 für Weiterleitungen offen zu lassen
Neue Zertifikate werden verweigert Ihr ACME-Client stellt zu viele Zertifikate aus: 50 je registrierter Domain und 5 je gleicher Namenskombination in 7 Tagen. Erneuerungen über ARI sind von allen Limits ausgenommen; Erneuerungen, die Ihr Client nur über dieselbe Namenskombination erkennt, sind von der Grenze je registrierter Domain befreit, zählen aber weiter gegen die Grenze von 5 je gleicher Namenskombination Tests gegen die Staging-Umgebung von Let’s Encrypt fahren und abwarten, bis sich das Kontingent wieder füllt; ein vorzeitiges Zurücksetzen bietet Let’s Encrypt nicht an
Die Domain zeigt weiter auf die alte Adresse Die Dokumentation nennt für DNS-Änderungen bis zu 72 Stunden bis zur weltweiten Verteilung Einträge und ihre TTL prüfen und abwarten

Wann Sie Hilfe holen sollten

Ohne Zugriff auf die DNS-Verwaltung kommen Sie bei Schritt 2 nicht weiter; diesen Zugang sollten mindestens zwei Personen im Betrieb haben.

Leitet Ihr DNS-Anbieter eine nackte Domain bei Odoo Online oder Odoo.sh nicht auf HTTPS um, brauchen Sie eine Zwischenstufe davor; die Dokumentation verweist dafür auf einen CDN-Anbieter, dessen Einrichtung Sie mit Ihrem Dienstleister durchgehen. Auf einem eigenen Server deckt ein Zertifikat für die nackte Domain diesen Fall ab.

Beim eigenen Server gehören Reverse Proxy, Proxy-Modus und die HSTS-Kopfzeile in eine Wartungsprozedur: Ein HSTS-Eintrag zwingt jeden Besucher für ein Jahr auf HTTPS, und der Dienst muss in dieser Zeit jederzeit ein gültiges Zertifikat vorweisen. Prüfen Sie diese Konfiguration in einer Testumgebung, bevor Sie sie produktiv schalten. Wenn Sie das Hostingmodell wechseln, ändern sich Adresse und Zertifikatsweg; die Reihenfolge beschreibt der Artikel Hostingmodell wechseln.

Häufige Fragen

Kann ich die Domain über Odoo kostenlos registrieren?

Ja, aber nur bei Odoo Online und je Kundschaft nur für eine neu registrierte Domain. Die Dokumentation nennt das Angebot für das erste Jahr kostenlos und für Tarife vom Typ One App Free; eine bestätigte E-Mail-Adresse ist nötig, und Odoo prüft die Anfrage. Danach führt der Registrar Gandi.net die Domain weiter und berechnet seinen Erneuerungspreis (Stand 14. Oktober 2026).

Warum zeigt der Browser das Zertifikat als nicht passend an?

Das passiert, wenn die Domain in Odoo zugeordnet wurde, bevor der CNAME-Eintrag im DNS stand, oder wenn die Prüfung noch läuft. Die Dokumentation bittet, in diesem Fall bis zu fünf Tage zu warten, weil in dieser Zeit mehrere Prüfversuche laufen. Bleibt die Warnung danach, wenden Sie sich mit Screenshots Ihrer CNAME-Einträge an den Support.

Reicht eine Subdomain, oder brauche ich www?

Bei Odoo Online und Odoo.sh genügt eine Subdomain, wenn sie einen eigenen CNAME-Eintrag auf die Datenbankadresse hat und in Odoo zugeordnet ist; so lassen sich mehrere Websites an einer Domain betreiben. Die nackte Domain bleibt davon getrennt: Odoo erstellt dafür kein Zertifikat, sie braucht deshalb zusätzlich die Weiterleitung auf Ihre Hauptadresse. Ein Wildcard-Zertifikat ist dafür nicht nötig, weil Odoo je zugeordneter Domain ein eigenes Zertifikat ausstellt. Auf einem eigenen Server können Sie die nackte Domain direkt mit einem Zertifikat für diesen Namen bedienen.

Wer erneuert das Zertifikat?

Bei Odoo Online und Odoo.sh erneuert Odoo es automatisch. Beim eigenen Server liegt das bei Ihrem ACME-Client: Let's Encrypt empfiehlt, ein Zertifikat mit 90 Tagen Laufzeit nach 60 Tagen zu erneuern, ein kurzlaufendes mit sechs Tagen nach drei Tagen. Prüfen Sie danach, ob der Reverse Proxy die neue Datei geladen hat. Erneuerungen gehen bei Let's Encrypt eigene Wege: Erneuerungen über ACME Renewal Info (ARI) sind von allen Limits ausgenommen.

Quellen

  1. Domain names (Odoo 20.0, Anwendungen: Website, Konfiguration, Domainnamen)Odoo S.A., Dokumentation · abgerufen am
  2. Odoo.sh branches, Abschnitt Custom domains und HTTPS/SSL (Odoo 20.0)Odoo S.A., Dokumentation · abgerufen am
  3. On-premise deployment, Abschnitte HTTPS und HTTPS Hardening (Odoo 20.0)Odoo S.A., Dokumentation · abgerufen am
  4. Compare Editions (Zeile Website Builder)Odoo S.A. · abgerufen am
  5. Release Notes (Version 20, veröffentlicht im September 2026)Odoo S.A. · abgerufen am
  6. Certificate Lifetime Rationale and Plans (Stand: 22. Juli 2026)Let's Encrypt / ISRG · abgerufen am
  7. Profiles (Stand: 4. Oktober 2026)Let's Encrypt / ISRG · abgerufen am
  8. Challenge Types (Stand: 12. Februar 2026)Let's Encrypt / ISRG · abgerufen am
  9. Certification Authority Authorization (CAA) (Stand: 4. Oktober 2026)Let's Encrypt / ISRG · abgerufen am
  10. How It Works (Stand: 2. August 2025)Let's Encrypt / ISRG · abgerufen am
  11. Rate Limits (Stand: 5. August 2026)Let's Encrypt / ISRG · abgerufen am
  12. Best Practice - Keep Port 80 Open (Stand: 24. Januar 2019)Let's Encrypt / ISRG · abgerufen am
  13. Frequently Asked Questions (FAQ)Let's Encrypt / ISRG · abgerufen am
  14. Deutsche Übersetzungen der Module website und base, Branch 20.0 (Quelle der Oberflächennamen)Odoo S.A., öffentlicher Quellcode (Community) · abgerufen am