開発運用

Ubuntu 14.04 phpMyAdmin セキュリティ

phpMyAdminは、MySQLまたはMariaDBデータベースを管理するための人気のあるWebベースのツールであり、Ubuntu 14.04では簡単にインストールして設定することができます。本記事では、Ubuntu 14.04にphpMyAdminをインストールし、セキュリティを強化する手順を詳しく説明します。

必要な前提条件

  • Ubuntu 14.04のインストール
  • sudo権限を持つユーザー
  • Apache2、MySQL(またはMariaDB)のインストール

まず、phpMyAdminをインストールする前に、必要なサーバーソフトウェア(Apache2、MySQL、PHP)がインストールされているか確認しましょう。これらがインストールされていない場合は、以下のコマンドでインストールできます。

bash
sudo apt-get update sudo apt-get install apache2 mysql-server php5 php5-mysql libapache2-mod-php5

これで、Webサーバーとデータベースサーバーが準備完了です。

1. phpMyAdminのインストール

phpMyAdminはUbuntuの公式リポジトリに含まれているので、次のコマンドでインストールできます。

bash
sudo apt-get install phpmyadmin

インストール中に、いくつかの設定を行う必要があります。

  • Webサーバーの選択: インストール中に、Apache2が表示されたら、スペースキーで選択して「OK」を押してください。
  • データベースの設定: phpMyAdminはMySQLデータベースと連携するため、設定を行います。インストール中にdbconfig-commonが表示されるので、「はい」を選択します。
  • MySQLの設定: インストール中にMySQLの管理者パスワードを入力する必要があります。これにより、phpMyAdminがMySQLデータベースに接続できるようになります。

インストールが完了したら、Apache2を再起動して設定を反映させます。

bash
sudo systemctl restart apache2

2. phpMyAdminにアクセス

インストールが成功したら、ブラウザを開き、次のURLにアクセスしてphpMyAdminのログイン画面を表示します。

arduino
http://your_server_ip/phpmyadmin

ここで、MySQLのユーザー名とパスワードを入力すると、phpMyAdminのダッシュボードにアクセスできます。

3. phpMyAdminのセキュリティ強化

phpMyAdminは強力なツールですが、デフォルトの設定ではセキュリティが不十分です。以下の手順でセキュリティを強化します。

3.1. phpMyAdminのディレクトリへのアクセス制限

まず、Apacheの設定を変更して、phpMyAdminへのアクセスを制限します。/etc/apache2/conf-enabled/phpmyadmin.confを編集します。

bash
sudo nano /etc/apache2/conf-enabled/phpmyadmin.conf

次の設定を追加して、特定のIPアドレスからのみアクセスできるようにします。

apache
Order Deny,Allow Deny from all Allow from your_ip_address

your_ip_addressの部分には、phpMyAdminにアクセスする許可を与えたいIPアドレスを入力してください。

設定を変更したら、Apache2を再起動して変更を適用します。

bash
sudo systemctl restart apache2

3.2. Apacheの認証を追加

さらに強化するために、phpMyAdminにアクセスする際に追加の認証を設定します。これにより、MySQLのパスワード以外に、Apacheのユーザー名とパスワードも必要になります。

まず、htpasswdファイルを作成します。

bash
sudo htpasswd -c /etc/apache2/.htpasswd username

usernameには任意のユーザー名を入力し、プロンプトに従ってパスワードを設定します。

次に、phpMyAdminの設定ファイルを編集して、認証を追加します。

bash
sudo nano /etc/apache2/conf-enabled/phpmyadmin.conf

次のように設定を追加します。

apache
AuthType Basic AuthName "Restricted Access" AuthUserFile /etc/apache2/.htpasswd Require valid-user

変更を保存して、再度Apache2を再起動します。

bash
sudo systemctl restart apache2

3.3. セキュアな接続を使用する(HTTPS)

phpMyAdminにアクセスする際は、暗号化された通信(HTTPS)を使用することが推奨されます。これには、SSL証明書を取得し、ApacheでHTTPSを有効にする必要があります。

まず、SSLを有効にします。

bash
sudo a2enmod ssl

次に、SSL証明書を取得し、Apacheの設定に追加します。ここでは、自己署名証明書を生成する例を示します。

bash
sudo openssl req -x509 -newkey rsa:4096 -keyout /etc/ssl/private/apache.key -out /etc/ssl/certs/apache.crt -days 365

生成した証明書をApacheの設定ファイルに追加します。

bash
sudo nano /etc/apache2/sites-available/default-ssl.conf

以下の行を確認し、適切に設定します。

apache
SSLEngine on SSLCertificateFile /etc/ssl/certs/apache.crt SSLCertificateKeyFile /etc/ssl/private/apache.key

SSLサイトを有効にして、Apacheを再起動します。

bash
sudo a2ensite default-ssl.conf sudo systemctl restart apache2

これで、https://your_server_ip/phpmyadmin にアクセスすることで、暗号化された接続を使用できます。

3.4. phpMyAdminのバージョン管理

phpMyAdminの最新バージョンを常に使用するために、定期的に更新を行うことが重要です。次のコマンドでphpMyAdminを更新できます。

bash
sudo apt-get update sudo apt-get upgrade phpmyadmin

また、最新のセキュリティパッチを適用するために、Ubuntuのパッケージ管理システムを使用して、システム全体を更新することもおすすめします。

bash
sudo apt-get update sudo apt-get upgrade

結論

これで、Ubuntu 14.04におけるphpMyAdminのインストールとセキュリティ強化が完了しました。これらの手順を実行することで、phpMyAdminの安全性を確保し、データベース管理をより効率的に行うことができます。

0 0 投票数
Article Rating
購読する
通知する
guest
0 Comments
最古
最新 最も投票された
インラインフィードバック
すべてのコメントを見る
Back to top button
0
あなたのご意見をぜひお聞かせください。コメントをお願いします。x