基于访问的共享枚举未按预期工作

基于访问的共享枚举未按预期工作

在长期(2 年)的 Arch Linux 服务器上,我运行了一个包含多个共享的小型 samba 配置。我希望用户只能看到他们有权访问的共享 - 这就是我使用“基于访问的共享枚举 = 是”配置选项的原因(请参阅smb.conf(5)

在 samba 4.16 发布之前,这个功能一直按预期工作(我承认我无法证明 4.16 改变了这一点,但看起来确实如此)。自 4.16 以来的行为是所有共享都是不可见的,尽管我仍然可以访问它们。

我已经将 smb.conf 精简为只有一个共享的最低版本,但问题仍然存在。以下是 testparm smb.conf 的输出:

Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Weak crypto is allowed

Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

# Global parameters
[global]
        disable spoolss = Yes
        dns proxy = No
        interfaces = 192.168.16.10/24
        load printers = No
        logging = systemd
        printcap name = /dev/null
        server role = standalone server
        server string = rathernotsay
        show add printer wizard = No
        idmap config * : backend = tdb
        hosts allow = 192.168.14. 192.168.16. 192.168.17. 10.1. 127.
        printing = bsd


[temp]
        access based share enum = Yes
        comment = temporary files
        create mask = 0770
        directory mask = 02770
        force create mode = 0660
        force directory mode = 02770
        path = /mnt/subvol_mounts/samba/temp
        read only = No
        valid users = +samba_temp
        vfs objects = btrfs

我很感激任何关于这个主题的帮助。提前谢谢您。

答案1

存在与读取 share_info.tdb 文件相关的回归问题。几周前已修复此问题,因此它应该会出现在 4.16.9 和 4.17.5 版本中。

https://bugzilla.samba.org/show_bug.cgi?id=15265

虽然我不建议在生产系统中使用它,但我可以确认 share_info.tdb 上的 chmod 666 确实恢复了预期的行为。

答案2

自 4.16 以来的行为是所有共享都是不可见的,即使我仍然可以访问它们。

您好,我遇到了完全相同的情况。我可以确认此行为发生在 4.16.5 中(我已从 4.15.9 升级到 4.16.5)。这可能是一种理想的行为,但有没有办法恢复旧行为?

谢谢

相关内容