2010-09-10 149 views
7

可能重複:
How to secure phpMyAdmin如何限制對phpmyadmin的訪問?

我用phpmyadmin預覽我的網站的數據庫。但是,每個人都可以通過簡單地輸入example.com/phpmyadmin

訪問我的phpmyadmin的登錄頁面我不是網絡安全專家,但我認爲這不是很安全。

如何限制訪問登錄頁面(可能會創建一些別名,如example.com/a4ebb72d)。 我聽說只允許訪問指定的IP,但它不會幫助,因爲我有動態分配的IP。

我會很感激你的提示。

+0

可能的重複:http:// stackoverflow。com/questions/2631269/how-to-secure-phpmyadmin – 2010-09-10 20:18:40

+0

將名稱從/ phpmyadmin更改爲其他名稱,bot和vuln掃描程序查找該目錄。你還應該增加額外的安全層。 – rook 2010-09-11 00:05:03

回答

13

我會想辦法讓該服務器監聽127.0.0.1,然後使用具有SSH端口轉發...

確保,服務phpMyAdmin的只會127.0.0.1,然後服務器運行

$ ssh -L4545:localhost:80 yourserver.com 

,然後將瀏覽器指向http://127.0.0.1:4545/phpmyadmin,只要SSH會話處於活動狀態,您應該可以訪問phpmyadmin。你甚至可以創建一個shell腳本來自動執行此操作。

這也適用於PuTTY。

+0

謝謝,看起來不錯,我會嘗試。但是,這不會導致隧道緩慢的頁面加載? – nan 2010-09-11 18:49:39

+0

我使用這種隧道效果很好。事實上,我將它用於所有類型的代理工作。 – polemon 2010-09-11 19:24:18

+0

@polemon你能告訴我,我怎樣才能使'phpMyAdmin'服務於127.0.0.1,我是新手:-)。 – NullPointer 2013-09-03 15:19:49

1

我想你可以將phpMyAdmin安裝在防火牆後的目錄中,以便只有內部訪問的用戶才能訪問它。

16

暴露phpMyAdmin的任何部分都是潛在的風險。你可以使用Apache的允許/拒絕指令:

Order Deny,Allow 
Deny from All 
Allow from 12.34.56.78 

替換12.34.56.78您的IP地址,並在您的phpMyAdmin的文件夾,把它放進一個.htaccess文件。

+3

如果OP沒有具體說IP限制對他沒有用處,這將是一個很好的答案。 – 2010-09-10 20:19:15

2

正如你所說,你可以改變目錄的名稱是不容易猜測的。

您還可以在密碼保護using .htaccess下放置目錄(或父目錄,如果您不能直接在phpmyadmin目錄中執行此操作)。不管這種增強的安全性如何,它可能不會更安全。畢竟,phpMyAdmin需要登錄名和密碼才能達到.htaccess,所以如果你使用弱密碼或密碼實踐,你仍然是脆弱的,所以顯然要確保這兩個用戶/密碼組合都是獨特和強大的。

您可以做的最好的事情是確保您的所有phpMyAdmin用戶/密碼都是安全的,並且您只將它們委託給您信任的人。請記住,phpMyAdmin允許刪除表和整個數據庫,因此請定期備份並不斷確保服務器上數據的完整性,因爲實際上隱藏目錄名或將其置於另一個登錄屏障之後是唯一值得的密碼練習儘可能安全地開始。

+0

感謝您的好回答。 – nan 2010-09-11 18:46:27