Linux系統下PhpMyAdmin目錄的安全管理

來源:互聯網
上載者:User

Linux下開發Web程式,現在很流行的開發方法為:用PHP開發Web程式,用Apache做Web Server,Mysql充當後台管理資料庫。這種組合使得開發Web程式簡單、安全、效率高。由於程式是在Linux下運行,雖免去了著作權費用,對資料庫的管理卻少了Windows下的圖形介面管理工具,因此使用起來有點困難。現在有了一套由php開發愛好者寫的管理Linux下資料庫的程式, phpMyAdmin可極好的解決使用的易用性問題。PhpMyAdmin對管理Linux下的資料庫行之有效,使用者可以通過web瀏覽器建立刪除資料庫,增加、刪除、修改表結構和表資料,還可以通過表單形式提交查詢語句,返回資料結果。因此,現在很多的Linux伺服器都使用phpMyAdmin管理資料庫。

  PhpMyAdmin是一套放在伺服器端的通過瀏覽器介面管理的程式,因此,確保其目錄安全性十分重要,否則,將導致資料被盜取甚至遭到惡意破壞。下面將詳細講述一般的防範措施。

  一、 修改phpMyAdmin目錄名:

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

  二、 對phpMyAdmin目錄加使用者身分識別驗證:

  這是很多網站需要使用者驗證時普遍使用的方法,這樣當使用者第一次瀏覽進入該目錄時,都將出現一個提示視窗,提示使用者輸入使用者名稱和密碼驗證,其是通過使用Apache Server的標準 mod_auth模組實現的,具體操作方法如下:

  1、VI編輯Apache Server設定檔,確保檔案中如下兩句話沒有加註釋,如果這兩句話前有"#"符號,去掉"#"號。 DocumentRoot /data/web/apache/public/htdocs

  AccessFileName . htaccess

  AllOerride All

  2、passwd程式建立使用者檔案: htpasswd - c /data/web/apache/secrects/.htpasswd 88998

  其中,-c表示選項告訴htpasswd你想產生一個新的使用者檔案,/data/web/apache/secrects/ 是你想存放 .htpasswd 檔案的目錄,檔案名稱為 .htpasswd,88998 是在驗證時所用到的使用者名稱,敲如以上命令後,系統提示你輸入密碼,這個密碼就是驗證時所需要用到的密碼,該密碼在 .htpasswd 檔案中是加密的。現在用more來查看 /data/web/apache/secrects/.htpasswd檔案,可以看到其中有一行使用者名稱和一串加密密碼。

  3、建立 .htaccess 檔案:

  使用文字編輯器,在目錄 phpMyAdmin (如果已經改名,就是新的目錄名)下建立 .htaccess 檔案,在檔案中加入如下語句: AuthName "使用者驗證"

  AuthType Basic
  AuthUserFile /data/web/apache/public/htdocs/phpMyAdmin/.htpasswd
  require user 88998

  儲存所做操作後,再去看phpMyAdmin目錄,將提示驗證視窗,輸入剛用 htpasswd 命令建立的使用者名稱和密碼,即可進入該目錄。

  三、 增加基於主機的存取控制:

  在修改了目錄名和增加訪問驗證機制後,應該說現在的phpMyAdmin已經很安全了,但由於phpMyAdmin目錄一般只是資料庫管理員使用,為防止別人還知道目錄名稱和驗證密碼,還可以增加如下的基於主機的存取控制,基於主機的訪問是通過驗證使用者機器IP來實現的,即只有合格IP才可以反問該目錄,否則拒絕訪問。

  修改 .htaccess 檔案如下: AuthName "使用者驗證"

  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

  這裡增加了三條基於主機存取控制指令,其中第一條 order 指令的值是由一個逗號隔開的名單,這個名單表明了哪一個指令更高的優先權,第二條指令 deny 定義不能訪問該目錄的主機,第三條指令 allow 定義可以訪問該目錄的主機,這樣,該目錄除了IP地址為 202.100.222.80 的機器可以訪問該目錄之外,其他的都不能訪問,讀者可以把該地址該為使用者資料庫管理員IP。

  總結:通過以上三點相結合,就可很好的確保 phpMyAdmin 目錄的安全,非資料庫管理員將很難通過phpMyAdmin程式讀取資料。這裡所講的是針對於phpMyAdmin目錄進行講述,其他目錄如需加訪問限制,也可依此方法操作。



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。