# Zertifikate und SSL

Zertifikate von Let's Encrypt, Zertifikat einrichten und Zertifikate selbst erstellen.

# SSL mit Let's Encrypt

FINN.ghost kann sein Zertifikat selbst bei Let's Encrypt beantragen und automatisch
erneuern. Das ist der empfohlene Weg — er ersetzt das Erstellen und Verteilen eigener
Zertifikate.

![Einstellungen SSL](https://wiki.dako-it.com/uploads/images/gallery/2026-09/ghostdocs-finnghost-systemhandbuch-sys-letsencrypt-a8adeb2c-einstellungen-ssl.png)

## Warum das die einfachere Lösung ist

| | eigenes Zertifikat | Let's Encrypt |
| ------------------------- | -------------------------------- | ------------------------- |
| Am Arbeitsplatz | Stammzertifikat installieren, je Rechner | nichts zu tun |
| Gültigkeit | von Hand erneuern | erneuert sich selbst |
| Vom Browser anerkannt | erst nach Installation | sofort |
| Voraussetzung | keine | eine öffentliche Domain |

<p class="callout success">Der entscheidende Unterschied liegt beim Anwender: Ein selbst erstelltes Zertifikat muss auf jedem Rechner installiert werden, der die Oberfläche aufruft — und auf jedem neuen wieder. Mit Let's Encrypt entfällt das vollständig.</p>

## Voraussetzungen

| | |
| ------------------------------- | -------------------------------------------- |
| **Lizenzmodul SSL** | ohne dieses Modul lässt sich der Schalter nicht setzen |
| **Eine Domain** | etwa `finn.kunde.de` |
| **Zugriff auf das DNS der Domain** | für einen einmaligen CNAME-Eintrag |
| **Ausgehende Internetverbindung** | für den Abruf des Zertifikats |

<p class="callout success">FINN.ghost muss dafür <strong>nicht</strong> aus dem Internet erreichbar sein. Der Nachweis läuft über einen DNS-Eintrag, nicht über eine eingehende Verbindung — es muss also kein Port ins Internet geöffnet werden.</p>

## Einrichten

### 1. Domain und E-Mail eintragen

| Feld | Inhalt |
| ---------- | ------------------------------------------------- |
| **Domain** | die öffentliche Domain, unter der FINN.ghost erreichbar sein soll |
| **E-Mail** | Kontaktadresse für Let's Encrypt |

<p class="callout info">Die Domain muss auf die Installation zeigen, damit der Aufruf im Browser funktioniert — für die Ausstellung des Zertifikats selbst genügt der CNAME aus Schritt 2.</p>

### 2. Registrieren

Die Schaltfläche **Registrieren** meldet die Installation einmalig an. Danach zeigt die Karte
einen **CNAME-Eintrag**, der im öffentlichen DNS der Domain angelegt werden muss:

```text
_acme-challenge.finn.kunde.de.  CNAME  <von FINN.ghost angezeigter Wert>.
```

<p class="callout danger">Dieser Eintrag ist der Kern des Verfahrens: Über ihn weist FINN.ghost bei jeder Ausstellung nach, dass es zur Domain gehört. Er muss <strong>dauerhaft</strong> bestehen bleiben — wird er gelöscht, scheitert die nächste Erneuerung.</p>

<p class="callout info">Angelegt wird er einmal. Danach ist am DNS nichts mehr zu tun, auch nicht bei jeder Erneuerung.</p>

### 3. Zertifikat anfordern

**Zertifikat anfordern** holt das Zertifikat. Anschließend startet die Anwendung neu, damit
der Webserver es verwendet.

Danach zeigt die Karte, bis wann es gültig ist und wie viele Tage bleiben.

<p class="callout warning">Der Vorgang dauert bis zu zwei Minuten — der DNS-Eintrag muss sich erst verbreiten. Solange bitte nichts erneut anklicken.</p>

## Test-Modus

Der Haken **Test-Modus (Staging)** arbeitet gegen die Übungsumgebung von Let's Encrypt.

<p class="callout success">Sinnvoll beim Einrichten: Let's Encrypt begrenzt die Zahl der Ausstellungen je Domain und Woche. In der Übungsumgebung gilt diese Grenze nicht — Fehlversuche kosten dort nichts.</p>

<p class="callout danger">Ein Zertifikat aus dem Test-Modus wird von <strong>keinem</strong> Browser anerkannt. Nach dem erfolgreichen Test den Haken entfernen und das Zertifikat erneut anfordern.</p>

## Mehrere Installationen, eine Domain

**Exportieren** erzeugt einen Code, der auf einer weiteren FINN.ghost-Installation unter
**Importieren** eingefügt wird. Die zweite Installation übernimmt damit Domain und Zugang,
holt sich ihr Zertifikat selbst und startet neu.

<p class="callout success">Damit braucht der CNAME-Eintrag nur einmal angelegt zu werden, auch wenn mehrere Installationen dieselbe Domain nutzen.</p>

<p class="callout danger">Der Exportcode enthält den Zugang zur Zertifikatsverwaltung dieser Domain. Er gehört nicht in eine E-Mail an Dritte und nicht in ein Ticketsystem.</p>

## Erneuerung

Läuft von selbst:

| | |
| ------------------------ | ------------------------------------------ |
| Prüfung | alle 12 Stunden, Aufgabe *SSL Zertifikat erneuern* |
| Erneuert wird | wenn weniger als 30 Tage Restlaufzeit bleiben |
| Zusätzlich | bei jedem Start der Anwendung |

<p class="callout info">Nach einer Erneuerung startet die Anwendung neu, damit das neue Zertifikat verwendet wird. Das dauert wenige Sekunden und fällt im Betrieb kaum auf — laufende Übertragungen brechen dabei aber ab.</p>

Siehe [Zeitsteuerung der Module (allgemein)](https://wiki.dako-it.com/books/finnghost-systemhandbuch/page/zeitsteuerung-der-module-allgemein).

## Wo die Dateien liegen

Im Installationsordner unter `data\ssl`:

| Datei | Inhalt |
| ------------------- | ---------------------------- |
| `server.cert` | das Zertifikat |
| `server.key` | der zugehörige Schlüssel |
| `acme-account.key` | der Zugang zu Let's Encrypt |

<p class="callout warning">Diese Dateien gehören in die Datensicherung des Servers — und ansonsten in keine fremden Hände.</p>

## Wenn es nicht klappt

| Symptom | Ursache |
| ------------------------------------------ | ---------------------------------- |
| Schalter lässt sich nicht setzen | Lizenzmodul SSL fehlt |
| Meldung, es sei nicht vollständig konfiguriert | Domain, E-Mail oder Registrierung fehlt |
| Ausstellung bricht ab | CNAME nicht angelegt oder noch nicht verbreitet |
| Browser warnt weiter | Test-Modus noch aktiv, oder die Domain wird nicht aufgerufen |
| lief, jetzt abgelaufen | CNAME wurde entfernt, oder keine Internetverbindung |

<p class="callout info">Wird die Oberfläche über <code>localhost</code> oder eine IP-Adresse aufgerufen, warnt der Browser trotz gültigem Zertifikat — es gilt für die Domain. Der Aufruf muss über die Domain gehen.</p>

Die Meldungen stehen im Protokoll. Siehe [Log Informationen](https://wiki.dako-it.com/books/finnghost-systemhandbuch/page/log-informationen).

## Nächster Schritt

[Zertifikat einrichten](https://wiki.dako-it.com/books/finnghost-systemhandbuch/page/zertifikat-einrichten)

# Zertifikat einrichten

Der Weg ohne öffentliche Domain: ein von DAKO-IT ausgestelltes Zertifikat in der Installation
hinterlegen und das Stammzertifikat an den Arbeitsplätzen installieren.

<p class="callout success">Ist die Installation unter einer öffentlichen Domain erreichbar, ist Let's Encrypt der einfachere Weg — dann entfällt dieser Abschnitt vollständig, weil an den Arbeitsplätzen nichts zu tun ist.</p>

Siehe [SSL mit Let's Encrypt](https://wiki.dako-it.com/books/finnghost-systemhandbuch/page/ssl-mit-lets-encrypt).

## Voraussetzung

Die Oberfläche muss über den **Rechnernamen** aufgerufen werden, nicht über die IP-Adresse:

```text
https://ihrghostserver:8083
```

<p class="callout danger">Ein Zertifikat gilt für einen Namen. Beim Aufruf über die IP-Adresse warnt der Browser weiter, auch wenn alles richtig eingerichtet ist.</p>

## Schritt 1 — Zertifikat in der Installation hinterlegen

Unter **SelectLine → Einstellungen → FINN.ghost**.

![Schaltflächen zum Download der Zertifikate](https://wiki.dako-it.com/uploads/images/gallery/2026-09/ghostdocs-finnghost-systemhandbuch-sys-zertifikat-einrichten-28f9b5b4-zertifikat-download.png)

1. **ZERTIFIKATE DOWNLOAD** — lädt `cert.zip` herunter.
2. Archiv entpacken. Darin liegen `server.cert` und `server.key`.
3. Beide Dateien in den Ordner `data\ssl` der Installation legen und die vorhandenen
   überschreiben:

```text
C:\DAKO\SelectLine.ghost\data\ssl
```

4. Den Windows-Dienst `SL_<Ordnername>` neu starten.

<p class="callout info">Der Pfad richtet sich nach dem gewählten Installationsordner. Wurde ein anderer Ordner verwendet, liegt <code>data\ssl</code> entsprechend dort.</p>

<p class="callout warning">Ohne Neustart des Dienstes bleibt das alte Zertifikat in Verwendung — die Dateien werden nur beim Start gelesen.</p>

## Schritt 2 — Stammzertifikat am Arbeitsplatz installieren

Über **ROOT ZERTIFIKAT DOWNLOAD** die Datei `RootCA.crt` herunterladen. Wie sie installiert
wird, hängt vom Browser ab.

<p class="callout warning">Dieser Schritt ist an <strong>jedem</strong> Rechner nötig, der die Oberfläche aufruft — auch an jedem neuen. Das ist der Aufwand, den Let's Encrypt erspart.</p>

### Firefox

Firefox verwaltet Zertifikate in seinen eigenen Einstellungen.

![Zertifikatsverwaltung in Firefox](https://wiki.dako-it.com/uploads/images/gallery/2026-09/ghostdocs-finnghost-systemhandbuch-sys-zertifikat-einrichten-1015e3d7-zertifikat-firefox-einstellungen.png)

Dort `RootCA.crt` **importieren**.

![Import in Firefox](https://wiki.dako-it.com/uploads/images/gallery/2026-09/ghostdocs-finnghost-systemhandbuch-sys-zertifikat-einrichten-99a3e7a9-zertifikat-firefox-import.png)

### Chrome, Edge und andere

Diese Browser nutzen die Zertifikatsverwaltung von Windows. Ein Doppelklick auf
`RootCA.crt` startet die Installation.

![Zertifikat installieren](https://wiki.dako-it.com/uploads/images/gallery/2026-09/ghostdocs-finnghost-systemhandbuch-sys-zertifikat-einrichten-c0797665-zertifikat-windows-doppelklick.png)

Im Assistenten den passenden Speicher wählen und die folgenden Dialoge bestätigen.

![Speicher auswählen](https://wiki.dako-it.com/uploads/images/gallery/2026-09/ghostdocs-finnghost-systemhandbuch-sys-zertifikat-einrichten-ab7dc201-zertifikat-windows-speicher.png)

![Bestätigen](https://wiki.dako-it.com/uploads/images/gallery/2026-09/ghostdocs-finnghost-systemhandbuch-sys-zertifikat-einrichten-e3d850af-zertifikat-windows-bestaetigen.png)

<p class="callout info">Anschließend den Browser vollständig schließen und neu öffnen. Solange ein Fenster offen bleibt, gilt oft noch die alte Bewertung.</p>

## Wenn der Browser weiter warnt

| Ursache | Abhilfe |
| ------------------------------------------ | ------------------------------------ |
| Aufruf über IP-Adresse | über den Rechnernamen aufrufen |
| Dienst nicht neu gestartet | Dienst neu starten |
| Stammzertifikat am Arbeitsplatz fehlt | Schritt 2 dort ausführen |
| Firefox statt Windows-Speicher | in Firefox gesondert importieren |
| Zertifikat abgelaufen | neu herunterladen und Schritt 1 wiederholen |

## Nächster Schritt

[Zertifikat erstellen (optional)](https://wiki.dako-it.com/books/finnghost-systemhandbuch/page/zertifikat-erstellen-optional)