我正在为我在大学的系设置一个新的 Active Directory 实例。我在以前的工作 (NT4/2k/2003) 中有一些管理域的经验,但这里的环境有两个独特之处:网络是100% 公共 IP 地址空间(实际上没有防火墙,所有 DNS 都是公共 DNS)和DNS是集中管理的(UNIX 上的 BIND,他们不会将子域委托给我,也不会允许动态 DNS 更新到他们的服务器。)
由于无法使用私有或拆分 DNS,我的域 (ad.dept.univ.edu) 的 SRV 记录可通过公共 DNS 访问。尽管 DNS 是公开的,但我将防火墙设置为仅允许校园内的机器连接到我的域控制器。我将有两个运行 Windows Server 2008r2 的 AD 控制器。这基本上是一个仅限身份验证的域,我们不运行 Windows 文件服务器,大多数客户端机器永远不会加入域或直接对域控制器进行身份验证。该域主要只是为设备和应用程序提供集中的 AD 集成身份验证。
如果您认为 Samba4+OpenLDAP 能够胜任这项任务,我绝对感兴趣,但请提出并自行回答一个新的 wiki 问题,而不是仅仅在这里回复。
domain-name-system active-directory samba windows-server-2008-r2 samba4
我有一个 samba4 服务器,它保存我的客户端 Outlook pst 文件,如果 Outlook 客户端或机器崩溃,我必须去服务器手动终止 PID。
我看到有“reset on zero vc =yes”参数可以解决问题,但 samba4 不再支持它,尽管它在手册页中!!!?
有什么想法吗?
我可以使用的最高 AD 林功能级别是多少,并且仍然具有 SAMBA 4 功能作为域控制器。SAMBA 4 可以充当 Server 2012 功能级别林中的域控制器吗?SAMBA 的功能级别重要吗?
我最近将经典的 Windows 域 (samba3) 迁移到 Active Directory 域 (samba4)。
远程站点中的工作站没有本地 DC,因此它们不知道转换,因此它们不会自动迁移到 Active Directory 设置,我必须手动加入它们。
有没有办法自动告诉他们(通过 DHCP?)搜索新领域?
说明:
环境是一次迁移,因此所有以前的信息(帐户、SID 等)仍然有效。
我可以通过从OLDNETBIOSDOMAINNAME到NEWREALMNAME( ad.customername.com)手动“重新加入”远程客户端来恢复与远程客户端的连接。当我这样做时,他们意识到他们应该使用 DNS 来查找他们的 AD 环境,然后我们就走了!
由于客户端通过 NETBIOS 广播(对吗?)发现新服务器,这会在主站点自动发生,但远程站点的工作站没有本地 DC 来提供该功能。
我已经设置了一台 CentOS 7 机器,并realmd通过以下方式将它加入我们的 AD :
yum install realmd samba-common oddjob oddjob-mkhomedir sssd
realm join --user=myuser@mydomain.local mydomain.local
Run Code Online (Sandbox Code Playgroud)
之后,realm list返回预期的输出
[root@webdev samba]# realm list
mydomain.local
type: kerberos
realm-name: MYDOMAIN.LOCAL
domain-name: mydomain.local
configured: kerberos-member
server-software: active-directory
client-software: sssd
required-package: oddjob
required-package: oddjob-mkhomedir
required-package: sssd
required-package: adcli
required-package: samba-common
login-formats: %U@mydomain.local
login-policy: allow-realm-logins
Run Code Online (Sandbox Code Playgroud)
我可以使用我的 AD 凭据通过 SSH 登录(所以我得到 myuser@mydomain.local@hostname)。
我现在需要允许 Windows 用户访问机器上的文件夹,但是 Samba 似乎不愿意合作 - 所有组合或用户名和密码都返回错误。我不知道如何调试这个,或者我是否遗漏了什么。
该smb.conf文件基本上是:
[root@webdev samba]# testparm
Load smb config files from /etc/samba/smb.conf
rlimit_max: …Run Code Online (Sandbox Code Playgroud) 我有一个带有 samba 4.1.12 的 unix 服务器(arch linux)。该共享中包含使用 utf-8 nfc 编码(标准 utf-8)的文件。
当我将此 samba 共享挂载到 osx 客户端 (10.9.5) 时,具有特殊名称的文件在 osx 客户端上File with "quotes"显示为已损坏 ( C7XSWH~V)。
当我在共享内的 osx 客户端上创建一个带有特殊字符的文件时,它在 osx 中正确显示,但在 unix 服务器上它显示一个奇怪的符号,如File with ?quotes?.
我认为这是因为 osx 期望文件名采用 utf-8 nf d形式,但这些文件作为 utf-8 nf c服务器。
基本上我想要一个工作 samba 共享,来自 osx 和 unix 客户端的用户可以访问和存储文件,并且应该允许文件名中的特殊字符。有没有办法做到这个跨平台?
我怎样才能告诉 osx 简单地对 samba 共享使用 utf-8 nfc 编码?有没有办法做到这一点?
我已经尝试过诸如在 unix 服务器上的 smb.conf 中显式设置编码之类的事情,但没有运气:
unix charset = utf-8
dos charset = utf-8
# --> error …Run Code Online (Sandbox Code Playgroud) 我有一个 OpenLDAP 服务器,用于对各种服务进行身份验证和授权。所有用户都是对象类型inetOrgPerson,我的组是groupOfNames.
现在我想将 Samba 配置为也通过 LDAP 进行身份验证(使用基于组的授权)。我不能/不想将 samba 用作域控制器,而仅用作文件服务器。我也不想在 samba 中单独管理用户帐户,因为我在 LDAP 中有我需要的所有信息(用户名、密码、组成员资格)。我也想避免改变我的 DIT。就我目前的研究而言,我不能直接这样做,因为
a) Samba 使用它自己的凭证存储进行身份验证,这意味着我必须smbpasswd为每个现有的 LDAP 用户
b) 我的 LDAP 用户必须具有 samba 属性
环顾四周后,我怀疑我的问题的解决方案可能是在 samba 和 LDAP 之间使用 Kerberos。
我没有管理 Kerberos 的经验,所以在努力之前,我想澄清以下主题:
我在 Ubuntu Server 14.04 上。
非常感谢您提前提供任何提示
我在 LAN 中的 CentOS 7.2 服务器上有一个 Samba 4 共享,我可以从一些 Windows 10 客户端访问它。
客户端使用服务器 IP 访问共享,并且 Samba 被配置为独立服务器,而不是域成员服务器。
当互联网连接正常时,一切正常,但当没有互联网连接时,客户端需要最多 20 分钟才能显示登录凭据窗口。
这似乎不是与网络相关的问题:客户端可以访问服务器,像往常一样快速 ping 它,使用其他协议(例如 HTTP 或 SSH),并且通常可以通过 LAN 完美地执行所有其他网络活动。
此外,它在长时间等待后工作的事实表明,该过程涉及某种超时。
如果从本地路由器断开 WAN 电缆并尝试从客户端访问 Samba 共享,它会开始等待(地址栏上的绿色加载进度缓慢移动),但是一旦我再次插入 WAN 电缆,客户端显示登录窗口。
Samba 日志(调试级别 5)没有显示任何异常,但似乎有许多连接尝试确实被服务器接受:
[2016/11/15 16:18:34.378116, 3] ../source3/lib/access.c:338(allow_access)
Allowed connection from 192.168.100.5 (192.168.100.5)
[2016/11/15 16:18:34.436829, 5] ../lib/dbwrap/dbwrap.c:178(dbwrap_check_lock_order)
check lock order 2 for /var/lib/samba/serverid.tdb
[2016/11/15 16:18:34.436924, 5] ../lib/dbwrap/dbwrap.c:146(dbwrap_lock_order_state_destructor)
release lock order 2 for /var/lib/samba/serverid.tdb
...
... this is repeated an unbelievably lot …
我有一个 Windows AD 的 Samba 成员。我使用的组合sssd和winbind。Samba 管理机器密码更改,并且还配置为更新sssd. (通常由其处理的机器密码更新sssd被禁用。)
问题出现在 Samba 文件服务器上,banas并显示以下错误:
net ads changetrustpw
Changing password for principal: banas$@CONTOSO.COM
Password change failed: No more connections can be made to this remote computer at this time because the computer has already accepted the maximum number of connections.
Run Code Online (Sandbox Code Playgroud)
我无法通过 Google 找到与此错误消息相关的任何有用匹配项(我所看到的所有内容似乎都与 Windows XP 或其他 Windows 桌面系统试图向太多客户端提供网络共享有关)。
信任很好,因为我可以浏览 Samba 提供的共享,wbinfo -i返回非本地 AD 帐户的合理和预期信息,并net ads testjoin返回预期的Join is OK. …
我在 Active Directory 中加入了 FreeNAS 11.3,一切都按预期工作。但是我真正缺少的一个功能是对用户映射的主目录进行某种覆盖。
默认情况下,目录具有以下模板扩展:
template homedir = /home/%D/%U
我想把它改成这样: /mnt/pool0/home/%U
Web界面上没有办法做到这一点,我不知道直接更改它是否/usr/local/etc/smb4.conf是一个好主意。
推荐的解决方案是什么?