我正在尝试使用以下命令在 RedHat 7 上自动加入域:
realm join -U serviceaccount --client-software=sssd abc.com
问题是这个命令提示输入密码,这会停止我的脚本。如何解决才不会提示输入密码?我需要一个绝对有效的解决方案。
答案1
RE:红帽方面没有解决方法可以绕过有人在领域加入之前或期间输入密码。
Linux/Unix 中总有解决办法:
echo $passwd| realm join -U serviceaccount --client-software=sssd abc.com
为我工作。
答案2
从 Red Hat 的角度来看,您可以在realm join
没有密码的情况下运行,但它首先要求您假设kinit serviceaccount
Kerberos 已正确配置。查看文档这里。 Red Hat 方面没有解决方法可以绕过某人在 之前或期间输入密码realm join
。
可能可以在 AD 端做一些事情,以便在加入域时不需要密码,但这对于本论坛来说是偏离主题的。
答案3
我知道这篇文章有点旧,但有一个可用的选项不一定需要带有密码的 AD 帐户。realm
和命令都adcli
支持该--one-time-password
参数,但这需要在 Active Directory 中预先创建计算机对象,并且您知道计算机对象的计算机帐户密码。
您可以使用 Powershell cmdletReset-ComputerMachinePassword
和/或Windows 上的netdom reset
或netdom resetpwd
命令来手动将计算机帐户密码设置为众所周知的字符串。您还可以使用 Active Directory 用户和计算机 GUI 在 Active Directory 中的计算机对象上执行操作Reset Account
- 这会更改计算机帐户密码以匹配计算机对象名称(例如,如果计算机对象是工作站01这会将计算机帐户密码更改为字符串“WORKSTATION01”)。
在这种情况下,您可以使用主机名(或使用 Reset-ComputerMachinePassword 设置的任何内容)作为一次性密码将 Linux 计算机加入域,而无需实际域用户/服务帐户的凭据。
realm join <mydomain>.example.com --one-time-password `hostname -s`