lnmp架構下PHP安全配置

2021-09-02 21:34:57 字數 1049 閱讀 6806

1. 使用open_basedir限制虛擬主機跨目錄訪問(限制php在指定的目錄裡活動)

2. 禁用不安全php函式

disable_functions = show_source,system,shell_exec,passthru,exec,popen,proc_open,proc_get_status,phpinfo

3. php 使用者唯讀

例如站點 www.share.com 根目錄 使用者與組為 nobody,而執行 php 的使用者和組為 phpuser。目錄許可權為 755,檔案許可權為 644. 如此,php 為唯讀, 無法寫入任何檔案到站點目錄下。也就是說使用者不能上傳檔案,即使有漏洞, 黑客也傳不了後門, 更不可能掛木馬. 這麼幹之前告知程式設計師將檔案快取改為 nosql 記憶體快取(例如 memcached、redis 等),上傳的檔案通過 介面傳到其他伺服器(靜態伺服器)。

4. 關閉php錯誤日誌

display_errors = on 改為 display_errors = off

5. php 上傳分離

將檔案上傳到遠端伺服器,例如 nfs 等。當然也可以呼叫寫好的 php 介面, 即使有上傳漏洞,那麼檔案也被傳到了靜態伺服器上, 木馬等檔案根本無法執行.

6. 關閉php資訊

expose_php = on

改為expose_php = off

隱藏自己 php 版本資訊,防止黑客針對這個版本的 php 發動攻擊

7. 禁止動態載入鏈結庫

disable_dl = on; 改為

enable_dl = off;

8. 禁用開啟遠端url

allow_url_fopen = on 改為

allow_url_fopen = off

其實這點算不上真正的安全, 並不會導致 web 被入侵等問題,但是這個非常影響效能.

以下方法將無法獲取遠端 url 內容

$data = file_get_contents("");

以下方法可以獲取本地檔案內容

$data = file_get_contents("test.txt");

LNMP架構十五(Nginx基本安全配置)

十五 nginx基本安全配置 先說一些基本安全設定,由開始發展到現在,其實nginx的安全做得比以前已經好不少,不過有些還是要強調一下。1 nginx預設是不允許列出整個目錄的,不過,我們為了安全,最好還是確認這個真的關閉了,不然 被拉走了就悲劇了。http2 nginx預設是會在返回的資料報中顯示...

lnmp架構相關配置

1 檢查編譯工具gcc是否存在,不存在先安裝gcc gcc v 2 解壓原始碼包 tar gz 刪除原始碼包 rm rf 3 安裝原始碼,會經歷三個步驟,配置 config 編譯 make 安裝 make install 使用命令make make install 搭建lamp環境要遵循順序,apa...

搭建LNMP架構 Nginx 配置

lnmp平台就是linux ngnix mysql php的組合架構,需要linux伺服器 mysql資料庫 php解析環境。1 安裝編譯工具 準備好相關的壓縮檔案,並共享出來,然後進行掛載,再進行壓縮。root localhost systemctl stop firwalld.service 關...