我正在尝试在我的 Ubuntu 工作站上配置自动加入域。我已准备就绪(至少我相信以下命令可以正常工作)
net ads join -U <username>
现在我有两个问题。有人可以向我解释一下 -k 或 --kerberos 选项的作用以及何时可以使用它吗?还有人成功地自动化了这个过程吗?到目前为止,我已经设置了 puppet 来部署所有配置文件(krb、sssd、samba。所有这些都是在手动完成时配置和工作)并在最后运行网络广告连接,但是它似乎失败了(不足为奇,因为我没有提供它带有凭据)有人向我提到要使用 -k 选项运行上述命令,但这似乎也失败了。
-k 将使用 kerberos 身份验证,因此如果您有来自可以在 AD 中创建计算机对象的主体的票证,则 net ads join 命令将起作用,而无需提供任何进一步的凭据。
该过程将是:
获取票证:
kinit <user>
,<user>
例如域管理员帐户在哪里执行连接:
net ads join -k
您可以在脚本中执行此操作。您甚至可以考虑使用msktutil来执行此操作,以防您不想在客户端上安装所有 samba 内容。msktutil 将替换 net ads join 命令。
至于完全自动化,这是一个有点模糊的问题,但关键概念是有一些方法可以在 AD 中预先创建计算机帐户(您可以为此使用 msktuil、网络广告或 Windows GUI),然后使用其中一种工具使用一些默认密码实际加入客户端。
如果您有一个单独的管理员组来管理 AD,他们可能会为您预先创建计算机对象。如果您必须自己执行此操作,无论如何我认为自动化它没有多大用处,因为它不会为您节省任何工作。
对此的答案是使用
这和域上具有向域添加设备的单一权限的新用户解决了我的问题。