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

Dovecot/Pigeonhole:如何为新用户设置新建sieve目录的默认权限

Dovecot/Pigeonhole:如何为新用户设置新建sieve目录的默认权限

嘿,我碰到过一模一样的问题!Dovecot默认对Sieve目录的权限设置确实比较严格,刚好可以通过调整几个配置参数来解决你的需求。

  • 修改Dovecot全局权限配置
    打开你的Dovecot主配置文件(通常是/etc/dovecot/dovecot.conf),或者对应的配置片段文件(比如/etc/dovecot/conf.d/10-mail.conf),添加或修改以下参数:

    # 设置目录创建的权限掩码,确保新目录有组可读可执行权限
    dir_create_mask = 0770
    # 设置文件创建的权限掩码,让新文件支持组可读
    file_create_mask = 0660
    # 设置umask,配合上面的掩码确保setgid位(你的顶层目录的r-s权限)被继承
    umask = 0027
    

    这些参数会控制Dovecot创建所有目录和文件的基础权限,确保组用户(vmail)能访问。

  • 调整Pigeonhole的Sieve专用权限
    因为Pigeonhole模块有自己的权限设置,会覆盖全局配置,所以需要专门修改Sieve的配置(通常在/etc/dovecot/conf.d/90-sieve.conf):

    # 设置Sieve脚本目录的权限为2770(对应drwxr-s---),包含setgid位确保组继承
    sieve_dir_perms = 02770
    # 可选:设置Sieve脚本文件的权限,让组用户可读
    sieve_file_perms = 0660
    # 可选:设置激活的Sieve脚本文件权限
    sieve_active_file_perms = 0660
    

    默认情况下,sieve_dir_perms是02700,这就是你看到的drwx--S---权限(只有所有者能访问),改成02770后,组vmail就拥有了读和执行权限。

  • 重启Dovecot生效
    保存配置文件后,重启Dovecot服务让设置生效:

    systemctl restart dovecot
    
  • 验证效果
    创建一个新的测试用户,让它第一次登录邮箱,然后检查sieve目录的权限:

    ls -ld /var/spool/mail/vmail/your-test-domain/new-user/sieve
    

    应该会看到drwxr-s---的权限,和其他目录一致了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.20 10:29:37