安裝 phpMyAdmin 5.1 版本
1 確認官方最新的版本
請先到 phpMyAdmin 官方下載網站確認新的版本,本文所使用最新的版本為 5.2.0 的 all-languages 版本。
2 設定環境變數並下載檔案
確認好 phpMyAdmin 下載版本後,利用設定環境變數的方式,讓後面的指令操作比較簡單,利用一般用戶設定即可,指令如下:
$ export VER="5.2.0"
下載指令如下。
curl -o phpMyAdmin-${VER}-all-languages.tar.gz https://files.phpmyadmin.net/phpMyAdmin/${VER}/phpMyAdmin-${VER}-all-languages.tar.gz
3 解壓縮 phpMyAdmin
tar zxvf phpMyAdmin-${VER}-all-languages.tar.gz
4 將檔案置於正式目錄並移除壓縮檔
$ rm phpMyAdmin-*-languages.tar.gz
$ sudo mv phpMyAdmin-* /usr/share/phpmyadmin
5 建立及設定 phpMyAdmin 相關目錄
$ sudo mkdir -p /var/lib/phpmyadmin/tmp
$ sudo chown -R apache:apache /var/lib/phpmyadmin
$ sudo mkdir /etc/phpmyadmin/
6 建立 phpMyAdmin 相關設定文件
$ sudo cp /usr/share/phpmyadmin/config.sample.inc.php /usr/share/phpmyadmin/config.inc.php
7 調整設定文件內容
先用 openssl 產生一組隨機的 32 個字元長密碼,指令如下:
$ openssl rand -hex 16
把字串複製起來,並利用 vim 指令編輯設定文件的內容,指令如下:
$ sudo vim /usr/share/phpmyadmin/config.inc.php
找到以下 2 項設定,第 1 個請把剛剛的字串給貼上去,大概在第 16 行,第 2 個請依照內容直接加在第 17 行位置,內容如下所示:
$cfg['blowfish_secret'] = '剛剛產生的 32 個字元的隨機字串';
$cfg['TempDir'] = '/var/lib/phpmyadmin/tmp';
存檔後離開。
8 設定 apache 的參數
利用 vim 指令新增 apache 針對 phpMyAdmin 的設定檔,指令如下:
sudo vim /etc/httpd/conf.d/phpmyadmin.conf
接著新增以下的內容:
# Apache configuration for phpMyAdmin
Alias /phpMyAdmin /usr/share/phpmyadmin/
Alias /phpmyadmin /usr/share/phpmyadmin/
<Directory /usr/share/phpmyadmin/>
AddDefaultCharset UTF-8
<IfModule mod_authz_core.c>
# Apache 2.4
Require all granted
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
</IfModule>
</Directory>
存檔後離開,測試一下設定是否正確,指令如下:
$ sudo apachectl configtest
Syntax OK
重新啟動 apache 伺服器服務。
$ sudo systemctl restart httpd
9 設定 SELinux
如果有啟用 SELinux 安全模組的話(本文預設是 enforcing 模式),請設定允許 apache 在 phpmyadmin 的目錄中提供連結資訊,不然就會出現拒絕存取的畫面,設定指令如下:
$ sudo semanage fcontext -a -t httpd_sys_content_t "/usr/share/phpmyadmin(/.*)?"
$ sudo firewall-cmd --add-service=http --permanent
10 登入 phpMyAdmin Web 界面
登入的位置為:http://yourip/phpmyadmin,畫面如下:
請輸入剛剛設定的 MariaDB Root 密碼即可登入管理畫面,如下圖所示。
11 建議設定
因為 phpMyAdmin 管理工具不需要開放給一般人去使用,所以建議只需開放給特定 IP 來源編輯即可,利用修改 apache 的設定檔即可達到此目的,說明如下:
sudo vim /etc/httpd/conf.d/phpmyadmin.conf
修改裡面這行,把要開放的網路 IP 或是網路段寫進來即可。
<IfModule mod_authz_core.c>
# Apache 2.4
Require ip 10.0.0.5 192.168.0.0/24
</IfModule>
存檔後重新啟動 apache 伺服器。
$ sudo systemctl restart httpd
若是從非允許的 IP 位置連入,就會看到以下的畫面。