Docker サーバーへのリモート接続を開始する前に、リモート サーバーに Docker がインストールされており、サーバー上で Docker が正常に実行されていることを確認する必要があります。次に、IDEA 証明書を使用して Docker にリモート接続する手順を完了します。 1. スクリプトを使用してDockerのTLSを暗号化する以下のスクリプトは「Docker リモート API ワンクリック TLS 暗号化」から引用したものです。次に、このスクリプトを使用して、暗号化された証明書ファイルの生成を完了します。 /root ディレクトリに暗号化スクリプトを作成します: vi create_verify.sh。 スクリプトの「xxxx」セクションに、サーバーのパブリック IP アドレスを入力することに注意してください。 #!/bin/bash mkdir -p /root/tls/pem #DOMAIN_HOST=`ifconfig eth0 | grep "inet" | awk '{ print $2}' | sed -n '1p;1q'` DOMAIN_HOST=`ホスト名` ホスト=$DOMAIN_HOST # カスタム情報 PASSWORD="HeDongHudj" 国=CN 州=gd 都市=gz 組織=dounine グループ=dg 名前=湖 SUBJ="/C=$COUNTRY/ST=$PROVINCE/L=$CITY/O=$ORGANIZATION/OU=$GROUP/CN=$HOST" # カスタム情報#================================================================================================================================ #このフォームは、自分自身に証明書を発行するためのものです。あなたが CA 組織である場合、または第三者組織に証明書を発行してもらうこともできます。 openssl genrsa -passout pass:$PASSWORD -aes256 -out /root/tls/pem/ca-key.pem 4096 # 2. ルート証明書のRSA秘密鍵を使用して自己署名ルート証明書(ビジネスライセンス)を生成する openssl req -new -x509 -days 365 -passin pass:$PASSWORD -key /root/tls/pem/ca-key.pem -sha256 -subj $SUBJ -out /root/tls/pem/ca.pem #============================================================================================ #サーバーに証明書を発行する# 1. サーバーは独自の秘密鍵を生成します openssl genrsa -out /root/tls/pem/server-key.pem 4096 # 2. サーバーは証明書を生成します(公開鍵とサーバー情報が含まれます) openssl req -new -sha256 -key /root/tls/pem/server-key.pem -out /root/tls/pem/server.csr -subj "/CN=$DOMAIN_HOST" # 3. どうやって接続するのですか? 複数の IP アドレスを設定し、カンマで区切ることができます。 echo subjectAltName=IP:xxxx,IP:0.0.0.0 > /tmp/extfile.cnf # 4. 認証局は証明書にスタンプを押して有効にします 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 #============================================================================================ #クライアントに証明書を発行する 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 拡張キー使用法 = clientAuth > /tmp/extfile.cnf openssl x509 -passin pass:$PASSWORD -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 #============================================================================================ # ファイルをクリーンアップします rm -rf /root/tls/pem/ca-key.pem rm -rf /root/tls/pem/{サーバー、クライアント}.csr rm -rf /root/tls/pem/ca.srl # 最終ファイル# ca.pem == CA 証明書# client-cert.pem == クライアント証明書# client-key.pem == クライアント秘密鍵# server-cert.pem == サーバー証明書# server-key.pem == サーバー秘密鍵 スクリプトが作成されたら、次のスクリプトを実行します: sh create_verify.sh シェル スクリプトを実行すると、ca.pem、client-cert.pem、client-key.pem、server-cert.pem、server-key.pem 証明書ファイルが /root/tls/pem ディレクトリに生成されます。 次に、ca.pem、client-cert.pem、client-key.pem の 3 つのファイルを任意のローカル ディレクトリにコピーし、client-cert.pem と client-key.pem の名前をそれぞれ cert.pem と key.pem に変更します。このディレクトリは後で使用することに注意してください。 2. Dockerの設定を変更してリモートアクセスを有効にする$ vi /usr/lib/systemd/system/docker.service ExecStart で始まる対応する行を見つけて、次の内容に変更し、先ほどの証明書情報を導入し、接続にポート 2376 を使用します。サーバーが Alibaba Cloud または Tencent Cloud の場合、このポートはファイアウォールで開く必要があります。 Dockerを再起動します。 $ systemctlデーモンリロード $ systemctl dockerを再起動します 3. アイデアを使って接続をテストするidea に docker プラグインをインストールします。この手順はここでは繰り返しません。次に、図に示すように関連情報を入力します。証明書情報は、サーバーからコピーした 3 つのファイルです。保存したディレクトリを選択します。以下のプロンプトが表示されたら、接続が成功したことを意味します。 リモートで Docker サーバーに正常に接続したら、独自のプロジェクトをミラー化し、サーバー k8s にデプロイできます。 リモート Docker サーバー証明書接続の実装方法についてはこれで終わりです。関連する Docker リモート接続証明書コンテンツの詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: CSSにおけるマージン値と垂直マージンの重なりについて
1. 公式ウェブサイトから 64 ビットの zip ファイルをダウンロードします。 2. インスト...
実際、多くの人が「テーブルは絶対に使用すべきではないと聞いたことがある」と言いますが、これは絶対に間...
目次1. ミニプログラム下請け2. Uniapp 下請けアプレット下請けの手順: 1. manife...
1. 足場とは何ですか? 1. Vue CLI Vue CLI は、Vue.js をベースにした迅速...
目次序文シナリオシミュレーション要約する序文最近、sql_mode の話題については何度も話し合われ...
undefined JavaScript では、値が undefined かどうかを判断したい場合は...
この記事では、JavaScript Canvasの動的なワイヤーフレーム効果を描画する具体的なコード...
制約制約によりデータの整合性と一貫性が確保される制約はテーブルレベルの制約と列レベルの制約に分けられ...
まず、href 属性と onclick イベントの実行順序について説明します。マウスが a タグをク...
国務院は本日、新型コロナウイルス感染症との闘いで殉教した方々と犠牲者に対し、全国各民族人民の深い哀悼...
序文Nginx は、イベント駆動型の非同期非ブロッキング処理フレームワークを使用する軽量 HTTP ...
目次ミニプログラム開発者ツールのソースコードを表示する方法ミニプログラムアーキテクチャ設計1. ミニ...
エラーメッセージ:エラー 1862 (HY000): パスワードの有効期限が切れています。ログインす...
仮想マシンは非常に便利なテストソフトウェアです。ハードウェアに損傷を与えることなく、さまざまなテスト...
目次概要1. NULL値のテスト2. ユーザー入力を読み取る導入事実の根源はどこにあるのでしょうか?...