nginx基線安全,修復步驟。主要是由于使用了root用戶啟動nginx。為了安全應該使用非root用戶啟動nginx
一、檢查項和問題
檢查項分類 | 檢查項名稱 |
身份鑒別 | 檢查是否配置Nginx賬號鎖定策略。 |
服務配置 | 檢查Nginx進程啟動賬號。 |
服務配置 | Nginx后端服務指定的Header隱藏狀態 |
服務配置 | Nginx的WEB訪問日志記錄狀態 |
服務配置 | Nginx的WEB訪問日志記錄狀態 |
服務配置 | Nginx的WEB訪問日志記錄狀態 |
服務配置 | Nginx的WEB訪問日志記錄狀態 |
服務配置 | Nginx的WEB訪問日志記錄狀態 |
服務配置 | 檢查Nginx進程啟動賬號。 |
身份鑒別 | 檢查是否配置Nginx賬號鎖定策略。 |
身份鑒別 | 檢查是否配置Nginx賬號鎖定策略。 |
服務配置 | 檢查Nginx進程啟動賬號。 |
身份鑒別 | 檢查是否配置Nginx賬號鎖定策略。 |
服務配置 | 檢查Nginx進程啟動賬號。 |
身份鑒別 | 檢查是否配置Nginx賬號鎖定策略。 |
服務配置 | 檢查Nginx進程啟動賬號。 |
身份鑒別 | 檢查是否配置Nginx賬號鎖定策略。 |
服務配置 | 檢查Nginx進程啟動賬號。 |
身份鑒別 | 檢查是否配置Nginx賬號鎖定策略。 |
身份鑒別 | 檢查是否配置Nginx賬號鎖定策略。 |
服務配置 | 檢查Nginx進程啟動賬號。 |
身份鑒別 | 檢查是否配置Nginx賬號鎖定策略。 |
服務配置 | 檢查Nginx進程啟動賬號。 |
服務配置 | Nginx后端服務指定的Header隱藏狀態 |
二、修復步驟
1. 創建專用用戶和組
sudo groupadd nginx
sudo useradd -g nginx -s /sbin/nologin -M nginx
?2、
2. 修改 Nginx 配置文件
編輯主配置文件?/etc/nginx/nginx.conf
,在頂部添加或修改:
user nginx nginx;
3. 調整文件和目錄權限
# 修改 Nginx 主目錄權限
sudo chown -R nginx:nginx /var/log/nginx
sudo chown -R nginx:nginx /var/cache/nginx
sudo chown -R nginx:nginx /etc/nginx# 確保日志目錄可寫
sudo chmod -R 755 /var/log/nginx
4. 修改端口問題
非 root 用戶無法綁定 1024 以下端口,有兩種解決方案:
server {listen 8080;# 其他配置...
}
5. 測試配置并啟動
# 測試配置
sudo nginx -t# 以非root用戶啟動
sudo -u nginx nginx
6. 設置開機啟動(可選)
編輯 systemd 服務文件?/lib/systemd/system/nginx.service
,修改?User
?和?Group
:
[Service]
User=nginx
Group=nginx
注意事項
確保非 root 用戶對網站文件有讀取權限
如果使用 SSL 證書,確保證書文件可讀
某些功能(如平滑升級)可能需要 root 權限
監控日志確保沒有權限問題
通過以上步驟,Nginx 將以非 root 用戶身份運行,提高系統安全性。