You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu Server 22.04 创建具备全系统只读权限备份用户的问题求助

Ubuntu Server 22.04 创建具备全系统只读权限备份用户的问题求助

你好,我来帮你梳理下当前遇到的问题,以及可行的解决方案~

首先,你遇到的核心问题是:通过/etc/security/capability.conf配置的cap_dac_read_search能力并没有实际生效,所以backup-user依然无法访问那些对“其他用户”没有读权限的目录(比如/var/log/apache2,权限是drwxr-x--- root adm)。从你提供的capsh --print输出也能看出来,backup-user的Current能力集是空的,说明预期的能力并没有被赋予。

为什么能力配置没生效?

/etc/security/capability.conf的配置是通过PAM(Pluggable Authentication Modules)模块生效的,默认情况下Ubuntu可能没有在会话加载中启用pam_cap.so模块,导致用户登录时不会读取这个配置文件并赋予相应能力。

解决步骤

1. 启用PAM的capability模块

编辑PAM的通用会话配置文件:

sudo nano /etc/pam.d/common-session

在文件末尾添加一行:

session required pam_cap.so

保存并退出。如果你的备份用户仅通过SSH/SFTP登录,也可以只在/etc/pam.d/sshd中添加这一行,这样只会对SSH会话生效。

2. 重新登录验证能力

断开当前backup-user的SSH连接,或者执行su - backup-user重新登录(注意必须是带-的登录式shell,才能加载PAM会话配置)。

再次执行capsh --print,如果配置生效,你会看到Current行包含cap_dac_read_search,类似这样:

Current: =cap_dac_read_search+ep

3. 测试访问权限

现在尝试访问之前无法进入的目录:

cd /var/log/apache2

应该可以正常进入并读取其中的文件了。cap_dac_read_search能力已经足够让用户绕过文件系统的读/搜索权限检查,不需要cap_dac_override(后者是用于修改文件权限的,备份场景完全不需要)。

备选方案:如果能力配置依然有问题

如果上述方法没生效,还有两种替代思路:

  • 加入相关用户组:对于特定目录(比如/var/log下的很多目录属于adm组),可以把backup-user加入adm组:

    sudo usermod -aG adm backup-user
    

    但这种方法只能覆盖部分目录,无法实现全系统只读。

  • 使用文件ACL:给全系统的文件和目录添加backup-user的只读ACL:

    # 给所有目录添加读和执行权限
    sudo find / -type d -not -path "/proc/*" -not -path "/sys/*" -not -path "/dev/*" -exec setfacl -m u:backup-user:rx {} \;
    # 给所有文件添加读权限
    sudo find / -type f -not -path "/proc/*" -not -path "/sys/*" -not -path "/dev/*" -exec setfacl -m u:backup-user:r {} \;
    

    注意要排除/proc、/sys、/dev这些虚拟文件系统,避免执行出错。这种方法的缺点是后续新建的文件/目录不会自动继承ACL,需要额外配置默认ACL。

额外小提示

你创建用户时设置-d /把家目录设为根目录,其实可以改成/home/backup-user更符合常规习惯,不过这对权限没有影响。如果只需要用户通过SFTP备份,不需要交互式shell,可以修改用户的登录shell为/usr/sbin/nologin:

sudo usermod -s /usr/sbin/nologin backup-user

备注:内容来源于stack exchange,提问作者Cintya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 13:19:30