我在 Zentyal Development 6 中创建了一个新域。引用他们的文档:
默认情况下,每个 LDAP 用户在服务器上都有一个个人 /home/ 目录。如果文件共享模块处于活动状态,则特定用户(且只有该用户)可以通过 SMB/CIFS 访问此目录。此外,如果 Windows 客户端主机加入域,则此目录将自动安装为驱动器 H:。
看起来禁用它就像禁用文件共享模块一样简单。但是,如果不禁用目录服务模块,这是不可能的。
在我的环境中,这不是理想的情况。我到处寻找关闭此功能的方法,但都没有成功。似乎没有办法在 Web 控制台中禁用此功能,如果我修改配置,配置dsa.msc
会在一两分钟后重置。
这似乎与任何组策略无关,因为此设置的策略项已保留Not Configured
,这告诉我这是 Zentyal 本身的问题。
有一个很少 论坛 帖子在 Zentyal 论坛上,有用户询问同样的问题,但是这些问题要么没有答案,要么像最后一个问题一样,依靠设置组策略来对抗Zentyal 的覆盖。
值得注意的是,在上面链接的文档中,文件共享模块中有一个“常规设置”选项卡。我的配置中缺少这个选项卡。
我认为,域服务和文件共享应该是两个独立且不同的组件,需要单独安装。按照这种模式,禁用主驱动器配置是好的,但完全禁用或删除 Samba 会更加理想。在我看来,托管文件的域控制器似乎是一个严重的设计缺陷和安全漏洞,这很可能就是为什么 Windows Server 最佳实践说您永远不应在同一台服务器上安装域服务和文件共享角色。
编辑:我发现这个 Zentyal 文档以及其中的两个设置:
桑巴(/etc/zentyal/samba.conf
)
# Uncomment this if you want to skip setting the home directory of the
# users while saving changes
#unmanaged_home_directory = yes
用户(/etc/zentyal/users.conf
)
# whether to create user homes or not
mk_home = yes
我将这两项都设置为“否”,但没有任何效果。文件共享已创建,新用户已设置主驱动器。
答案1
创建一个像这样的 logon.bat 脚本:
rem Disconnect mapped drives...
NET USE H: /delete
输入\\zentyal\sysvol\domain\scripts
并设置权限读取并执行为了域用户。 使用远程医疗设置用户配置文件登录脚本。
答案2
看起来是 Samba 干的。最终答案是在这篇 Unix StackExchange 文章。
对于那些关注/遇到同样问题的人
我不知道初始用户的两个配置项是否有任何作用。但是,在我的环境中,我已将这两个配置项都设置为,no
并且已注释掉我的[homes]
配置。此项的配置保存/etc/samba/shares.conf
在 Zentyal Development 6.0.1 中,因此如果您在其中找不到它,/etc/samba/smb.conf
那就是原因。
如果您想自己禁用此功能,我建议更改所有三个配置项。
答案3
您需要修改 Samba 共享的存根。首先为修改后的存根创建目录:
mkdir -p /etc/zentyal/stubs/samba
不要修改存根,/usr/share/zentyal/stubs/
因为当您升级 Zentyal 时您的更改可能会被覆盖。
然后复制文件
cp /usr/share/zentyal/stubs/samba/shares.conf.mas /etc/zentyal/stubs/samba/
编辑文件/etc/zentyal/stubs/samba/shares.conf.mas
并在 Samba 主目录的所有配置行开头添加哈希值。在 Zentyal 6.1.2 中它看起来像这样:
...
</%init>
#[homes]
# comment = <% __('Home Directories') %>
# path = /home/%S
# read only = no
# browseable = no
# create mask = 0611
# directory mask = 0711
% my $rb = ($recycle xor defined($recycle_exceptions->{'users'}));
% my $objects = 'acl_xattr';
% unless ($disableFullAudit) {
% $objects .= ' full_audit';
% }
% if ($rb) {
% $objects .= ' recycle';
% }
# vfs objects = <% $objects %>
# full_audit:success = connect opendir disconnect unlink mkdir rmdir open rename
# full_audit:failure = connect opendir disconnect unlink mkdir rmdir open rename
% if ($rb) {
% foreach my $key (keys %{$recycle_config}) {
% next unless $key;
# recycle: <% $key %> = <% $recycle_config->{$key} %>
% }
% }
# <% @shares ? "Shares\n" : "No shares configured" %>
...
只需在每行没有百分号的地方添加哈希即可。保存文件并使用命令重新启动 Samba 模块:
sudo zs samba restart
这将为 Samba 生成新的配置。现在检查/etc/samba/shares.conf
文件。瞧!