序章

MariaDB は、オープンソースのデータベース管理システム(DBMS)であり、人気のある LAMP (Linux、Apache、MySQL、PHP / Python / Perl)のMySQL部分の代替として一般的に使用されます。 )スタック。 これはMySQLのドロップイン代替品となることを目的としており、Debianは現在MariaDBパッケージにのみ付属しています。 MySQLサーバー関連のパッケージをインストールしようとすると、代わりに互換性のあるMariaDBの代替バージョンを受け取ります。

このインストールガイドの短いバージョンは、次の3つのステップで構成されています。

  • aptを使用してパッケージインデックスを更新します
  • aptを使用してmariadb-serverパッケージをインストールします。 このパッケージには、MariaDBと対話するための関連ツールも含まれています
  • 付属のmysql_secure_installationセキュリティスクリプトを実行して、サーバーへのアクセスを制限します
  1. sudo apt update
  2. sudo apt install mariadb-server
  3. sudo mysql_secure_installation

このチュートリアルでは、MariaDBバージョン10.3をDebian 10サーバーにインストールする方法を説明し、それが実行されており、安全な初期構成になっていることを確認します。

前提条件

このチュートリアルを完了するには、sudo特権とファイアウォールを持つ非rootユーザーでセットアップされた1台のDebian10サーバーが必要です。 これは、初期サーバーセットアップガイドに従ってセットアップできます。

ステップ1—MariaDBをインストールする

Debian 10では、MariaDBバージョン10.3がデフォルトでAPTパッケージリポジトリに含まれています。 これは、Debian MySQL/MariaDBパッケージングチームによってデフォルトのMySQLバリアントとしてマークされています。

これをインストールするには、サーバーのパッケージインデックスをaptで更新します。

  1. sudo apt update

次に、パッケージをインストールします。

  1. sudo apt install mariadb-server

これらのコマンドはMariaDBをインストールしますが、パスワードの設定やその他の構成変更を求めるプロンプトは表示されません。 デフォルトの構成ではMariaDBのインストールが安全でないため、mariadb-serverパッケージが提供するスクリプトを使用して、サーバーへのアクセスを制限し、未使用のアカウントを削除します。

ステップ2—MariaDBの構成

新しいMariaDBインストールの場合、次のステップは、含まれているセキュリティスクリプトを実行することです。 このスクリプトは、安全性の低いデフォルトオプションの一部を変更します。 これを使用して、リモート root ログインをブロックし、未使用のデータベースユーザーを削除します。

次のセキュリティスクリプトを実行します。

  1. sudo mysql_secure_installation

これにより、MariaDBインストールのセキュリティオプションにいくつかの変更を加えることができる一連のプロンプトが表示されます。 最初のプロンプトでは、現在のデータベースrootのパスワードを入力するように求められます。 まだ設定していないので、ENTERを押して「なし」を表示します。

次のプロンプトでは、データベースrootパスワードを設定するかどうかを尋ねられます。 Nと入力し、ENTERを押します。 Debianでは、MariaDBの root アカウントは自動システムメンテナンスと密接に関連しているため、そのアカウントに設定されている認証方法を変更しないでください。 そうすることで、管理者アカウントへのアクセスを削除することにより、パッケージの更新によってデータベースシステムが破壊される可能性があります。 後で、ソケット認証がユースケースに適していない場合に、パスワードアクセス用に追加の管理者アカウントをオプションで設定する方法について説明します。

そこから、Y、次にENTERを押して、後続のすべての質問のデフォルトを受け入れることができます。 これにより、一部の匿名ユーザーとテストデータベースが削除され、リモート root ログインが無効になり、これらの新しいルールが読み込まれるため、MariaDBは行った変更をすぐに尊重します。

ステップ3—(オプション)ユーザー認証と特権の調整

MariaDB 10.3を実行しているDebianシステムでは、 root MariaDBユーザーは、パスワードではなく、デフォルトでunix_socketプラグインを使用して認証するように設定されています。 これにより、多くの場合、セキュリティと使いやすさが向上しますが、外部プログラム(phpMyAdminなど)の管理者権限を許可する必要がある場合は、事態が複雑になる可能性もあります。

サーバーはログローテーションやサーバーの起動と停止などのタスクにrootアカウントを使用するため、rootアカウントの認証の詳細を変更しないことをお勧めします。 /etc/mysql/debian.cnf構成ファイルの資格情報の変更は最初は機能する可能性がありますが、パッケージの更新によってこれらの変更が上書きされる可能性があります。 パッケージメンテナは、 root アカウントを変更する代わりに、パスワードベースのアクセス用に別の管理者アカウントを作成することをお勧めします。

このプロセスを示すために、[X105X]