phpMyAdminは、MySQLまたはMariaDBデータベースを管理するための人気のあるWebベースのツールであり、Ubuntu 14.04では簡単にインストールして設定することができます。本記事では、Ubuntu 14.04にphpMyAdminをインストールし、セキュリティを強化する手順を詳しく説明します。
必要な前提条件
- Ubuntu 14.04のインストール
- sudo権限を持つユーザー
- Apache2、MySQL(またはMariaDB)のインストール
まず、phpMyAdminをインストールする前に、必要なサーバーソフトウェア(Apache2、MySQL、PHP)がインストールされているか確認しましょう。これらがインストールされていない場合は、以下のコマンドでインストールできます。

bashsudo apt-get update sudo apt-get install apache2 mysql-server php5 php5-mysql libapache2-mod-php5
これで、Webサーバーとデータベースサーバーが準備完了です。
1. phpMyAdminのインストール
phpMyAdminはUbuntuの公式リポジトリに含まれているので、次のコマンドでインストールできます。
bashsudo apt-get install phpmyadmin
インストール中に、いくつかの設定を行う必要があります。
- Webサーバーの選択: インストール中に、Apache2が表示されたら、スペースキーで選択して「OK」を押してください。
- データベースの設定: phpMyAdminはMySQLデータベースと連携するため、設定を行います。インストール中に
dbconfig-common
が表示されるので、「はい」を選択します。 - MySQLの設定: インストール中にMySQLの管理者パスワードを入力する必要があります。これにより、phpMyAdminがMySQLデータベースに接続できるようになります。
インストールが完了したら、Apache2を再起動して設定を反映させます。
bashsudo systemctl restart apache2
2. phpMyAdminにアクセス
インストールが成功したら、ブラウザを開き、次のURLにアクセスしてphpMyAdminのログイン画面を表示します。
arduinohttp://your_server_ip/phpmyadmin
ここで、MySQLのユーザー名とパスワードを入力すると、phpMyAdminのダッシュボードにアクセスできます。
3. phpMyAdminのセキュリティ強化
phpMyAdminは強力なツールですが、デフォルトの設定ではセキュリティが不十分です。以下の手順でセキュリティを強化します。
3.1. phpMyAdminのディレクトリへのアクセス制限
まず、Apacheの設定を変更して、phpMyAdminへのアクセスを制限します。/etc/apache2/conf-enabled/phpmyadmin.conf
を編集します。
bashsudo 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を再起動して変更を適用します。
bashsudo systemctl restart apache2
3.2. Apacheの認証を追加
さらに強化するために、phpMyAdminにアクセスする際に追加の認証を設定します。これにより、MySQLのパスワード以外に、Apacheのユーザー名とパスワードも必要になります。
まず、htpasswdファイルを作成します。
bashsudo htpasswd -c /etc/apache2/.htpasswd username
username
には任意のユーザー名を入力し、プロンプトに従ってパスワードを設定します。
次に、phpMyAdminの設定ファイルを編集して、認証を追加します。
bashsudo nano /etc/apache2/conf-enabled/phpmyadmin.conf
次のように設定を追加します。
apache
AuthType Basic AuthName "Restricted Access" AuthUserFile /etc/apache2/.htpasswd Require valid-user
変更を保存して、再度Apache2を再起動します。
bashsudo systemctl restart apache2
3.3. セキュアな接続を使用する(HTTPS)
phpMyAdminにアクセスする際は、暗号化された通信(HTTPS)を使用することが推奨されます。これには、SSL証明書を取得し、ApacheでHTTPSを有効にする必要があります。
まず、SSLを有効にします。
bashsudo a2enmod ssl
次に、SSL証明書を取得し、Apacheの設定に追加します。ここでは、自己署名証明書を生成する例を示します。
bashsudo openssl req -x509 -newkey rsa:4096 -keyout /etc/ssl/private/apache.key -out /etc/ssl/certs/apache.crt -days 365
生成した証明書をApacheの設定ファイルに追加します。
bashsudo nano /etc/apache2/sites-available/default-ssl.conf
以下の行を確認し、適切に設定します。
apacheSSLEngine on SSLCertificateFile /etc/ssl/certs/apache.crt SSLCertificateKeyFile /etc/ssl/private/apache.key
SSLサイトを有効にして、Apacheを再起動します。
bashsudo a2ensite default-ssl.conf sudo systemctl restart apache2
これで、https://your_server_ip/phpmyadmin にアクセスすることで、暗号化された接続を使用できます。
3.4. phpMyAdminのバージョン管理
phpMyAdminの最新バージョンを常に使用するために、定期的に更新を行うことが重要です。次のコマンドでphpMyAdminを更新できます。
bashsudo apt-get update sudo apt-get upgrade phpmyadmin
また、最新のセキュリティパッチを適用するために、Ubuntuのパッケージ管理システムを使用して、システム全体を更新することもおすすめします。
bashsudo apt-get update sudo apt-get upgrade
結論
これで、Ubuntu 14.04におけるphpMyAdminのインストールとセキュリティ強化が完了しました。これらの手順を実行することで、phpMyAdminの安全性を確保し、データベース管理をより効率的に行うことができます。