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の仕組みを深く理解する

推薦する

2つのウェブサイトページ翻訳プラグインの共有

TranslateThis URL: http://translateth.is Google 翻訳...

React Router で履歴リダイレクトを使用する方法

react-routerでは、コンポーネント内のジャンプは<Link>で使用できます。し...

MySQLのインストールと設定に関する詳細なチュートリアル

目次インストール不要のMySQLバージョン1. インストール パッケージをダウンロードします。 2....

シンプルなメッセージボードケースを実現するJavaScript

参考までに、Javascriptを使用してメッセージボードの例(メッセージ削除あり)を実装します。具...

MySQL テーブルデータのインポートとエクスポートの例

この記事では、MySQL テーブル データのインポートおよびエクスポート操作について説明します。ご参...

非ルートユーザーを使用してDockerコンテナでスクリプト操作を実行する

アプリケーションをコンテナ化した後、Docker コンテナを起動すると、デフォルトで root ユー...

Linux システム (Centos6.5 以上) のインストール JDK チュートリアル分析

記事の構成1. 準備2. Java JDK8.0をインストールする3. 環境変数を設定する3. イン...

Vueフロントエンドパッケージングの詳細なプロセス

目次1. パッケージ化コマンドを追加する2. パッケージ化されたコードを実行する3. パッケージ化し...

Linux でファイルの種類を理解して識別する方法

序文ご存知のとおり、Linux ではハードディスクやグラフィック カードなどすべてがファイルです。 ...

MySQL でシンプルな検索エンジンを実装するためのサンプルコード

目次序文導入ngram全文パーサー全文インデックスを作成する検索方法1. 自然言語検索(自然言語モー...

border-radius 値の設定に関する質問

問題記録今日はプログレスバーに似た小さなコンポーネントを完成させるつもりでした。プロトタイプは次のよ...

Linux ソフトウェアのインストール場所を確認する簡単な方法

1. ソフトウェアのインストールパスを確認します。 Linuxソフトウェアをインストールできる場所は...

CSSスクロールバーのスタイルをカスタマイズする方法の詳細な説明

この記事では、CSS スクロールバー セレクターを紹介し、Webkit ブラウザーと IE ブラウザ...

Node はあいまい検索用の検索ボックスを実装します

この記事の例では、検索ボックスでファジークエリを実装するためのNodeの具体的なコードを参考までに共...

CentOS 7 で RPM を使用して mysql5.7.13 をインストールする

0. 環境この記事のオペレーティング システム: CentOS 7.2.1511 x86_64 My...