Herzlich Willkommen zu diesem Tutorial. Hier zeige ich dir, wie du eine eigene PKI erstellen kannst um mit dieser später selbstsignierte Serverzertifikate ausgeben zu können.
Voraussetzungen
Eine PKI kann mit vielen verschiedenen Tools erstellt werden. Zur besseren Übersicht habe ich mich für ein Tool mit integriertem GUI entschieden. Dieses kannst du unter folgender Webseite herunterladen xCA. Das Tool ist kostenlos und für Linux, Windows und MacOS erhältlich.
Erstellen einer xCA Datenbank
Nach dem öffnen des Programmes musst du eine neue Zertifikatsdatenbank anlegen. Dafür gibt es unter MacOS den Shortcut [Command] + N. Entsprechend unter Windows: [Strg] + N. Im nachfolgenden Fenster vergibst du einen Namen und suchst einen Speicherort aus.
Nachdem du die Datei angelegt hast, vergibst du ein Passwort und wechselst in die Kategorie Zertifikate.
Anlegen einer CA
Um eine vertrauenswürdige Stammzertifizierungsstelle zu erstellen, wechselst du in den Reiter Zertifikate und erstellst mittels Rechtsklick ein neues Zertifikat
Hier wählst du unter Vorlage das Template [default] CA aus und klickst anschließend auf Erweiterungen übernehmen. Danach kannst du in den Reiter Inhaber wechseln. Hier gibst du alle Standardinformationen der RootCA ein.
Anschließend erstellst du einen neuen Private Key. Klicke dazu auf Erstelle einen neuen Schlüssel und wähle im nächsten Fenster eine Schlüssellänge von mindestens 4096 bit aus. Das ganze bestätigst du mit einem Knopfdruck auf Erstellen. Anschließend kannst du das Zertifikat mit OK erstellen.
Anlegen einer Vorlage
Um Serverzertifikate später einfacher anlegen zu können, kannst du dir optional eine Vorlage für diesen Einsatzzweck erstellen. Hierfür wechselst du in den Reiter Vorlagen und erstellst mit Rechtsklick Neu ein neues Template. Für die Vorlagenwerte kannst du [default] TLS_server verwenden.
Nun kannst du die Standardwerte ändern, welche du im Normalfall immer händisch eintragen müsstest.
Im Reiter Erweiterungen kannst du unter dem Punkt Subject Alternative Name ebenfalls Werte vorgeben. In meinem Fall habe ich das entsprechend folgendermaßen abgeändert:
Mit einem Klick auf OK ist die Vorlage auch schon erstellt und kann verwendet werden.
Erstellen von Zertifikatsanträgen
Vor dem erstellen eines Zertifikats verwende ich immer Zertifikatsanträge. Um nun beispielsweise ein neues Serverzertifikat zu erstellen, musst du im Reiter Zertifikatsanträge mittels Rechtsklick Neu einen neuen Antrag anlegen. Im darauffolgenden Fenster kannst du weiter unten deine Vorlage auswählen um mittels einem Klick auf Alles übernehmen, alle Standartwerte befüllen zu lassen.
Im Reiter Inhaber kannst du dann einen neuen Privaten Schlüssel erstellen. Diesen solltest du wieder mit einer Schlüssellänge von mindestens 4096 bit erstellen.
Außerdem kannst du jetzt noch alle weiteren Parameter entsprechend der Vorgaben abändern. Wichtig ist hier der Common Name. Dieser sollte die Adresse des Servers widerspiegeln, auf welchem du dich nachher verbinden möchtest.
Anschließend musst du im Reiter Erweiterungen die Subjects entsprechend anpassen.
Mit einem klick auf OK wird der Zertifikatsantrag final gespeichert.
Generieren eines neuen Zertifikats
Zum generieren beziehungsweise unterschreiben eines Zertifikatsantrags musst du im Reiter Zertifikatsanträge auf den gewünschten Antrag rechtsklicken. Im darauffolgenden Kontextmenü wählst du dann Unterschreiben aus.
Im nächsten Fenster musst du die Stammzertifizierungsstelle bzw. die Zwischenzertifizierungsstelle auswählen.
Im Reiter Erweiterungen kannst du danach einstellen, wie lange das Zertifikat gültig sein soll. In meinem Fall ein Jahr.
Anschließend kann das Zertifikat mit einem klick auf OK erstellt werden. Das Zertifikat findest du im Anschluss unter dem Reiter Zertifikate.
Zum exportieren wählst du das Zertifikat mit einem Rechtsklick aus und klickst auf Exportieren. Danach wählst du nur noch das Format aus. Das Zertifikat der RootCA wird meistens auf der Clientseite z.B. Webbrowser in die vertrauenswürdigen Stammzertifizierungsstellen eingespielt. Das von der RootCA signierte Serverzertifikat samt private Key muss hingegeben auf der Serverseite z.B. Webserver eingespielt werden.
Schlusswort
Das wars auch schon! Vielen Dank fürs lesen und viel Spaß beim generieren von selbstsignierten Zertifikaten!
Pingback: Bitwarden Server unter Debian 11 installieren – UnknownWorkspace
Pingback: Reverse Proxy unter Debian 11 installieren – UnknownWorkspace
Pingback: Deepnet Security Token Management Service unter Windows Server installieren - UnknownWorkspace
Pingback: Remote Desktop Protocol (RDP) Zertifikat tauschen – UnknownWorkspace
Pingback: BookStack unter Debian 12 installieren – UnknownWorkspace
Pingback: Shopware 6 unter Debian 12 installieren – UnknownWorkspace