Redirecting you to
Blog-Beitrag Juli 07, 2021

Was ist ein selbstsigniertes Zertifikat und wie erstellt man es?

Ein selbstsigniertes Zertifikat ist ein digitales Zertifikat, das von der nutzenden Entität ausgestellt und signiert wird, nicht von einer Zertifizierungsstelle (CA). Obwohl es kostengünstig und schnell erstellt werden kann, wird es für öffentliche Websites oder sensible Daten aufgrund von Sicherheitsrisiken, fehlender Widerrufbarkeit und externer Validierung nicht empfohlen. Es eignet sich besser für interne Testumgebungen. Risiken umfassen Browser-Warnungen, erhöhte Anfälligkeit und kompromittierte Verschlüsselung. Die Erstellung erfordert einen privaten Schlüssel, eine Signaturanfrage (CSR) und die Ausstellung des Zertifikats. Für mehr Sicherheit sollten vertrauenswürdige CAs genutzt werden.

Inhaltsverzeichnis

Aktualisiert: 4. Dezember 2023

Ein selbstsigniertes SSL/TLS-Zertifikat ist ein digitales Zertifikat, das nicht von einer öffentlich vertrauenswürdigen Zertifizierungsstelle (CA) signiert ist. Selbstsignierte Zertifikate unterscheiden sich von herkömmlichen, von einer Zertifizierungsstelle signierten Zertifikaten dadurch, dass sie nicht von einer vertrauenswürdigen Zertifizierungsstelle, sondern von dem Unternehmen oder Entwickler erstellt, ausgestellt und signiert werden, das bzw. der für die mit dem Zertifikat verbundene Website oder Software verantwortlich ist.

Im Großen und Ganzen basieren diese selbstsignierten Zertifikate auf derselben kryptografischen Architektur mit privatem und öffentlichem Schlüsselpaar, die auch in X.509-Zertifikaten verwendet wird. Sie verfügen jedoch nicht über die Validierung einer vertrauenswürdigen Drittanbieter-Zertifizierungsstelle wie Sectigo, was bedeutet, dass das Zertifikat nicht an eine Stammzertifizierungsstelle oder ein Zwischenzertifikat gekoppelt ist, wie sie von einer vertrauenswürdigen Zertifizierungsstelle ausgestellt werden. Dieses Fehlen einer unabhängigen Validierung im Ausstellungsprozess schafft ein zusätzliches Risiko, was das Problem bei der Verwendung von selbstsignierten Zertifikaten darstellt. Sie gelten als unsicher für öffentlich zugängliche Websites und Anwendungen und werden in der Regel nur in internen Entwicklungs- und Testumgebungen verwendet.

Zweck eines selbstsignierten Zertifikatstyps

Obwohl sie riskant sein können, haben selbstsignierte Zertifikate durchaus ihre Berechtigung und bieten einige Vorteile. Sie sind kostenlos, für Entwickler einfach anzufordern, verschlüsseln die Daten mit den gleichen Methoden wie kostenpflichtige SSL-Zertifikate, laufen nicht ab und können nicht widerrufen werden. Wenn es jedoch um die allgemeine Sicherheit geht, überwiegen die Risiken in der Regel die Vorteile.

Der Hauptvorteil eines selbstsignierten SSL-Zertifikats besteht darin, dass es kostenlos verfügbar ist und von jedem Entwickler problemlos angefordert werden kann. Sie können schnell nach Ihrem eigenen Zeitplan implementiert werden und werden häufig in internen Testumgebungen oder auf Webservern verwendet, die ansonsten für externe Benutzer gesperrt sind. Darüber hinaus haben Organisationen den Vorteil, dass sie wissen, dass selbstsignierte SSL-Zertifikate die entsprechenden eingehenden und ausgehenden Daten mit denselben Methoden verschlüsseln wie andere, kostenpflichtige SSL/TLS-Zertifikate.

