LDAP Installation
📜 Zertifikat mit ACME automatisch installieren & verwalten (Docker, Synology, All-Inkl)
🔗 Offizielles Projekt:
👉 acme.sh – GitHub
🐳 Docker Container
version: "2.1"
services:
acme.sh:
image: neilpang/acme.sh
container_name: tool-acme.sh
environment:
- PUID=1026 # Benutzer-ID (z. B. acme user)
- PGID=100 # Gruppen-ID
- TZ=Europe/Berlin
- UMASK_SET=002
network_mode: host
volumes:
- /volume3/docker/acme/config:/acme.sh # persistente Konfiguration
- /volume3/docker/acme/key:/key # optionale Schlüsselablage
command: daemon
restart: unless-stopped
🔐 DSM-Zugangsdaten setzen (für Deployment auf Synology)
👉 Anleitung: Synology NAS Guide (acme.sh)
Im Container:
export SYNO_USERNAME=adminUser
export SYNO_PASSWORD=adminPassword
export SYNO_SCHEME=https
export SYNO_HOSTNAME=dsm.familie-jonas.bayern
export SYNO_PORT=5001
export SYNO_CREATE=1
🔔 Benachrichtigung per Pushover aktivieren
1. Zugangsdaten exportieren:
export PUSHOVER_TOKEN=your_token
export PUSHOVER_USER=your_user_key
2. Notify-Hook aktivieren:
acme.sh --set-notify --notify-hook pushover --notify-level 3
--notify-level Bedeutungen:
| Level | Beschreibung |
|---|---|
0 |
Deaktiviert |
1 |
Nur bei Fehlern |
2 |
Bei erfolgreicher Erneuerung oder Fehler |
3 |
Immer (auch wenn Zertifikat übersprungen wurde) |
💡 Hinweis: Nach erfolgreichem Test mit --notify-level 3 ggf. auf --notify-level 2 reduzieren.
🌐 DNS API (All-Inkl)
👉 Doku: dns_kas
export KAS_Login=<ACCOUNTID>
export KAS_Authdata=<PLAINTEXTPASSWORD>
export KAS_Authtype=plain
🧪 Zertifikat manuell testen
Zertifikat erstellen:
acme.sh --issue -d ldap.familie-jonas.bayern --dns dns_kas --keylength 2048 --server letsencrypt
🛑 Hinweis:
Ohne --keylength erstellt acme.sh standardmäßig ein ECC-Zertifikat.
Die Angabe --keylength 2048 erzwingt ein RSA-Zertifikat, das besser kompatibel ist – z. B. mit Synology DSM.
Zertifikat deployen:
acme.sh --deploy -d ldap.familie-jonas.bayern --deploy-hook synology_dsm
⚙️ Automatische Erneuerung (Cronjob im Container)
Interner Cronjob aktivieren:
acme.sh --install-cronjob
➡️ Dieser läuft alle 24h automatisch im Container (sofern command: daemon im Docker aktiv ist)
Manuell testen:
acme.sh --cron
Beispielausgabe:
[Wed Aug 6 09:59:57 CEST 2025] ===Starting cron===
[Wed Aug 6 09:59:57 CEST 2025] Already up to date!
[Wed Aug 6 09:59:57 CEST 2025] Automatically upgraded to: 3.1.2
[Wed Aug 6 09:59:57 CEST 2025] Renewing: 'ldap.familie-jonas.bayern'
[Wed Aug 6 09:59:57 CEST 2025] Skipping. Next renewal time is: 2025-10-04T07:27:23Z
[Wed Aug 6 09:59:57 CEST 2025] Add '--force' to force renewal.
[Wed Aug 6 09:59:57 CEST 2025] Skipped ldap.familie-jonas.bayern
[Wed Aug 6 09:59:57 CEST 2025] Sending via: pushover
[Wed Aug 6 09:59:59 CEST 2025] PUSHOVER send success.
[Wed Aug 6 09:59:59 CEST 2025] pushover Success
[Wed Aug 6 09:59:59 CEST 2025] ===End cron===
🧩 Optional: Alles als Shell-Skript zusammenführen
#!/bin/bash
# Konfiguration setzen
export SYNO_USERNAME=adminUser
export SYNO_PASSWORD=adminPassword
export SYNO_SCHEME=https
export SYNO_HOSTNAME=dsm.familie-jonas.bayern
export SYNO_PORT=5001
export SYNO_CREATE=1
export KAS_Login=<ACCOUNTID>
export KAS_Authdata=<PLAINTEXTPASSWORD>
export KAS_Authtype=plain
export PUSHOVER_TOKEN=your_token
export PUSHOVER_USER=your_user_key
# Zertifikat ausstellen + deployen
acme.sh --issue -d ldap.familie-jonas.bayern --dns dns_kas --keylength 2048 --server letsencrypt --force
acme.sh --deploy -d ldap.familie-jonas.bayern --deploy-hook synology_dsm
📁 Dieses Skript kann auch über den DSM-Aufgabenplaner regelmäßig (oder auch einmalig zum Anlegen der Konfiguration) ausgeführt werden – alternativ zur Docker-internen Automatik.
Keine Kommentare vorhanden
Keine Kommentare vorhanden