BLOG | NGINX

Sicheres Erstellen von NGINX Plus-Containern mithilfe der 1Password-CLI

NGINX-Teil-von-F5-horiz-schwarz-Typ-RGB
Cody Green Miniaturbild
Cody Grün
Veröffentlicht am 29. August 2023

Wenn Sie F5 NGINX Plus regelmäßig verwenden, erstellen Sie wahrscheinlich Container, um neue Features oder Funktionen auszuprobieren. Und beim Erstellen von NGINX Plus-Containern speichern Sie häufig vertrauliche Informationen wie das NGINX-Repository-Zertifikat und den Schlüssel auf Ihrem lokalen Dateisystem. Obwohl es unkompliziert ist, vertrauliche Dateien zu einer .gitignore- Repository-Datei hinzuzufügen, ist dieser Vorgang weder ideal noch sicher. Tatsächlich gibt es viele Beispiele , bei denen Ingenieure versehentlich vertrauliche Informationen in ein Repository übertragen.

Eine bessere Methode ist die Verwendung einer Lösung zur Geheimnisverwaltung. Ich persönlich bin ein langjähriger Fan von 1Password und habe vor Kurzem das CLI-Tool entdeckt. Dieses Tool erleichtert Entwicklern und Plattformingenieuren die Interaktion mit Geheimnissen in ihrem täglichen Arbeitsablauf.

In diesem Blogbeitrag beschreiben wir, wie Sie mit der 1Password CLI sicher einen NGINX Plus-Container erstellen. Dieses Beispiel setzt voraus, dass Sie über ein NGINX Plus-Abonnement , ein 1Password-Abonnement mit installiertem CLI-Tool , Zugriff auf eine Umgebung mit einer Shell (Bash oder Zsh) und installiertes Docker verfügen.

Speichern Sie Geheimnisse in 1Password

Der erste Schritt besteht darin, Ihre Geheimnisse in 1Password zu speichern, das mehrere Geheimnistypen wie API-Anmeldeinformationen, Dateien, Notizen und Passwörter unterstützt. In diesem NGINX Plus-Anwendungsfall nutzen wir die sichere Dateifunktion von 1Password.

Sie können Ihr NGINX-Repository-Zertifikat und Ihren Schlüssel vom MyF5-Portal erhalten. Befolgen Sie die 1Password-Dokumentation, um ein sicheres Dokument für das NGINX-Repository-Zertifikat und den Schlüssel zu erstellen. Nachdem Sie die beiden sicheren Dokumente erstellt haben, folgen Sie den Schritten zum Abrufen der geheimen 1Password-Referenz .

Notiz : Zum Zeitpunkt des Schreibens dieses Artikels unterstützt 1Password nicht mehrere Dateien im selben Datensatz.

Erstellen Sie den NGINX Plus-Container

Jetzt ist es an der Zeit, den NGINX Plus-Container zu erstellen, der Ihre sicheren Dateien und ihre geheimen Referenz-URIs (Uniform Resource Identifiers) nutzt. Dieser Schritt verwendet das Beispiel -Dockerfile aus dem NGINX Plus Admin Guide .

Bereiten Sie den Docker-Build -Prozess vor

Bereiten Sie den Docker-Build -Prozess vor, nachdem Sie die Docker-Datei in einem neuen Verzeichnis gespeichert haben. Um Ihre 1Password-Geheimnisse an den Docker-Build zu übergeben, speichern Sie zunächst jede geheime Referenz-URI in einer Umgebungsvariable. Öffnen Sie dann ein neues Bash-Terminal in dem Verzeichnis, in dem Sie Ihre Docker-Datei gespeichert haben.

Geben Sie diese Befehle in das Bash-Terminal ein:

exportiere NGINX_CRT="op://Arbeit/nginx-repo-crt/nginx-repo.crt"exportiere NGINX_KEY="op://Arbeit/nginx-repo-key/nginx-repo.key"

Ersetzen geheimer Referenz-URIs

Der Befehl „op run“ ermöglicht Ihrer 1Password-CLI , geheime Referenz-URIs in Umgebungsvariablen durch den Wert des Geheimnisses zu ersetzen . Sie können dies in Ihrem Docker-Build -Befehl nutzen, um das NGINX-Repository-Zertifikat und den Schlüssel an den Build-Container zu übergeben.

Um die Erstellung Ihres Containers abzuschließen, führen Sie die folgenden Befehle im selben Terminal aus, das Sie im vorherigen Schritt verwendet haben:

op ausführen – Docker-Build – kein Cache – geheime ID=nginx-key, env=NGINX_KEY – geheime ID=nginx-crt, env=NGINX_CRT – t nginxplus – load.

In diesem Befehl führt op run den Befehl „Docker Build“ aus und erkennt zwei Umgebungsvariablenreferenzen ( NGINX_CRT und NGINX_KEY ) mit den geheimen Referenz-URIs von 1Password. Der Op -Befehl ersetzt die URI durch den tatsächlichen Wert des Geheimnisses.

Legen Sie noch heute los

Indem Sie die einfachen Schritte befolgen und 1Password CLI verwenden, können Sie NGINX Plus-Container gegen das NGINX Plus-Repository erstellen, ohne das Zertifikat und den Schlüssel auf Ihrem lokalen Dateisystem zu speichern – und so eine Umgebung für mehr Sicherheit schaffen.

Wenn Sie NGINX Plus noch nicht kennen, können Sie noch heute Ihre 30-tägige kostenlose Testversion starten oder uns kontaktieren, um Ihre Anwendungsfälle zu besprechen .


„Dieser Blogbeitrag kann auf Produkte verweisen, die nicht mehr verfügbar und/oder nicht mehr unterstützt werden. Die aktuellsten Informationen zu verfügbaren F5 NGINX-Produkten und -Lösungen finden Sie in unserer NGINX-Produktfamilie . NGINX ist jetzt Teil von F5. Alle vorherigen NGINX.com-Links werden auf ähnliche NGINX-Inhalte auf F5.com umgeleitet."