Unternehmen haben den Vorteil, dass sie wissen, dass selbstsignierte SSL-Zertifikate die entsprechenden eingehenden und ausgehenden Daten mit den gleichen Methoden verschlüsseln wie andere, kostenpflichtige SSL/TLS-Zertifikate.

Selbstsignierte Zertifikate laufen nicht ab und müssen nicht nach einer bestimmten Zeit erneuert werden, wie es bei einem CA-Zertifikat der Fall ist. Obwohl dies praktisch erscheint, ist es einer der Hauptgründe zur Sorge, da es bedeutet, dass sie weder Sicherheitsupdates als Reaktion auf entdeckte Schwachstellen einhalten noch die Zertifikatsagilität erfüllen können, die für die Sicherheit moderner Unternehmen von heute erforderlich ist. Daher wird diese Authentifizierungsmethode nur selten empfohlen

Außerdem ist die Sperrung von Zertifikaten mit selbstsignierten Zertifikaten nicht möglich. Dadurch wird die verwendete Kryptografie externen Bedrohungen ausgesetzt, falls das Zertifikat vergessen wird oder auf Systemen verbleibt, die für böswillige Akteure zugänglich sind. Die mit diesen Zertifikaten verbundenen Risiken überwiegen oft die Vorteile, da Cybersicherheit für jede Organisation von größter Bedeutung ist.

Risiken und Fehler im Zusammenhang mit selbstsignierten Zertifikaten

Es gibt zahlreiche Sicherheitswarnungen und Bedenken im Zusammenhang mit selbstsignierten SSL-Zertifikaten, weshalb sie kaum jemals empfohlen werden.

Sicherheitswarnungen

Wenn ein Benutzer eine Website besucht, die diese Art von Zertifikat verwendet (was auf einer öffentlich zugänglichen Website nie empfohlen wird), wird er sofort mit einer Sicherheitswarnung in Form eines Pop-ups konfrontiert, das Fehler wie „error_self_signed_cert“ oder „err_cert_authority_invalid“ anzeigt, die vom Benutzer bestätigt werden müssen, um fortzufahren. Diese Fehler werden vom Browser des Benutzers und nicht von der Website selbst angezeigt, was die Bedenken des Benutzers zusätzlich legitimiert und einen zusätzlichen Schritt für den Besuch der Website einführt. Kein moderner Webbrowser vertraut selbstsignierten Zertifikaten und der Browser zeigt weder das Vorhängeschlosssymbol noch den HTTPS-Status für den Domainnamen an.

Diese Warnungen verursachen bei Besuchern einer Website Angst und Unbehagen. Sie erwecken den Eindruck, dass die Website möglicherweise kompromittiert ist und dass die Website ihre Daten möglicherweise nicht ordnungsgemäß schützt. Besucher werden versucht sein, diese Websites zu meiden und Konkurrenten zu besuchen, die beim Besuch keine Sicherheitswarnungen ausgeben. Verständlicherweise werden Besucher kaum persönliche oder vertrauliche Informationen auf einer Website preisgeben, von der ihr vertrauenswürdiger Webbrowser ihnen mitteilt, dass sie möglicherweise nicht über angemessene Sicherheitsmaßnahmen verfügt.

Keine Sicherheitsupdates oder Widerrufe für Zertifikate

Wie bereits erwähnt, müssen Ihre eigenen Zertifikate nicht erneuert werden, da sie nie ablaufen. Das bedeutet, dass sie nie aktualisiert oder geändert werden, um Schwachstellen zu beheben oder die neuesten Sicherheitsstandards zu erfüllen. Dadurch ist Ihre Umgebung anfällig für Hacker und Cyberangriffe.

Da sie nicht widerrufen werden können, bedeutet dies auch, dass sich alte Zertifikate möglicherweise in Umgebungen befinden, ohne dass das Personal davon weiß. Dies kann zu einem erhöhten Risiko führen, dass Zertifikate ausgenutzt werden. Eine beliebte Methode, ein selbstsigniertes Zertifikat auszunutzen, ist ein Man-in-the-Middle-Angriff, bei dem die über das TLS/SSL-Protokoll ausgetauschten Daten eingesehen werden können, wodurch Besucher einem Identitätsdiebstahl und einem Eindringen in das System ausgesetzt sind.

