chattr命令可通过设置文件属性增强linux系统中敏感文件的安全性,其中+i属性使文件不可变,即使root也无法修改或删除,必须先使用-i取消属性;+a属性仅允许追加内容,适用于日志文件防篡改;+c启用压缩,+u允许文件恢复;典型应用场景包括保护/etc/shadow、日志文件和ssl证书;查看属性使用lsattr命令,取消保护需执行chattr -i,可递归设置目录但需谨慎;该命令仅支持ext2/ext3/ext4/xfs等文件系统,无法防御已获取root权限的攻击,且可能影响服务正常运行,因此需结合备份策略与其他安全措施共同使用,不能单独作为唯一防护手段。

在 Linux 系统中,
chattr
chattr
以下是使用
chattr
chattr
+i
文件不能被修改、重命名、删除,也不能写入或链接。只有 root 用户可以添加或清除该属性。
chattr +i /path/to/sensitive_file
设置后,即使是 root 也无法直接修改文件,必须先取消属性:
chattr -i /path/to/sensitive_file
+a
文件只能被追加内容(如日志文件),不能被修改已有内容或删除。适合保护日志文件不被篡改。
chattr +a /var/log/important.log
+c
虽不直接用于安全,但可结合其他属性使用。
+u
即使文件被删除,仍可能恢复内容(依赖文件系统支持)。
最常用的是
+i
+a
比如防止
/etc/passwd
/etc/shadow
sudo chattr +i /etc/shadow sudo chattr +i /etc/gshadow
这样即使攻击者获得 root 权限,也无法直接替换密码文件(除非先解除属性)。
对于审计日志,使用
+a
sudo chattr +a /var/log/audit.log
应用程序可以用
echo "event" >> audit.log
echo "fake" > audit.log
如 Web 服务器的 SSL 证书或启动脚本:
sudo chattr +i /etc/ssl/private/server.key
查看文件当前属性:
lsattr /path/to/file
输出示例:
----i--------- /etc/shadow
取消保护(修改前必须先取消):
chattr -i /etc/shadow
递归设置目录(谨慎使用):
chattr -R +i /path/to/dir/
注意:某些程序可能因无法写入临时文件而异常,不建议对整个目录盲目加
+i
仅限 ext2/ext3/ext4/xfs 等文件系统支持:
chattr
root 权限仍是关键:虽然
+i
chattr -i
chattr
影响系统更新或服务运行:给正在被程序写入的文件加
+i
备份与恢复策略:在设置不可变属性前,建议先备份文件。恢复时需先
-i
基本上就这些。合理使用
chattr +i
+a
以上就是如何保护敏感文件 chattr的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号