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

首頁 > 網站 > Apache > 正文

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

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

apache以nobody運行(以獨立apache用戶更好),讀hostuser的腳本文件。
對于要寫入的目錄uploads和cache,必須設定777,且循環設定其子目錄。兩個目錄禁止腳本執行(.htaccess:php_flag engine off)。這樣即使黑客上傳webshell到這兩個目錄,也無法執行。
這樣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) 讓用戶在系統里面清空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目錄中不可存放類似用戶密碼之類的數據。

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

Tips:Linux下默認文件和目錄的mod為 文件644 目錄755 (即666-22 777-22)umask 22
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 海阳市| 沈阳市| 桐乡市| 大同县| 桦川县| 怀远县| 观塘区| 昌乐县| 盐源县| 新野县| 吉隆县| 南溪县| 全椒县| 德兴市| 潍坊市| 游戏| 永济市| 唐山市| 大化| 那坡县| 石阡县| 封开县| 九龙城区| 拉萨市| 洛川县| 黄山市| 沁阳市| 岚皋县| 伊川县| 博白县| 辰溪县| 皋兰县| 肃南| 寿阳县| 板桥市| 浪卡子县| 瓮安县| 辛集市| 延安市| 冕宁县| 阳西县|