Fehler bei selbstsigniertem Zertifikat in Zertifikatskette

Wenn ein Entwickler oder IT-Team versucht, ein selbstsigniertes SSL-Zertifikat zu verwenden, kann es bei der Verwendung von OpenSSL intern zu dem Fehler „Selbstsigniertes Zertifikat in Zertifikatskette“ kommen. Bei der SSL/TLS-Kommunikation wird das Vertrauen durch eine Kette von Zertifikaten hergestellt, die zu einer vertrauenswürdigen Stammzertifizierungsstelle zurückführt. Wenn in dieser Kette ein selbstsigniertes Zertifikat gefunden wird, wird das Vertrauensmodell unterbrochen, da dieser Typ nicht von Natur aus vertrauenswürdig ist.

Zertifikate, die von einer vertrauenswürdigen Zertifizierungsstelle ausgestellt wurden, verfügen über eine Vertrauenskette, die zu dieser Zertifizierungsstelle zurückführt und so ihre Legitimität sicherstellt. Ein selbstsigniertes Zertifikat wird jedoch von der Entität erstellt und signiert, die es vorlegt, und nicht von einer vertrauenswürdigen Zertifizierungsstelle. Aus diesem Grund wird ihnen nicht automatisch vertraut, da es keine externe Validierung der Identität der Entität gibt. Dies stellt ein Sicherheitsrisiko dar, da es einem Angreifer ermöglichen könnte, ein betrügerisches Zertifikat vorzulegen und Kunden möglicherweise dazu zu verleiten, eine sichere Verbindung mit einem bösartigen Server herzustellen.

Dieser Fehler kann umgangen werden, wird jedoch als Sicherheitsmaßnahme angegeben, um auf das potenzielle Risiko im Zusammenhang mit einem selbstsignierten Zertifikat hinzuweisen.

Sollte ich ein selbstsigniertes SSL-Zertifikat verwenden?

Wenn Sie sich für diese Art von SSL-Zertifikat entscheiden, sind Sie im Wesentlichen auf sich allein gestellt. Das bedeutet, dass Sie nicht auf die Unterstützung einer vertrauenswürdigen Zertifizierungsstelle und die Anwendung der neuesten kryptografischen Methoden zurückgreifen können, die für eine ordnungsgemäße Authentifizierung und Verschlüsselung von Daten, Geräten und Anwendungen erforderlich sind.

Diese Zertifikate bergen viele Risiken, insbesondere wenn sie öffentlich zugänglich sind. Sie sind für eine Website, die private Informationen wie Gesundheits-, Steuer- oder Finanzdaten verarbeitet, unglaublich riskant. Die Offenlegung dieser Informationen schadet nicht nur dem Markenvertrauen, sondern kann einer Organisation auch finanzielle Schäden durch Bußgelder und Strafen im Rahmen der geltenden Datenschutzbestimmungen zufügen. Aus diesen Gründen werden sie für öffentlich zugängliche Websites oder Anwendungen niemals empfohlen.

Viele gehen davon aus, dass die interne Verwendung selbstsignierter Zertifikate kein Risiko birgt, wenn sie in Bereichen wie Mitarbeiterportalen oder Kommunikationsseiten eingesetzt werden, aber das ist nicht wahr. Sie verursachen dennoch Browser- und Sicherheitswarnungen. Da diese Warnungen ignoriert werden können, weisen Organisationen ihre Mitarbeiter oft an, dies zu tun. Die Sicherheit der internen Website ist gewährleistet, sodass dies direkt nur wenig Schaden anrichtet. Dies kann jedoch dazu führen, dass sich die Mitarbeiter versehentlich daran gewöhnen, diese Art von Warnungen zu ignorieren. Ein solches Verhalten kann die Organisation einem erhöhten Risiko und einer erhöhten Anfälligkeit aussetzen.

