1. 環境: CentOS7、OpenSSL1.1.1k。2. コンセプト:ルート証明書: サーバー証明書とクライアント証明書を生成するための基礎となります。自己署名証明書、つまり CA 証明書とも呼ばれます。 サーバー証明書: ルート証明書によって発行され、サーバー上で構成されます。 クライアント証明書: ルート証明書によって発行され、クライアント上で構成されます。 Web サーバー上で構成し、ブラウザーにインストールすることもできます。 対称暗号化: ファイルはパスワードで暗号化され、同じパスワードを使用して復号化されます。 非対称暗号化: 1 つのパスワードが暗号化に使用され、別のパスワード セットが復号化に使用されます。これには次の 2 つの状況が含まれます。 データの暗号化に使用する場合:公開鍵暗号化、秘密鍵復号化 ファイル署名に使用する場合: 秘密鍵署名、公開鍵署名検証 3. 手順:1. openssl設定ファイルopenssl.cnfを表示する vim /etc/pki/tls/openssl.cnf 2. ルート証明書CAに必要なディレクトリとファイルを作成する /etc/pki/CA をコピーします #設定ファイル情報に必要なディレクトリとファイルを作成します mkdir -pv {certs,crl,newcerts,private} {serial,index.txt} をタッチします 3. 証明書の開始番号を入力します エコー 01 >> シリアル 4. ルート証明書を生成する # CA 秘密鍵 (ca.key) を生成する openssl genrsa -des3 -out ca.key 2048 # CA証明書署名要求(ca.csr)を生成する openssl req -new -key ca.key -out ca.csr # 自己署名CA証明書(ca.cert)を生成する openssl x509 -req -days 3650 -in ca.csr -signkey ca.key -out ca.crt 5. サーバー証明書を生成する # サーバーの秘密鍵 (server.key) を生成する openssl genrsa -des3 -out server.key 2048 # サーバー証明書署名要求 (server.csr) を生成する openssl req -new -key server.key -out server.csr # CA 証明書を使用してサーバー CSR に署名し、サーバー証明書 (server.cert) を生成します。 openssl ca -days 3650 -in server.csr -out server.crt -cert ca.crt -keyfile ca.key 6. クライアント証明書を生成する # クライアント秘密鍵 (client.key) を生成する openssl genrsa -des3 -out クライアントキー 2048 # クライアント証明書署名要求 (client.csr) を生成する openssl req -new -key client.key -out client.csr # CA 証明書を使用してクライアント CSR に署名し、クライアント証明書 (client.cert) を生成します。 openssl ca -days 3650 -in client.csr -out client.crt -cert ca.crt -keyfile ca.key 7. 証明書の内容を表示する openssl x509 -in server.crt -noout -text 8. CRTをPEMに変換する openssl x509 -in ca.crt -out ca.pem -outform PEM openssl x509 -in server.crt -out server.pem -outform PEM openssl x509 -in client.crt -out client.pem -outform PEM 9. 秘密鍵のパスワードを削除する openssl rsa -in server.key -out serverkey.pem openssl rsa -in クライアント.キー -out クライアントキー.pem 生成された証明書リスト: Linux 環境での openssl 証明書の生成に関する詳細については、この記事で説明しました。Linux での openssl 証明書の生成に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: 検索ナビゲーションバー付きの CSS サンプルコード
1. はじめにtable_cache は非常に重要な MySQL パフォーマンス パラメータであり、...
1: <a> タグを使用してページにリンクする場合、target 属性の役割は誰もが知っ...
目次Node.js の公式紹介Node.jsのコア開発言語ウェブ上の JavaScript と No...
バックアップがあれば、非常に簡単です。最新のバックアップ データを生成し、mysqlbinlog を...
ネットワーク データを読み込むときは、ユーザー エクスペリエンスを向上させるために、通常は円形の読み...
ネットワークが分離されているため、MySQL は yum を使用してインストールできません。ここでは...
目次1. カスタム指示とは何ですか? 2. 指示をカスタマイズする方法フック機能3. 応用シナリオ入...
HTML デザインパターン学習ノート今週は主にHTMLデザインパターンを学びました。学習内容をまとめ...
vue-element-admin インポートコンポーネントのカプセル化テンプレートとスタイルまず、...
ご存知のとおり、コンピューターには 2 種類の画像があり、1 つはビットマップ、もう 1 つはベクタ...
序文: Linux システムでの rm は元に戻せません。コマンドの設計自体に問題はありません。問題...
以前、Docker コンテナとローカル マシン間のファイル転送に関する記事を書きました。しかし、この...
原則: まず入力要素を非表示にし、次に CSS を使用してラベル要素のスタイルを設定します (他の要...
目次jQuery の $.ajax Webpack時代の始まり約束について深く考えるネストをなくすj...
最新バージョンのMySQL 8.0.11をインストールした後、ユーザーを作成して認証します。認証され...