利用chattr命令打造:只读且不能被删除的.user.ini文件
发布于 作者:苏南大叔 来源:程序如此灵动~
苏南大叔为大家最近带来的.user.ini
的使用系列文章。那么,这个.user.ini
文件在宝塔系统里面是不能被删除,也不能被修改的。那么它是怎么做到的呢?查看系统权限及属主都和其他文件完全一致。用ftp
或者ssh
都不能删除这个文件。
本文测试环境:centos@7
。
.user.ini
不能用普通方法删除
.user.ini
不能用普通方法删除,效果见下图:
暴力删除.user.ini
的正确姿势
宝塔面板其实是利用了chattr
命令,为.user.ini
文件加了个特殊的只读属性。这可以保护某些关键文件被意外修改掉。所以,想删除这个.user.ini
文件的正确姿势如下:
#chattr +i .user.ini
chattr -i .user.ini
rm -rf .user.ini
chattr +i
就是增加这个隐藏的只读属性,-i
就是去掉这个隐藏的只读属性。
chattr
命令进阶
当然,如果我们不是设置i
,而是设置a
的话。例如:让某个文件只能往里面追加数据,但不能删除,适用于各种日志文件:
chattr +a /var/log/messages
如何识别这些特殊文件
使用ls
的变种命令lsattr
,就可以识别出这种被使用chattr
特殊处理过的文件。例如:
lsattr -al
宝塔面板可以快速创建.user.ini
文件
好了,删除特殊文件练习完毕,发现这个.user.ini
文件找不到了吧。不要急。宝塔面板里面,随便点击一下,它就回来了。站点属性里面,点击防跨站攻击
这个按钮一下,就行了。蛮简单的吧?
总结
这次,这个.user.ini文件,就再也不那么神秘了吧。
更多精彩文章,请期待苏南大叔的最新内容: https://newsn.net/tag/php/ 。


