MySQL構成SSL証明書ログインの実装

MySQL構成SSL証明書ログインの実装

序文

国家レベル 3 セキュリティ要件によると、MySQL の SSL にはセキュリティ証明書の暗号化が必要です。これを調べて、デモンストレーション用にいくつかのアカウントを選択する必要があります。 mysqlのバージョンは8.0.20です

1. MySQLはSSL構成を有効にする

1.1 SSLが有効になっているかどうかを確認する

mysql> '%ssl%' のような変数を表示します。
+--------------------+-----------------+
| 変数名 | 値 |
+--------------------+-----------------+
| openssl がある | はい |  
| have_ssl | YES | # SSLが有効になっています
|mysqlx_ssl_ca | |
|mysqlx_ssl_capath | |
|mysqlx_ssl_cert | |
|mysqlx_ssl_cipher | |
|mysqlx_ssl_crl | |
|mysqlx_ssl_crl パス | |
|mysqlx_ssl_key | |
| ssl_ca | ca.pem |
| ssl_capath | |
| ssl_cert | server-cert.pem |
| ssl_cipher | |
| ssl_crl | |
| ssl_crlパス | |
| ssl_fips_mode | オフ |
| ssl_key | サーバーキー.pem |
+--------------------+-----------------+
セット内の行数は 17 行 (0.56 秒)

1.2 ユーザーがSSL接続を使用するかどうかを設定する

mysql> user = 'dev_fqr' の場合、user から ssl_type を選択します。
+----------+
|SSLタイプ|
+----------+
| |
+----------+
セット内の1行(0.05秒)

デフォルトでは、ユーザーは SSL を使用してログインしません。
この管理ユーザーに SSL を使用してログインするように強制できます。

ユーザー 'xxx'@'%' を変更し、SSL を必要とします。
SSL検証をキャンセルするには:
ユーザー 'xxx'@'%' を変更するには何も必要ありません。

変更後、アカウントにログインできなくなり、以下の状態になります

mysql> user = 'dev_fqr' の場合、user から ssl_type を選択します。
+----------+
|SSLタイプ|
+----------+
| いずれか |
+----------+
セット内の1行(0.01秒)

ログインをテストします。このマシンは直接ログインできません。

[root@localhost データ]# mysql -u dev_fqr -p
パスワードを入力してください: 
エラー 2026 (HY000): SSL 接続エラー: SSL が必要ですが、サーバーがサポートしていません

リモート クライアントは直接ログインできません。

1.3 SSLを使用したログイン

SSL 経由でログインするには、次の証明書を使用する必要があります。ログインが成功するには、クライアント証明書をサーバーで検証する必要があります。

1) ローカルログイン

データ ディレクトリ内の 3 つのファイルは、証明書ログインに使用されます。

[root@localhost データ]# mysql -udev_fqr -pDev@fqr2021 --ssl-ca=ca.pem --ssl-cert=client-cert.pem --ssl-key=client-key.pem
mysql: [警告] コマンドライン インターフェイスでパスワードを使用すると安全でない可能性があります。
MySQL モニターへようこそ。コマンドは ; または \g で終わります。
MySQL接続IDは55です
サーバーバージョン: 8.0.22 MySQL コミュニティサーバー - GPL
​
Copyright (c) 2000, 2020, Oracle およびその関連会社。無断複写・転載を禁じます。
​
OracleはOracle Corporationおよびその関連会社の登録商標です。
その他の名称は各社の商標である場合があります。
所有者。
​
ヘルプを表示するには、「help;」または「\h」と入力します。現在の入力ステートメントをクリアするには、「\c」と入力します。
​
UNIXソケット経由でSSL接続を強制しています。
UNIXソケット経由で接続しないのでSSLをオフにする
より安全になります。
マイSQL> 

2) リモートクライアントログインをナビゲートする

これら3つの証明書をダウンロードしてください

リモート アクセス用の証明書ディレクトリを構成します。

2. 結論

評価中に JDBC の設定は表示されないため、JDBC は変更されません。そうしないと、多くの変更が必要になります。特定のデモンストレーションでは、事前に 2 つのアカウントを準備し、クライアントを使用して接続することができます。
現在、2 つの MySQL サーバーの SSL ユーザーは次のとおりです。

これで、MySQL 構成 SSL 証明書ログインの実装に関するこの記事は終了です。MySQL SSL 証明書ログインに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • mysql show processlist コマンドを使用して mysql ロックを確認する方法
  • MySQL SSL接続構成の詳細
  • MySQL SHOW PROCESSLISTはトラブルシューティングの全プロセスを支援します
  • さまざまなMySQL SSL構成
  • SSLプロトコルに基づくMySQLマスタースレーブレプリケーションの詳細な操作チュートリアル
  • さまざまなMySQL SSL構成
  • MySQL 構成 SSL マスタースレーブ レプリケーション

<<:  CSS 要素の非表示の原則と display:none および visibility:hidden

>>:  CSS background-blend-modeの仕組みを深く理解する

推薦する

uniappの無痛トークンリフレッシュ方法の詳細な説明

フロントエンドがインターフェースを要求すると、バックエンドでインターフェースが定義されます。ステータ...

Angularが予期しない例外エラーを処理する方法の詳細な説明

前面に書かれたコードがどれだけ適切に記述されていても、すべての可能性のある例外を完全に処理することは...

Ubuntu 20.04 は Wi-Fi に接続します (2 つの方法)

最近Ubuntu 20.04をインストールしましたが、Wi-Fiに接続できず、Wi-Fiアイコンも表...

Nacos で MySQL8 を設定する方法

1. MySQLデータベースnacos_configを作成する2. データベース nacos_con...

Linux mpstat コマンドの使用方法の詳細な説明

1. mpstatコマンド1.1 コマンド形式 mpstat [ -A ] [ -u ] [ -V ...

ウェブページ制作をマスターするために必要な6つのスキルのまとめ

ウェブデザイナーはジェネラリストであると言わざるを得ません。グラフィックデザイナーは、さまざまな特殊...

Reactの状態の理解についての簡単な分析

複雑なコンポーネント (クラス コンポーネント) と単純なコンポーネント (関数コンポーネント) を...

CSSブレンドモードとSVGを使用して、製品画像の色を動的に変更します。

数日前、Codepen で @Kyle Wetton が書いた、CSS ブレンディング モードと S...

Vueのコンポーネントの詳細な説明

目次1. コンポーネントの登録2. コンポーネントの使用3. 父から息子へ4. 息子から父へ5. ス...

VMware Workstation 15 Pro インストール ガイド (初心者向け)

01. VMware Workstation Pro 15 のダウンロードダウンロード: VMwa...

同じドメイン名を持つ Nginx プロキシのフロントエンドとバックエンドの分離プロジェクトの完全な手順

フロントエンド プロジェクトとバックエンド プロジェクトは分離されており、フロントエンドとバックエン...

yum を使用して rpm と関連する依存関係をダウンロードして、docker をオフラインでインストールします。

yum を使用してすべての依存関係を一緒にインストールできますが、–downloadonly –d...

HTML にオーディオファイルを挿入してブラウザで再生する場合の互換性の問題

HTML にオーディオ ファイルを挿入した後 (mp3 ファイルを再生した後) に発生したいくつかの...

vue3 のさまざまなファイルタイプのプレビュー機能の例

目次序文1. オフィス文書の種類のプレビュー2. PDF形式のプレビュー3. 画像の種類4. ビデオ...

Vueは双方向データバインディングを実装します

この記事の例では、双方向データバインディングを実装するためのVueの具体的なコードを参考までに共有し...