Bevor wir mit der Remote-Verbindung zum Docker-Server beginnen, müssen wir sicherstellen, dass Docker auf dem Remote-Server installiert wurde und dass Docker auf dem Server normal ausgeführt wird. Führen Sie als Nächstes die Schritte zur Remote-Verbindung mit Docker mit IDEA-Zertifikaten aus. 1. Verwenden Sie Skripte, um TLS für Docker zu verschlüsselnDas folgende Skript ist ein Zitat aus „Docker Remote API One-Click TLS-Verschlüsselung“. Verwenden Sie als Nächstes dieses Skript, um die Generierung der verschlüsselten Zertifikatsdatei abzuschließen. Erstellen Sie ein Verschlüsselungsskript im /root-Verzeichnis: vi create_verify.sh. Beachten Sie, dass Sie im Abschnitt „xxxx“ des Skripts die öffentliche IP-Adresse Ihres Servers eingeben müssen. #!/bin/bash mkdir -p /root/tls/pem #DOMAIN_HOST=`ifconfig eth0 | grep "inet" | awk '{ print $2}' | sed -n '1p;1q'` DOMAIN_HOST=`Hostname` HOST=$DOMAIN_HOST # Benutzerdefinierte Informationen PASSWORD="HeDongHudj" LAND=CN PROVINZ=gd STADT=gz ORGANISATION=dounine GRUPPE=dg NAME=See SUBJ="/C=$LAND/ST=$PROVINZ/L=$STADT/O=$ORGANISATION/OU=$GRUPPE/CN=$HOST" # Benutzerdefinierte Informationen#================================================================================================================= #Mit diesem Formular stellen Sie sich selbst ein Zertifikat aus. Sie sind die Zertifizierungsstelle, oder Sie können es einer Drittorganisation zur Ausstellung von openssl genrsa -passout pass:$PASSWORD -aes256 -out /root/tls/pem/ca-key.pem 4096 geben. # 2. Generieren Sie ein selbstsigniertes Stammzertifikat (Geschäftslizenz) mit dem privaten RSA-Schlüssel des Stammzertifikats openssl req -new -x509 -days 365 -passin pass:$PASSWORT -key /root/tls/pem/ca-key.pem -sha256 -subj $SUBJ -out /root/tls/pem/ca.pem #============================================================================================ #Stellen Sie dem Server ein Zertifikat aus# 1. Der Server generiert seinen eigenen privaten Schlüssel openssl genrsa -out /root/tls/pem/server-key.pem 4096 # 2. Der Server generiert ein Zertifikat (das den öffentlichen Schlüssel und die Serverinformationen enthält) openssl req -new -sha256 -key /root/tls/pem/server-key.pem -out /root/tls/pem/server.csr -subj "/CN=$DOMAIN_HOST" # 3. Wie verbinde ich mich mit mir? Sie können mehrere IP-Adressen festlegen und diese durch Kommas trennen. echo subjectAltName=IP:xxxx,IP:0.0.0.0 > /tmp/extfile.cnf # 4. Die Zertifizierungsstelle stempelt das Zertifikat, um es wirksam zu machen openssl x509 -passin pass:$PASSWORD -req -days 365 -sha256 -in /root/tls/pem/server.csr -CA /root/tls/pem/ca.pem -CAkey /root/tls/pem/ca-key.pem -CAcreateserial -out /root/tls/pem/server-cert.pem -extfile /tmp/extfile.cnf #============================================================================================ #Stellen Sie dem Client ein Zertifikat aus openssl genrsa -out /root/tls/pem/client-key.pem 4096 openssl req -subj '/CN=client' -new -key /root/tls/pem/client-key.pem -out /root/tls/pem/client.csr echo extendedKeyUsage = clientAuth > /tmp/extfile.cnf openssl x509 -passin pass:$PASSWORT -req -days 365 -sha256 -in /root/tls/pem/client.csr -CA /root/tls/pem/ca.pem -CAkey /root/tls/pem/ca-key.pem -CAcreateserial -out /root/tls/pem/client-cert.pem -extfile /tmp/extfile.cnf #============================================================================================ # Bereinigen Sie die Datei rm -rf /root/tls/pem/ca-key.pem rm -rf /root/tls/pem/{server,client}.csr rm -rf /root/tls/pem/ca.srl # Endgültige Datei# ca.pem == CA-Zertifikat# client-cert.pem == Client-Zertifikat# client-key.pem == Privater Client-Schlüssel# server-cert.pem == Server-Zertifikat# server-key.pem == Privater Server-Schlüssel Nachdem das Skript erstellt wurde, führen Sie es aus: sh create_verify.sh Nach der Ausführung des Shell-Skripts werden die Zertifikatsdateien ca.pem, client-cert.pem, client-key.pem, server-cert.pem und server-key.pem im Verzeichnis /root/tls/pem generiert. Kopieren Sie als Nächstes die drei Dateien ca.pem, client-cert.pem und client-key.pem in ein beliebiges lokales Verzeichnis und benennen Sie client-cert.pem und client-key.pem in cert.pem bzw. key.pem um. Denken Sie daran, dass dieses Verzeichnis später verwendet wird. 2. Ändern Sie die Docker-Konfiguration und aktivieren Sie den Fernzugriff$ vi /usr/lib/systemd/system/docker.service Suchen Sie die entsprechende Zeile, die mit ExecStart beginnt, und ändern Sie sie in den folgenden Inhalt. Geben Sie jetzt die Zertifikatsinformationen ein und verwenden Sie Port 2376 für die Verbindung. Wenn es sich bei dem Server um Alibaba Cloud oder Tencent Cloud handelt, muss dieser Port in der Firewall geöffnet werden. Docker neu starten: $ systemctl daemon-neu laden $ systemctl Neustart Docker 3. Verwenden Sie idea, um die Verbindung zu testenInstallieren Sie das Docker-Plugin auf idea. Dieser Schritt wird hier nicht wiederholt. Geben Sie dann die relevanten Informationen wie in der Abbildung gezeigt ein. Die Zertifikatsinformationen sind die drei Dateien, die wir gerade vom Server kopiert haben. Wählen Sie das gerade gespeicherte Verzeichnis aus. Wenn Sie die folgende Eingabeaufforderung sehen, bedeutet dies, dass die Verbindung erfolgreich war! Nach erfolgreicher Remote-Verbindung zum Docker-Server können wir unser eigenes Projekt in einen Spiegel umwandeln und es auf dem Server k8s bereitstellen. Dies ist das Ende dieses Artikels über die Implementierung einer Remote-Docker-Server-Zertifikatverbindung. Weitere relevante Inhalte zu Docker-Remote-Verbindungszertifikaten finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: HTML-Cellpadding- und Cellspacing-Attribute in Bildern erklärt
>>: Methoden zum Defragmentieren und Freigeben von Speicherplatz in MySQL-Tabellen
Vorwort Hallo zusammen, hier ist der CSS-Assisten...
mysqldump-Tool-Sicherung Sichern Sie die gesamte ...
Verwenden Sie Leinwand, um eine bunte Uhr zu schr...
Hallo allerseits, heute werden wir darüber sprech...
Die Generierung und Überprüfung von Zufallscodes ...
Autotrash ist ein Befehlszeilenprogramm, das den ...
1. Melden Sie sich bei MySQL an: mysql -u root -h...
Bearbeiten Sie /etc/docker/daemon.json und fügen ...
In diesem Artikelbeispiel wird der spezifische HT...
Inhaltsverzeichnis 1. Einleitung 2. Konfiguration...
@Font-face grundlegende Einführung: @font-face ist...
Einführung in jQuery Die jQuery-Bibliothek kann e...
1. Einleitung Unsere realen Server sollten nicht ...
CSS-Schrifteigenschaften definieren die Schriftfa...
Inhaltsverzeichnis 1. Einleitung 2. Lösung 2.1 Ko...