LANMP安全配置學習之PHP安全配置

2022-08-18 01:30:15 字數 2023 閱讀 8971

就看phpweb的第四章感覺自己對安全配置這塊不怎麼了解,所以想學習一下

就先從熟悉點的php安全配置開始吧

1.變數相關配置

1.1 開啟魔術引號

magic_quotes_gpc = on

magic_quotes_runtime = off

1.2 關閉全域性變數

register_globals = off
當設定為on時,php會將$_post$_get$_cookie$_env$_session中的$key=>$value直接註冊為變數

2. 安全模式的配置

2.1 開啟安全模式

safe_mode = on;
安全模式是乙個非常重要的安全機制,能夠控制一些php中的函式,也不允許對某些關鍵檔案的操作。

php版本》5.3,廢棄該特性

2.2 安全模式下執行程式主目錄

safe_mode_exec_dir = /var/www/html;
system()和其他程式執行函式將拒絕不在此目錄的程式。

必須用/作為目錄分隔符

2.3 禁用類/函式

disable_classes = ;

disable_functions = ;

後接多個類/函式時用分隔

3. 上傳檔案及目錄許可權

3.1 防止檔案遠端載入漏洞

如果伺服器不需載入遠端檔案建議關閉此功能。

allow_url_fopen = off;

alow_url_include = off;

3.2 限制活動目錄

open_basedir=/home/web/html/
4. 回顯資訊的配置4.1 遮蔽php版本資訊

php.ini檔案中

expose_php = off
4.2 關閉錯誤回顯

display_errors = off
4.3 設定錯誤報告級別

error_reporting = 0;
0不回顯錯誤資訊;

e_all/e_strict回顯所有級別錯誤資訊。

4.4 錯誤日誌

php.ini檔案中

log_errors = off
表示將錯誤日誌是否輸出到檔案。

同時,設定錯誤日誌存放的位置,建議和apache日誌存放在一起。

error_log = d:/usr/apache2/logs/php_error.log
該檔案必須允許apache使用者和組具有寫的許可權。

log_errors_max_length = 1024
設定錯誤日誌關聯資訊的最大長度,0表示無限長度。

5.禁用危險函式

可使用disable_functions選項禁掉一些危險函式(如下圖)。

0x02 參考

LANMP安全配置學習之PHP安全配置

就看phpweb的第四章感覺自己對安全配置這塊不怎麼了解,所以想學習一下 就先從熟悉點的php安全配置開始吧 1.變數相關配置 1.1 開啟魔術引號 magic quotes gpc on magic quotes runtime off 1.2 關閉全域性變數 register globals o...

LANMP安全配置之MySQL安全配置

上週學習了一下lanmp安全配置之apache安全配置 用的最多的資料庫就是mysql了 所以這周繼續學習一下mysql安全配置 還是參考 php web安全開發實戰 一書,再做一些補充 安裝成功後第一件事就是改root預設密碼,然後設定複雜密碼 在了解許可權分配之前 先了解以下mysql下的幾個控...

LANMP安全配置之Nginx安全配置

比起前幾篇的apache安全配置 php安全配置 mysql安全配置,對nginx的了解巨少,沒怎麼用過除了知道nginx解析漏洞就啥也不知道了 好了,開始學習 1.1 更改預設使用者名稱 nginx預設nobody,可更改預設使用者名稱防止他人利用 1.2 新增使用者 1 新增組 groupadd...