/var/log 权限需分级管控:目录为755,认证日志设600仅root访问,系统日志设640供adm组只读,服务日志目录配750+640并属对应组;logrotate通过create指令确保轮转后权限持续生效;轮转策略应依日志类型设定频率、保留数与压缩时机,并须通过dry-run、手动触发及定期扫描验证维护。

/var/log 目录本身通常为 drwxr-xr-x root root(即 755 权限),普通用户不可写,但可读部分日志;关键日志文件如 /var/log/auth.log、/var/log/secure、/var/log/messages 默认权限多为 640 或 600,属主 root,属组 syslog 或 adm,确保敏感操作日志不被未授权用户访问。
权限设置要点
权限管理不是“一刀切”,而是按日志敏感性和用途分级控制:
-
认证类日志(auth.log、secure、faillog、btmp)应设为
600,仅 root 可读写,防止暴力破解痕迹泄露; -
系统通用日志(messages、syslog、kern.log)推荐
640,允许 adm 或 syslog 组成员(如运维人员)只读,便于排查但不越权; -
服务日志目录(如 /var/log/nginx/、/var/log/httpd/)需保证 web 服务进程(如 www-data、nginx)有写权限,常用
750目录权限 +640文件权限,属组设为对应服务用户组; - 避免使用
777或开放 world-writable 权限,尤其警惕/var/log下的临时文件或符号链接被利用; - 对启用了
chattr +a(追加属性)的日志(如 messages),logrotate 必须在prerotate中先chattr -a,轮转后再恢复,否则写入失败。
logrotate 权限与创建控制
logrotate 自身通过 create 指令控制新日志文件的权限和归属,这是权限持续生效的关键环节:
PyCharm 2026.2.0.1 Linux版提供 JetBrains 官方 2026.2.0.1 版本安装包,适合需要指定 PyCharm 版本进行 Python 项目开发、运行和调试的用户。
-
create 0640 root adm:轮转后新建日志文件权限为 640,属主 root,属组 adm —— 适配多数系统日志; -
create 0600 root root:用于 auth.log 等高敏日志,确保新建文件严格受限; -
create 0644 nginx nginx:适用于 Nginx 自托管日志,让 nginx 进程能继续写入; - 若省略
create,新日志将继承原文件 umask,默认可能为 600 或 644,易引发服务写入失败; - 配合
sharedscripts和postrotate,可在轮转后修正权限或重载服务(如systemctl reload rsyslog)。
轮转策略设计原则
轮转不是越频繁越好,也不是保留越多越安全,而要兼顾可追溯性、磁盘压力与合规要求:
-
高频日志(如 auth.log、nginx/access.log)建议
daily+rotate 14,保留两周足够覆盖多数攻击分析周期; -
低频但关键日志(boot.log、yum.log、dpkg.log)可用
weekly+rotate 8,兼顾变更审计与空间节省; -
突发流量场景(如 CDN 节点、API 网关)优先用
size 100M替代时间驱动,防止单日日志暴涨失控; -
空日志跳过务必启用
notifempty,避免无意义轮转产生大量空文件; -
压缩时机推荐
delaycompress:当前轮转的旧日志暂不压缩(保持可读),下次轮转时再压缩,方便紧急查看最新归档。
验证与日常维护
配置写完不等于生效,必须验证和监控:
- 用
logrotate -d /etc/logrotate.conf做语法与逻辑模拟(dry-run),确认路径、权限、脚本执行顺序无误; - 手动触发一次:
logrotate -vf /etc/logrotate.d/nginx,检查新文件权限、压缩状态及 postrotate 是否成功; - 定期运行
find /var/log -type f -name "*.log*" -mtime +30 -ls扫描超期文件,防止配置遗漏导致堆积; - 在 cron 中检查 logrotate 是否按时运行:
grep logrotate /var/log/syslog或systemctl list-timers | grep logrotate; - 对核心日志目录加磁盘用量告警,例如当
du -sh /var/log | awk '{print $1}' | sed 's/G//'> 2.5 时触发通知。










