Linux下PhpMyAdmin程序目錄的安全管理

發(fā)布時間:2007/10/12 23:07:00

在Linux 下開發(fā)Web程序,現(xiàn)在很流行的開發(fā)方法為:用PHP開發(fā)Web程序,用Apache做Web Server,Mysql充當(dāng)后臺管理數(shù)據(jù)庫。這種組合使得開發(fā)Web程序簡單、安全、效率高。由于程序是在Linux下運(yùn)行,雖免去了版權(quán)費(fèi)用,對數(shù)據(jù)庫的管理卻少了Windows下的圖形界面管理工具,因此使用起來有點(diǎn)困難,F(xiàn)在有了一套由PHP開發(fā)愛好者寫的管理Linux下數(shù)據(jù)庫的程序, PHPMyAdmin可極好的解決使用的易用性問題。PHPMyAdmin對管理Linux下的數(shù)據(jù)庫行之有效,用戶可以通過web瀏覽器新建刪除數(shù)據(jù)庫,增加、刪除、修改表結(jié)構(gòu)和表數(shù)據(jù),還可以通過表單形式提交查詢語句,返回?cái)?shù)據(jù)結(jié)果。因此,現(xiàn)在很多的Linux服務(wù)器都使用PHPMyAdmin管理數(shù)據(jù)庫。

  PHPMyAdmin是一套放在服務(wù)器端的通過瀏覽器界面管理的程序,因此,確保其目錄安全性十分重要,否則,將導(dǎo)致數(shù)據(jù)被盜取甚至遭到惡意破壞。下面將詳細(xì)講述一般的防范措施。

一、修改PHPMyAdmin目錄名:

  在不修改目錄名前,其他人很容易洞察該目錄名,造成安全隱患。如,假設(shè)一臺Linux主機(jī)的域名為:www.test.com,那么不修改目錄名的情況下,在地址欄中輸入:www.test.com/PHPMyAdmin/ 就將進(jìn)入PHPMyAdmin管理程序。因此如果將PHPMyAdmin目錄改名為一個別人不易知道的目錄,如mynameadmin,這樣,你在管理自己的數(shù)據(jù)庫時,只要鍵入:www.test.com/mynameadmin/ 就可以通過瀏覽器管理數(shù)據(jù)庫了。(注:下面仍將使用PHPMyAdmin目錄名,如果目錄名已換,只需把PHPMyAdmin改名為新的目錄名即可。)

二、 對phpMyAdmin目錄加用戶身份驗(yàn)證:

這是很多網(wǎng)站需要用戶驗(yàn)證時普遍使用的方法,這樣當(dāng)用戶第一次瀏覽進(jìn)入該目錄時,都將出現(xiàn)一個提示窗口,提示用戶輸入用戶名和密碼驗(yàn)證,其是通過使用Apache Server的標(biāo)準(zhǔn) mod_auth模塊實(shí)現(xiàn)的,具體操作方法如下:

  1、VI編輯Apache Server配置文件,確保文件中如下兩句話沒有加注釋,如果這兩句話前有"#"符號,去掉"#"號。

  DocumentRoot /data/web/apache/public/htdoCS
  AccessFileName . htAccess
  AllOerride All

  2、passwd程序創(chuàng)建用戶文件:

  htpasswd - c /data/web/apache/secrects/.htpasswd 88998

  其中,-c表示選項(xiàng)告訴htpasswd你想生成一個新的用戶文件,/data/web/apache/secrects/ 是你想存放 .htpasswd 文件的目錄,文件名稱為 .htpasswd,88998 是在驗(yàn)證時所用到的用戶名,敲如以上命令后,系統(tǒng)提示你輸入密碼,這個密碼就是驗(yàn)證時所需要用到的密碼,該密碼在 .htpasswd 文件中是加密的。現(xiàn)在用more來查看 /data/web/apache/secrects/.htpasswd文件,可以看到其中有一行用戶名和一串加密密碼。

  3、創(chuàng)建 .htAccess 文件:

  使用文本編輯器,在目錄 PHPMyAdmin (如果已經(jīng)改名,就是新的目錄名)下創(chuàng)建 .htAccess 文件,在文件中加入如下語句:

  AuthName "用戶驗(yàn)證"
  AuthType Basic
  AuthUserFile /data/web/apache/public/htdoCS/PHPMyAdmin/.htpasswd
require user 88998

  保存所做操作后,再去看PHPMyAdmin目錄,將提示驗(yàn)證窗口,輸入剛用 htpasswd 命令創(chuàng)建的用戶名和密碼,即可進(jìn)入該目錄。

三、增加基于主機(jī)的訪問控制:

  在修改了目錄名和增加訪問驗(yàn)證機(jī)制后,應(yīng)該說現(xiàn)在的PHPMyAdmin已經(jīng)很安全了,但由于PHPMyAdmin目錄一般只是數(shù)據(jù)庫管理員使用,為防止別人還知道目錄名稱和驗(yàn)證密碼,還可以增加如下的基于主機(jī)的訪問控制,基于主機(jī)的訪問是通過驗(yàn)證用戶機(jī)器IP來實(shí)現(xiàn)的,即只有符合條件的IP才可以反問該目錄,否則拒絕訪問。

修改 .htAccess 文件如下:

  AuthName "用戶驗(yàn)證"
  AuthType Basic
  AuthUserFile /data/web/apache/public/htdoCS/PHPMyAdmin/.htpasswd
require user 88998

  order deny,allow
  deny from all
  allow from 202.100.222.80

  這里增加了三條基于主機(jī)訪問控制指令,其中第一條 order 指令的值是由一個逗號隔開的名單,這個名單表明了哪一個指令更高的優(yōu)先權(quán),第二條指令 deny 定義不能訪問該目錄的主機(jī),第三條指令 allow 定義可以訪問該目錄的主機(jī),這樣,該目錄除了IP地址為 202.100.222.80 的機(jī)器可以訪問該目錄之外,其他的都不能訪問,讀者可以把該地址該為用戶數(shù)據(jù)庫管理員IP。

  總結(jié):通過以上三點(diǎn)相結(jié)合,就可很好的確保 PHPMyAdmin 目錄的安全,非數(shù)據(jù)庫管理員將很難通過PHPMyAdmin程序讀取數(shù)據(jù)。這里所講的是針對于PHPMyAdmin目錄進(jìn)行講述,其他目錄如需加訪問限制,也可依此方法操作。

 

                                                    海騰數(shù)據(jù)中心(技術(shù)部整理)
                                                    2007-10-12



Copyright© 2004-2020 河南海騰電子技術(shù)有限公司 版權(quán)所有   經(jīng)營性ICP/ISP證 備案號:B1-20180452   豫公網(wǎng)安備 41019702002018號    電子營業(yè)執(zhí)照