So erstellen Sie ein selbstsigniertes Zertifikat

Selbstsignierte Zertifikate werden aufgrund der damit verbundenen Sicherheitsrisiken zwar nicht empfohlen, aber das Einrichten der Konfigurationsdatei und das Abschließen des Ausstellungsprozesses ist je nach Umgebung, wie z. B. Apache- oder Ubuntu-Linux-Servern, unkompliziert.

Erstellen Sie einen privaten Schlüssel

Um das SSL-Zertifikat zu erstellen, sind sowohl eine private Schlüsseldatei als auch eine Zertifikatsignierungsanforderung (CSR) erforderlich. Der Prozess beginnt mit der Anforderung eines privaten Schlüssels bei Ihrer Zertifizierungsstelle. Private Schlüssel sind kryptografische Schlüssel, die mithilfe von Algorithmen wie RSA und ECC generiert werden. RSA-Schlüssel sind eines der ältesten Kryptografiesysteme für diesen Prozess und werden von vielen Planformen unterstützt.

Obwohl selbstsignierende Zertifikate nicht empfohlen werden, finden Sie hier ein Codebeispiel zur Generierung eines Schlüssels mit dem folgenden Befehl:

openssl genrsa -aes256 -out servername.pass.key 4096

Der Befehl fordert Sie zur Eingabe einer Passphrase auf. Die Passphrase kann von der Zertifizierungsstelle verwendet werden, um den Zertifikatsinhaber zu authentifizieren, falls das Zertifikat aus irgendeinem Grund widerrufen werden muss.

Erstellen Sie eine CSR

Nach der Erstellung befindet sich Ihre private Schlüsseldatei nun in Ihrem aktuellen Verzeichnis als servername.key und wird zur Erstellung Ihrer CSR verwendet. Hier ist ein Codebeispiel für die Zertifikatsignierungsanforderung für ein selbstsigniertes Zertifikat:

openssl req -nodes -new -key servername.key -out servername.csr

Anschließend müssen Sie verschiedene Informationen eingeben, darunter Organisation, Organisationseinheit, Ländername, Bundesstaat, Ort und allgemeiner Name. Der allgemeine Name ist in der Regel der Domainname (DNS) oder die IP-Adresse des Standorts.

Nach Eingabe dieser Informationen befindet sich im aktuellen Verzeichnis eine Datei „servername.csr“ mit der privaten Schlüsseldatei „servername.key“.

Zertifikat ausstellen

Schließlich wird aus den Dateien „server.key“ (Datei mit dem privaten Schlüssel) und „server.csr“ ein neues Zertifikat (.crt) generiert. Das generierte Zertifikat kann ein Stammzertifikat oder ein Zwischenzertifikat sein, je nachdem, wie Sie die Vertrauenskette anwenden. Hier ist ein Beispiel für einen Befehl zum Generieren eines neuen Zertifikats:

openssl x509 -req -sha256 -days 365 -in servername.csr -signkey servername.key -out servername.crt

Ähnlich wie im vorherigen Schritt befindet sich die Datei „servername.crt“ im aktuellen Verzeichnis.

Vermeiden Sie das Risiko

Selbstsignierte Zertifikate können erhebliche Risiken bergen, wenn sie in einer internen oder öffentlichen Umgebung eingesetzt werden. Daher wird diese Methode nicht empfohlen.

Wenden Sie sich an Sectigo, um mehr über unsere vertrauenswürdigen SSL/TLS-Zertifikate und unsere Plattform für die Verwaltung des Zertifikatslebenszyklus zu erfahren.

Möchten Sie mehr erfahren? Nehmen Sie Kontakt auf und buchen Sie eine Demo von Sectigo Certificate Manager!

Verwandte Beiträge:

7 verschiedene Arten von SSL-Zertifikaten erklärt

Was passiert, wenn Ihr SSL-Zertifikat abläuft und wie man es erneuert

Leitfaden zur Zertifikatsignieranforderung (CSR)