本番用にセキュリティの設定を行う

インストールした MySQL サーバー、あるいは MariaDB サーバーを本番運用するために、mysql_secure_installation を使ってセキュリティを確保する初期設定を行う。

  1. 設定用のスクリプトを確認する。
    $ which mysql_secure_installation
  2. 設定用のスクリプトを実行する。
    $ sudo mysql_secure_installation
  3. root ユーザーのパスワードを入力する。(パスワードが未設定の場合はエンターキーのみを入力する。)
    Enter current password for root (enter for none):
  4. root ユーザーのパスワードを設定するか? → Y
    Set root password? [Y/n]
  5. root ユーザーの新しいパスワードを入力する。(同じパスワードを2回入力する。)
    New password:
    Re-enter new password:
  6. root ユーザーのパスワードを変更するか? → 既に設定済みの場合は N でOK
    Change the root password? [Y/n]
  7. 匿名ユーザーを削除するか? → Y
    Remove anonymous users? [Y/n]
  8. root ユーザーのリモートログインをブロックするか? → Y
    Disallow root login remotely? [Y/n]
  9. テストデータベースを削除するか? → Y
    Remove test database and access to it? [Y/n]
  10. ユーザー権限テーブルを再読み込みするか? → Y
    Reload privilege tables now? [Y/n]

Yes / No で答える設定は基本的に Yes で設定すればよい。(root パスワードが設定済みの場合は、パスワードの変更は任意。)

参考:

MySQL 5.7 をインストールしたら最初に行うセットアップ | WEB ARCH LABO

MariaDB (MySQL) 初期設定時のセキュリティと utf8mb4 化の手順 | 己で解決!泣かぬなら己で鳴こうホトトギス

CentOS 7 MariaDB インストール、及び初期設定 | eTuts+ Server Tutorial

mysql_secure_installation の初期パスワード確認 – Qiita

MySQL-5.7 で mysql_secure_installation の自動化が楽になっていた – Qiita

MySQL 5.7 にて root のパスワード変更などの初期設定をする (mysql_secure_installation 使用) | Syntax Error.

mysql_secure_installation を試してみる | yk5656 diary

mysql_secure_installation | FreeBSD あれこれ (freebsd.sing.ne.jp)

mysql_secure_installation | MariaDB Knowledge Base [公式]

mysql_secure_installation – Improve MySQL Installation Security | MySQL 5.7 Reference Manual [Official]

server/mysql_secure_installation.sh at 10.3 · MariaDB/server – GitHub

root パスワードをリセットする

  1. mysql コマンドのバージョンを確認する。
    $ mysql --version
  2. データベースサーバーを停止する。
    $ sudo systemctl stop mysql

    もしくは、

    $ sudo systemctl stop mariadb
  3. --skip-grant-tables 及び --skip-networking を指定してサーバーを起動する。
    $ mysqld_safe --skip-grant-tables --skip-networking &
  4. root ユーザーでサーバーに接続する。
    $ mysql -u root
  5. 権限テーブルを再読み込みする。
    > flush privileges;
  6. root ユーザーの新しいパスワードを設定する。
    > set password for 'root'@'localhost' = password('new_passowrd');
  7. サーバーを再起動する。
    $ sudo systemctl restart mysql

    あるいは、

    $ sudo systemctl restart mariadb
  8. 新しいパスワードを使って接続する。
    $ mysql -u root -p

参考:

MySQL で root パスワードを忘れた時のリセット方法 – Qiita

MySQL 5.7 で root ユーザのパスワードを再設定 – Qiita

Mysql の root ユーザの password を初期化 (変更) する – Qiita

MySQL のパスワードをリセットする | Calmery.me

MySQL のパスワードを再設定 | ハックノート

MySQL で root パスワードを忘れた場合の対処方法 | 東京上野の Web 制作会社 LIG

新しいパスワードを設定する (SET PASSWORD 文、ALTER USER文) | MySQL の使い方 (www.dbonline.jp)

How To Reset Your MySQL or MariaDB Root Password | DigitalOcean

Reset a MySQL root password | Rackspace Support

Reset MySQL Password with skip-grant-tables option | SysAdmin’s Diary

Setting, Changing And Resetting MySQL Root Passwords | Howtoforge Linux Tutorials.

MySQL Change a User Password | nixCraft

タグ:

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です