chmod引出的问题

薄洪涛7年前Linux1478

上传代码后,尝试访问

出现如下错误

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参数对系统安全作用极大;


标签: linux

相关文章

PHP调用不起来Python脚本

前几天做了个自动处理文件的python脚本,目前python脚本需要手动把文件放到特定文件夹下,自动去读取处理;但是老大觉得不方便,让我写了个文件上传页面,然后调用python的脚本,导出处理后的文件...

linux免密登陆

linux免密登陆

最近有些累,所以今天的教程就水一篇;所谓免密登陆,就是说我有一台服务器,不想让人家知道具体的ip或者用户名密码,只让使用者从跳板机登陆,通过ssh xxx@ip  这种来登陆;1、 首先跳板...

服务器:swap告警,系统异常报错

服务器:swap告警,系统异常报错

登陆自己的小服务器,用composer下载个东西,一直报killed[root@host voyager]# composer require tcg/voya...

阿里云服务器更改默认ssh端口

我们通常服务器默认的ssh端口是22,但是使用默认端口是不安全的,所以我们需要更改ssh端口1.修改ssh配置文件vi /etc/ssh/sshd_config找到 #Port 22 ,然后...

centos8 新增服务

我在centos8上部署了一个java服务,使用java -jar xx.jar来启动服务,但是对于停掉服务,就得使用kill命令,所以想着把它做成个服务原始命令如下:/www/server/java...

搭建SSH反向隧道

搭建SSH反向隧道

公司的数据库是通过端口转发来连接的,即需要ssh登录跳板机,然后通过隧道-端口转发,将数据库映射到跳板机(或者电脑本地)的某个端口,程序连接本地的端口就可以实现连接远程对的数据库;这种连接方式相比VP...

发表评论    

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