码农日记

薄洪涛的个人博客

chmod引出的问题

上传代码后,尝试访问

出现如下错误

TIM截图20181220160818.png

先尝试对文件修改权限

[root@host wechat.bohongtao.online]# chmod -R 755 ./wechat/
chmod: changing permissions of `./wechat/web/.user.ini': Operation not permitted
[root@host wechat.bohongtao.online]#

然后引出了这个问题,.user.ini是什么鬼,直接rm

[root@host web]# rm .user.ini
rm: remove regular file `.user.ini'? y
rm: cannot remove `.user.ini': Operation not permitted
[root@host web]#

厉害了,删不掉!!!!

然后我尝试打开编辑这个文件,无法保存,自带readonly属性

解决方法:

[root@host web]# lsattr -a
-------------e- ./index.php
-------------e- ./.
-------------e- ./index-test.php
-------------e- ./MP_verify_4k0CUUNDC98LBQU6.txt
----i--------e- ./.user.ini
-------------e- ./yii
-------------e- ./.user.ini~
-------------e- ./static
-------------e- ./uploads
-------------e- ./favicon.ico
-------------e- ./robots.txt
-------------e- ./..
-------------e- ./.gitignore

发现了么,这个文件有个i参数,去掉

[root@host web]# chattr -i .user.ini

打开这个文件,注释里面的内容

#open_basedir=/www/wwwroot/wechat.bohongtao.online/wechat/web/:/tmp/:/proc/

解释一下,open_basedir这个参数是指定一个目录树,当此网站要求访问目录树之外的文件时,会报错

然后返回修改权限,正常

[root@host wechat.bohongtao.online]# chmod -R 755 ./wechat/

接着,既然刚才去掉了i参数,这次要加上

[root@host web]# chattr +i .user.ini
[root@host web]# lsattr -a
-------------e- ./index.php
-------------e- ./.
-------------e- ./index-test.php
-------------e- ./MP_verify_4k0CUUNDC98LBQU6.txt
----i--------e- ./.user.ini
-------------e- ./yii
-------------e- ./.user.ini~
-------------e- ./static
-------------e- ./uploads
-------------e- ./favicon.ico
-------------e- ./robots.txt
-------------e- ./..
-------------e- ./.gitignore

再次解释:lsattr命令是查看文件属性,当带i时,文件不能被修改,删除,写入,改名,设定链接,所以i参数对系统安全作用极大;


发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By Z-BlogPHP 1.7.3

版权所有 | 转载请标明出处