Konfiguration der SSL/TLS-Verschlüsselung für den Docker-Registry
Die Sicherung eines Docker-Registrys (Docker Registry) mit SSL/TLS-Verschlüsselung (SSL/TLS Encryption) ist ein entscheidender Schritt, um die Vertraulichkeit und Integrität der im Registry gespeicherten Daten zu schützen. In diesem Abschnitt werden Sie durch den Prozess der Konfiguration der SSL/TLS-Verschlüsselung für Ihren Docker-Registry geführt.
Generierung von SSL/TLS-Zertifikaten
Um die SSL/TLS-Verschlüsselung für Ihren Docker-Registry zu aktivieren, müssen Sie gültige SSL/TLS-Zertifikate (SSL/TLS Certificates) erhalten. Sie können entweder eine vertrauenswürdige Zertifizierungsstelle (Certificate Authority, CA) nutzen, um die Zertifikate zu erhalten, oder selbstsignierte Zertifikate für Ihre interne Nutzung generieren.
Hier ist ein Beispiel für die Generierung selbstsignierter SSL/TLS-Zertifikate mit OpenSSL auf einem Ubuntu 22.04-System:
## Generate a private key
openssl genrsa -out registry.key 2048
## Generate a self-signed certificate
openssl req -new -x509 -days 365 -key registry.key -out registry.crt
Konfiguration des Docker-Registrys zur Verwendung von SSL/TLS
Um den Docker-Registry zur Verwendung der SSL/TLS-Verschlüsselung zu konfigurieren, befolgen Sie diese Schritte:
- Kopieren Sie die SSL/TLS-Zertifikat- und Schlüsseldateien auf den Docker-Registry-Host.
- Aktualisieren Sie die Docker-Registry-Konfigurationsdatei (typischerweise unter
/etc/docker/registry/config.yml
gespeichert), um die SSL/TLS-Einstellungen hinzuzufügen:
version: 0.1
log:
fields:
service: registry
storage:
cache:
blobdescriptor: inmemory
filesystem:
rootdirectory: /var/lib/registry
http:
addr: :5000
tls:
certificate: /path/to/registry.crt
key: /path/to/registry.key
- Starten Sie den Docker-Registry-Dienst neu, um die Änderungen anzuwenden.
sudo systemctl restart docker-registry
Nach der Konfiguration des Docker-Registrys zur Verwendung der SSL/TLS-Verschlüsselung wird alle Kommunikation zwischen dem Registry und seinen Clients (z. B. Docker-Daemon, Docker CLI) mithilfe der bereitgestellten SSL/TLS-Zertifikate gesichert.
Überprüfung der SSL/TLS-Verschlüsselung
Sie können die SSL/TLS-Verschlüsselung überprüfen, indem Sie versuchen, den Docker-Registry über das HTTPS-Protokoll zuzugreifen:
docker pull https://registry.example.com:5000/my-image:latest
Wenn die SSL/TLS-Konfiguration korrekt eingerichtet ist, sollte der Docker-Client in der Lage sein, das Image aus dem gesicherten Docker-Registry ohne Probleme abzurufen.