一、目錄權(quán)限設(shè)置很重要:可以有效防范黑客上傳木馬文件.
如果通過 chmod 644 * -R 的話,php文件就沒有權(quán)限訪問了。
如果通過chmod 755 * -R 的話,php文件的權(quán)限就高了。
所以就需要分開設(shè)置目錄權(quán)限和文件權(quán)限:
linux 服務(wù)器權(quán)限:經(jīng)常要用到的命令:
find /path -type f -exec chmod 644 {} \;//設(shè)置文件權(quán)限為644
find /path -type d -exec chmod 755 {} \;//設(shè)置目錄權(quán)限為755
設(shè)置完成后,再通過命令:chown root:root * -R 將目錄和文件的所有者改為root。
這樣就更加安全了。
FTP用戶,確定使用的是linux主機。windows需要登錄到服務(wù)器中設(shè)置。進入到phpcms 安裝根目錄,選取所有文件:
設(shè)置數(shù)字值為:755,同時選定:選擇遞歸處理子目錄,只應(yīng)用到目錄
同樣再選擇所有文件,數(shù)字值為:644,選擇遞歸處理子目錄,只應(yīng)用到文件
如果設(shè)置錯了,重新再設(shè)置就可以了。
二、Linux find命令 查找可疑的木馬文件
查找:30天內(nèi)被修改的文件
find./-mtime-30-type f-exec ls -l{} \;
找到目錄下所有的txt文件
find ./ -name "*.txt" -print
找到目錄下所有的txt文件并刪除
find ./ -name "*.txt" -exec rm -rf {} \;
找到目錄下所有的php文件 并且在30天之類被修改的文件
find./ -name "*.php" -mtime-30-typef-execls -l{} \;
找到目錄下所有的php文件,同時,滿足 30天以內(nèi),1天之前的
find ./ -name "*.php" -mtime -30 -mtime +1 -type f -execls -l {} \;
三、通過apache配置限定:
1、apache 下 禁止目錄執(zhí)行php
通過目錄下面放置 .htaccess文件來限制權(quán)限。
該方法會將php文件當做附件并下載。同時,可以通過瀏覽器訪問到文件。
php_flag engine off
使用場景:在下面目錄放置
\uploadfile\
\statics\
\html\
\phpsso_server\uploadfile\
\phpsso_server\statics\
2、禁止通過瀏覽器訪問所有文件
通過目錄下面放置.htaccess文件來限制權(quán)限。
RewriteEngine on
RewriteRule ^(.*) /index.html
使用場景:
\caches\
\phpsso_server\caches\
3、禁止php跨目錄瀏覽權(quán)限配置:
虛擬主機配置樣例:
ServerAdminroot@phpip.com
DocumentRoot /data/wwwroot/www
ServerNamewww.phpip.com
OptionsFollowSymLinks
AllowOverride Options FileInfo
Order allow,deny
Allow from all
php_admin_value open_basedir /data/wwwroot/www/:/var/tmp/
DirectoryIndex index.htm index.html index.php
ErrorLog "| /usr/sbin/rotatelogs /data/logs/%m_%d_www.phpip.com-error_log 86400 480"
CustomLog "| /usr/sbin/rotatelogs /data/logs/%m_%d_www.phpip.com-access_log 86400 480" common
4、按天存放apache日志:
參考上面配置文件:
ErrorLog "| /usr/sbin/rotatelogs /data/logs/%m_%d_www.phpip.com-error_log 86400 480"
CustomLog "| /usr/sbin/rotatelogs /data/logs/%m_%d_www.phpip.com-access_log 86400 480" common