セッション ログ用の外部 MySQL データベースの設定(オプション)
セッション ログが外部の MySQL データベースに格納されるように設定できます。ログ ファイルのコピーはローカル サーバ上の内部データベースに自動的に保持されています。
capam32
HID_ConfigExternalLog
セッション ログが外部の MySQL データベースに格納されるように設定できます。ログ ファイルのコピーはローカル サーバ上の内部データベースに自動的に保持されています。
以下の手順はセッション ログのみに適用され、syslog メッセージには適用されません。
MySQL データベースのユーザ権限の設定
PAM がセッション ログを格納する MySQL データベースのユーザには、以下の権限が必要です。
- SELECT
- INSERT
- UPDATE
- DELETE
- CREATE
- REFERENCES
以下の手順例では、データベースを作成してから適切な権限を持つユーザを作成する方法について説明します。実際の手順は環境によって異なる場合があります。
MySQL データベースおよび適切なアクセス権を持つユーザを作成するには、以下の手順に従います。
- rootユーザまたはデータベース管理者として、以下のコマンドを実行して PAM がセッション ログを格納するデータベースを作成します。create database <db_name> DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_unicode_ci;ここで、<db_name> は作成するデータベースの名前です。
- 以下のコマンドを実行して、PAM がこのデータベースへのアクセスに使用する DB ユーザを作成します。create user '<db_username>'@'%' IDENTIFIED WITH mysql_native_password BY '<db_password>';説明:
- <db_username> は、作成するデータベース ユーザの名前です。
- <db_password>は、作成するデータベース ユーザのパスワードです。
- 以下の 2 つのコマンドを実行して、作成したデータベースに対する SELECT、INSERT、UPDATE、DELETE、CREATE、および REFERENCES 権限をデータベース ユーザに付与します。GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, REFERENCES ON <db_name>.* TO <db_username>@'%'; FLUSH PRIVILEGES;説明:
- <db_name> はデータベースの名前
- <db_username> はデータベース ユーザの名前
- MySQL バージョン 8 を使用している場合は、以下の手順に従います。
- MySQL 設定ファイルを編集します。[mysqld] の下で、default_authentication_plugin を mysql_native_password に変更します。
- MySQL を再起動します
MySQL データベースを認識するように PAM を設定する
PAM サーバを認識するように PAM を設定するには、以下の手順に従います。
- [構成]-[ログ]-[外部ログ サーバ]に移動します。
- [外部サーバへのログ記録の有効化]チェック ボックスを選択します。
- デフォルトで表示されるログとして[ローカル]または[外部]を選択します。
- 通常ユーザがビューを[ローカル]から[外部]に変更できるようにするには、[ビューの変更許可]チェック ボックスをオンにします。
- MySQL サーバの設定で、以下のフィールドに入力します。
- サーバ:MySQL サーバの IPv4 アドレスを入力します。
- ポート:デフォルトのポートは 3306 です。それ以外のポートを使用する場合は、ポート番号を入力します。
- DB ユーザ名:データベースに対する SELECT、INSERT、UPDATE、DELETE、CREATE、および REFERENCES 権限を持つユーザを指定します。
- DB パスワード:データベース ユーザのパスワードを入力します。
- データベース名:データベースの名前を入力します。
- [更新]をクリックして設定を保存し、外部ログ記録をアクティブにします。
設定を変更し、それを更新しない場合は、
[リセット]
を選択して以前の設定に戻します。このアクションでは、設定はデフォルトに戻りません。