2013-05-03

Ubuntu 暫停或限制使用 phpmyadmin

PHPMyAdmin 是個很方便和好用的工具,但是,把它安裝 ( PHPMyAdmin 快速安裝方式請參考這裡) 在正式對外服務的網站的話,卻是件充滿安全風險的事,所以,阿舍只在網站建置初期,為了方便管理和調整資料庫的時候,才把它安裝起來,之後,就會把 PHPMyAdmin 給移除,以減少網站被破壞的機會,不過,這樣的作法雖然是有安全到,不過,就是有點笨笨的哩 ! 阿舍最近常會需要來調整網站的資料庫,老是這樣安裝又移除也不是辦法,因此,就去找看看有沒有什麼比較方便的方法囉 !

限制 IP 後,其它 IP 就會出現這個訊息

阿舍找到的方法有二種,一種是把 PHPMyAdmin 的 Apache 設定檔移除連結,另一種則是透過限制能夠連線使用 PHPMyAdmin 的 IP 的方式,阿舍自己試了之後,比較建議使用的是第二種方式,也就是限制連線 IP 的方式,因為這種方式只對 Apache 執行 Reload 就可以了,不用像第一種方式一樣,是需要重新啟動 Apache 的哩 ! 不過,阿舍還是把二種方式都介紹一下,有需要的人,就請自選一種來用囉 !! ^^=

在開始說明之前,要先提一下,就是下面這二種設定方式都是以透過 apt-get 來安裝的 PHPMyAdmin 環境為主,如果你的 PHPMyAdmin 是自行手動安裝的話,就要做些調整哩 !

.移除設定檔
用 apt-get 安裝好 PHPMyAdmin 後,在 /etc/apache2/conf.d 資料夾裡,會新出現一個叫做「phpmyadmin.conf」的連結來連結到「/etc/phpmyadmin/apache.conf」檔案,這個檔案是 PHPMyAdmin 給 Apache 用的設定檔,所以,只要把 /etc/apache2/conf.d/phpmyadmin.conf 這個檔案移除,然後,再重新啟動 Apache 後,PHPMyAdmin 就會無法使用了哩 !

sudo rm /etc/apache2/conf.d/phpmyadmin.conf

sudo service apache2 restart

之後,如果想要再次啟用 PHPMyAdmin 的話,那麼,就只要用下面第一行指令來把連結給掛回去並重新啟動 Apache 就可以恢復 PHPMyAdmin 了 ...

sudo ln -s -T /etc/phpmyadmin/apache.conf  /etc/apache2/conf.d/phpmyadmin.conf

sudo service apache2 restart

.限制連線 IP
上一種方式是要移除 /etc/phpmyadmin/apache.conf 的連結檔案,而這種則是要來調整 /etc/phpmyadmin/apache.conf 這個檔案,請把它用編輯器打開後,找到「</IfModule>」這一行,然後,在它的下面加入如下面的藍色字的內容,並且,將紅色字的 IP 位置改成要允許連線的 IP 位址後,執行 「 sudo service apache2 reload」指令來重新讀取設定後,就會變成只有該 IP 可以連線,用其它 IP 來開啟 PHPMyAdmin 就會出現沒有權限的訊息了哩 !(如上圖)

Alias /phpmyadmin /usr/share/phpmyadmin

<Directory /usr/share/phpmyadmin>
    Options FollowSymLinks
    DirectoryIndex index.php

    <IfModule mod_php5.c>
           ......
    </IfModule>
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1
</Directory>

另外,還有一種,就是把上面的第一行用 # 符號註解,然後,存檔並重新啟動 Apache,這樣的效果和第一種方式類同,都是讓 PHPMyAdmin 網址無效的方式哩 ! 不過,不管是採用那一種方式,阿舍建議,還是養成每次用完就把 PHPMyAdmin 調整成不能用的好習慣,是比較重要的事哩 ! 還有,少用 MySQL 的 Root 帳號來登入也是重要的好習慣哩 !  ...

延伸閱讀
Ubuntu 如何快速安裝 PHPMyAdmin ?
Ubuntu 如何用 Source Code (原始程式碼)安裝 PHPMyAdmin ?

參考資料

推薦閱讀


有疑問? 問題還是沒解決嗎? 歡迎下方留言提問和討論 😁

1 則留言 :

路人甲 提到...

既然都要改了

那就再把網址改掉。

Alias /phpmyadmin /usr/share/phpmyadmin

改成

Alias /desire_phpmyadmin_name /usr/share/phpmyadmin

這樣就更不容易去使用到你的phpmyadmin

張貼留言

歡迎留言提問和討論 .... 😁