0x00 前言
0x01 遮蔽版本資訊
關閉步驟:
(1)開啟apache配置檔案httpd.conf
a.找到serverroot os
,修改為serverroot productonly
b.找到serversignature on
,修改為serversignature off
(2)重啟apache
0x02 目錄許可權隔離
apache安裝後會產生serverroot
、documentroot
、scripalias
、customlog
、errorlog
目錄,這些目錄分別有對應的功能,所以需要對它們設定單獨的許可權,具體許可權配置如下。
(1)serverroot
目錄只有具有管理許可權的使用者才能訪問
(2)documentroot
能夠被管理web站點內容的使用者、使用apache伺服器的apache使用者(組)訪問
(3)只有admin組的使用者可以訪問日誌目錄
0x03 關閉預設主機
在安裝好apache後一般會有乙個預設的主機目錄,這個目錄可以不通過網域名稱訪問ip直接訪問到,主機中可能會存在一些伺服器敏感資訊。
因此換件搭建好了後記得關閉預設主機,只開放自定義的主機以避免留下安全隱患。
預設如下:
改虛擬主機的話就只能訪問乙個網域名稱
但開啟虛擬主機配置檔案httpd-vhosts.conf
就能配置多個**網域名稱
並且在主配置檔案下開啟虛擬主機配置檔案,主配置檔案就失效了
0x04 低許可權執行
windows系統下,apache預設由root
許可權安裝、執行。
為避免風險,要讓apache在低許可權下執行。
開啟httpd.conf,在檔案中找到user
和group
:
user和group表示執行httpd服務的使用者和組,主要是給**應用降權的。apache預設是用daemon來執行的,建議降權,所以我得改改了。
改為:
user nobody;
group# -1;
具體的降權操作可參考:
windows伺服器下apache 的降權
0x05 防止使用者自定義設定
在httpd.conf進行以下設定,阻止使用者建立、修改.htaccess
檔案,防止使用者超越能定義的系統安全性。
也就是這三個引數分別設定成none
、none
、all
順便將options
中引數含義都列出來學習一下
all准許以下除multiviews以外所有功能0x06 禁止顯示目錄睡覺睡覺~multiviews允許多重內容被瀏覽,如果你的目錄下有乙個叫做foo.txt的檔案,那麼你可以通過/foo來訪問到它,這對於乙個多語言內容的站點比較有用
indexes若該目錄下無index檔案,則准許顯示該目錄下的檔案以供選擇
includesnoexec准許ssi,但不可使用#exec和#include功能
includes准許ssi
followsymlinks在該目錄中,伺服器將跟蹤符號鏈結。注意,即使伺服器跟蹤符號鏈結,它也不會改變用來匹配不同區域的路徑名,如果在;標記內設定,該選項會被忽略
symlinksifownermatch在該目錄中僅僅跟蹤本站點內的鏈結
execcgi在該目錄下准許使用cgi
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...
LANMP安全配置之MySQL安全配置
上週學習了一下lanmp安全配置之apache安全配置 用的最多的資料庫就是mysql了 所以這周繼續學習一下mysql安全配置 還是參考 php web安全開發實戰 一書,再做一些補充 安裝成功後第一件事就是改root預設密碼,然後設定複雜密碼 在了解許可權分配之前 先了解以下mysql下的幾個控...