国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > Apache > 正文

Linux Apache+Proftpd構建虛擬主機時要注意的幾個安全問題

2024-08-27 18:30:03
字體:
來源:轉載
供稿:網友
. proftpd建立hostuser/hostuser帳號,所有用戶均映射到該帳號。
htdocs/hosts 目錄屬主也為hostuser
這樣用戶使用FTP上傳的文件屬性為hostuser(644 755)。
將FTP鎖定用戶在自己的主目錄下。

apache以nobody運行(以獨立apache用戶更好),讀hostuser的腳本文件。
對于要寫入的目錄uploads和cache,必須設定777,且循環(huán)設定其子目錄。兩個目錄禁止腳本執(zhí)行(.htaccess:php_flag engine off)。這樣即使黑客上傳webshell到這兩個目錄,也無法執(zhí)行。
這樣cache或uploads中的新文件的屬主將是nobody
cache目錄要限制對外訪問。

這里存在一個問題,就是apache生成的文件和目錄644和755,當proftpd以hostuser:hostuser運行時,用戶是無法刪除cache或uploads中的內容的。
解決方法:
(1) 在PHP程序中chmod文件和目錄分別為666和777
以adodb為例,需修改adodb.inc.php文件1681行if (!mkdir($dir,0771)) 和adodb-csvlib.inc.php文件287行chmod($tmpname,0644);兩個地方
(2) 讓用戶在系統(tǒng)里面清空cache和uploads


2. PHP safe_mode,它的主要作用是讀寫文件時會檢查當前腳本和要讀寫或修改的文件屬主是否一致,如果不一致就拒絕修改。
不過,如果當前腳本屬主是hostuser,要刪除屬主是nobody的uploads目錄下的文件,一旦safe_mode打開,就不能寫了。
所以safe_mode默認是不打開的,

其替代方案為:

php_admin_value open_basedir /docroot 限制每個用戶只能訪問自己的文件。這里的docroot是程序的根目錄,不是程序下的cache或uploads目錄。如果不是根目錄,PHP程序都無法訪問。

3. (不一定能保證)所有PHP程序腳本能過濾Remote Code Execution和Local File Include攻擊。否則黑客仍有可能讀取config.php中的密碼,或者直接讀寫cache或uploads目錄中的內容。
cache目錄中不可存放類似用戶密碼之類的數(shù)據。

4. expose_php設為off ,這樣php不會在http文件頭中泄露PHP的版本號.

Tips:Linux下默認文件和目錄的mod為 文件644 目錄755 (即666-22 777-22)umask 22
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 大邑县| 常德市| 鄂温| 盐城市| 那曲县| 凌源市| 盘山县| 定远县| 古蔺县| 淮安市| 柏乡县| 赤水市| 永嘉县| 甘孜县| 句容市| 聂荣县| 疏勒县| 武义县| 姚安县| 城市| 淮南市| 开平市| 南充市| 碌曲县| 故城县| 清徐县| 汉沽区| 博野县| 曲阳县| 盐边县| 延寿县| 威远县| 双桥区| 尚志市| 安龙县| 平潭县| 大方县| 庆阳市| 临泽县| 漾濞| 杭锦后旗|