目的:爲了保證網站不遭受木馬入侵上傳及修改文件。
相對安全的權限:
1、站點內所有目錄和文件的用戶和組都應該是root
2、所有目錄權限默認的755
3、所有文件權限默認的644 (不能改文件)
1+2,網站服務用戶(nginx)不能往目錄裏面寫文件,即nginx用戶就不能在裏面寫文件了,木馬就杜絕了。
注意:網站服務的程序使用的用戶不能用root,可以用nginx
以上權限設置可以防止木馬,但是用戶上傳的內容也被拒之門外,怎麼設置讓正常客戶端上傳文件?
解決方法
1、大多數網站做法 chown -R nginx.nginx /data(站點目錄) 比較危險的。
2、找到上傳的目錄,授權nginx可以訪問,這時比較安全的做法。
3、架構上做優化(對業務做讀寫分離)
動態web集羣只負責:帖子和博文的發佈和存取,上傳後直接跳轉到上傳的服務器,上傳服務器把圖片文件放到存儲服務器
4、mount安全參數或者放到/etc/fstab
mount -o nosuid.noexec,nodev
站點目錄及URL訪問控制
location ~ ^/images/.*\.(php|php5)$ {
deny all;
}
location ~ ^/static/.*\.(php|php5)$ {
deny all;
}
location ~* ^/data/(attachment|avatar).*\.(php|php5)$ {
deny all;
}
attachment|avatar(附件|頭像)