Ubuntu 18.04 VPSまたは専用サーバーでphpMyAdminを保護する方法

PhpMyAdminは、最も人気のあるWebベースのデータベース管理ソフトウェアです。使いやすく直感的なインターフェースにより、MySQLおよびMariaDBデータベースの管理に広く使用されています.


phpMyAdminインターフェースはWebブラウザーを介してアクセスできるため、悪意のあるユーザーがこのソフトウェアへの攻撃を狙うことがよくあります。攻撃の範囲は、ブルートフォースパスワードからDDoS(分散型サービス拒否)攻撃までさまざまです。.

このガイドでは、セキュリティに焦点を当てます phpMyAdmin Ubuntu 18.04 VPSまたは専用サーバーで、データベースが侵害されないようにします.

前提条件

  • VPSプラン
  • MySQLまたはMariaDB
  • sudo権限を持つ非rootユーザー
  • PHPおよびApache Webサーバー

ステップ1:phpMyAdminをインストールする

始める前に、Ubuntu 18.04サーバーに以下のコマンドを使用してphpMyAdminをインストールできます。

$ sudo apt-get update
$ sudo apt-get install phpmyadmin

押す Y そしてヒット 入る インストールの確認を求められたとき

インストールの終わりに向かって、Webサーバーを選択するように求められます。 apache2を選択してから、 タブ そして 入る.

PhpMyAdminを使用するには、データベースが必要です。次の画面で、これを確認するように求められます。

データベースを構成 phpMyAdmindbconfig-common?

選択する ‘はい’ そしてヒット 入る 続行します.

次に、phpMyAdminがデータベースサーバーに登録するためのパスワードを入力します。次に、プレス タブ そしてヒット 入る 続ける

次の画面でパスワードを確認してから、 タブ そしてヒット 入る 続ける

PhpMyAdminは必要なすべてのファイルのインストールを完了し、管理目的でデータベースを作成します.

ステップ2:phpMyAdmin構成ファイルを有効にする

次に、ディレクトリの下にphpMyAdminのシンボリックリンクを作成する必要があります。 「/ etc / apache2 / conf-available /」.

これを行うには、以下のコマンドを実行します。

$ sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf

$ sudo a2enconf phpmyadmin.conf

次に、Apacheを再起動して変更を有効にします。

$ sudo service apache2 reload

ステップ3:インストールをテストする

この時点まで、以下のURLからphpMyAdminにアクセスできます。交換することを忘れないでください 「example.com」 サーバーのIPアドレスまたはドメイン名:

http:// ip_adress / phpmyadmin

セットアップが正常に完了すると、以下のphpMyAdminログインページが表示されます。 MySQLのユーザー名とパスワードを入力してログインできます。

ステップ4:phpMyAdminの保護

セキュリティの追加レイヤーを提供しなければ、インターネット接続とブラウザーを使用している人なら誰でもphpMyAdminログインページにアクセスできます。ハッカーはまた、ボットをこのページにリダイレクトして、パスワードをブルートフォース攻撃する可能性があります。非常に弱いパスワードを使用した場合、データベースが侵害される可能性があります.

このような嫌なシナリオを回避するには、phpMyAdminログインページを保護する必要があります。 Apache Webサーバーには認証および承認機能が組み込まれており、ここではそれを使用します.
まず、nanoエディターを使用して、apacheにリンクした構成ファイルを編集する必要があります。

$ sudo nano /etc/apache2/conf-available/phpmyadmin.conf

行を追加します 「AllowOverrideAll」 間に ‘’ Apacheが確実に受け入れるようにするタグ 「.htaccessファイル」


オプションSymLinksIfOwnerMatch
DirectoryIndex index.php
AllowOverride All

変更を加えたら、 CTRL + X, Y そしてヒット 入る ファイルを保存する.

次に、もう一度Apacheを再起動する必要があります。

$ sudo systemctl restart apache2

ステップ5:「.htaccess」ファイルを作成する

これで、「。htaccess」ファイルを / usr / share / phpmyadmin / ディレクトリ

$ sudo nano /usr/share/phpmyadmin/.htaccess

次に、以下の情報をファイルにコピーして貼り付けます

AuthType Basic
AuthName "制限されたファイル"
AuthUserFile /etc/phpmyadmin/.htpasswd
有効なユーザーが必要

上記のように、基本的な認証を使用しています。 「制限付きファイル」というテキストは、phpMyAdminのURLにアクセスするユーザーに表示されます。また、ハッシュされたパスワードを 「/etc/phpmyadmin/.htpasswd」 ファイル。エントリ「有効なユーザーが必要」は、認証されたユーザーのみがこのURLのコンテンツへのアクセスを許可されることを示しています.

押す CTRL + X, Y そしてヒット 入る ファイルを保存する.

上記の「.htaccess」ファイルで、次の場所に配置するパスワードファイルを選択しました /etc/phpmyadmin/.htpasswd, これで、以下のコマンドを使用して、ユーザーによるファイルの作成を開始できます。交換することを忘れないでください 「ジェームズ」 ご希望のユーザー名で

$ sudo htpasswd -c /etc/phpmyadmin/.htpasswd james

ユーザーのパスワードを入力して確認するように求められます

追加のユーザーを作成する場合は、コマンドをもう一度実行しますが、 -c 以下に示すフラグ:

$ sudo htpasswd /etc/phpmyadmin/.htpasswd john

ステップ6:構成をテストする

phpMyAdmin URLにアクセスすると、データベースのログインページにアクセスする前に、ユーザー名とパスワードの入力を求められます。

http:// ip_address / phpmyadmin

正しい資格情報を入力すると、通常の phpMyAdmin ログインページ。これにより、phpMyAdminソフトウェアに2番目のセキュリティ層が追加されます.

結論

このガイドでは、Ubuntu 18.04サーバーにphpMyAdminをインストールして保護する基本的な手順を共有しました。また、中間者攻撃を回避するために、サーバーにSSL証明書をインストールする必要があります。.

SSLを使用しない場合、悪意のあるインターネットサービスプロバイダーまたはWifiプロバイダーが、暗号化されていないphpMyAdminの詳細をネットワーク経由で傍受する可能性があります。また、ルートアクセスを無効にすることを検討してください。 MySQL / MariaDB からのサーバー phpMyAdmin ソフトウェア.

以下の上位3つのVPSサービスを確認してください。

A2ホスティング

開始価格:
$ 5.00


信頼性
9.3


価格
9.0


使いやすい
9.3


サポート
9.3


特徴
9.3

レビューを読む

A2 Hostingにアクセス

ScalaHosting

開始価格:
$ 12.00


信頼性
9.4


価格
9.5


使いやすい
9.5


サポート
9.5


特徴
9.4

レビューを読む

ScalaHostingにアクセス

Hostinger

開始価格:
3.95ドル


信頼性
9.3


価格
9.3


使いやすい
9.4


サポート
9.4


特徴
9.2

レビューを読む

Hostingerにアクセス

関連するハウツー記事

  • MYSQL 8.0をインストールしてUbuntu 18.04 Linux VPSにデータベースを作成する方法
    中間
  • PhpMyAdminをUbuntu 18.04 VPSまたは専用サーバーにインストールする方法
    中間
  • CentOS 7 VPSまたは専用サーバーにphpMyAdminをインストールする方法
    中間
  • Let’s Encrypt証明書をUbuntu 18.04専用サーバーまたはVPSにインストールする方法
    中間
  • Ubuntu 18.04専用サーバーまたはVPSに独自のクラウドをインストールする方法
    中間
Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me