我已使用文档将我们的 RHEL7 实例配置为支持 Active Directory 登录集成这里. 这描述了如何使用“ realm
”命令来配置“ sssd
”服务以允许 AD 集成。
我使用以下命令进行sssd
配置realmd
:
realm join usw.example.com -U myusername
realm deny --all
realm permit --groups "usw.example.com\\Linux Admins"
然后我可以使用“ ”登录到该框,[email protected]
假设“ uswuser
”在“ USW\Linux Admins
” AD 组中。 RHEL7 框也(当然)在 AD 中显示为计算机帐户。
我还想授予我们“ use.example.com
”中的用户(请注意美国埃而不是美国西) 对此框的域访问:
[root@oel7template ~]# realm permit "[email protected]" --verbose
! Invalid login argument '[email protected]' does not match the login format.
realm: Couldn't change permitted logins: Invalid login argument '[email protected]' does not match the login format.
我还尝试了其他变体,例如“ ”。我认为此命令失败是因为 RHEL7 服务器 除了域之外use.example.com\\useuser
未加入域。我可以执行“” ,但这会创建两个不同的计算机帐户,这是不可取的。USE.EXAMPLE.COM
USW.EXAMPLE.COM
realm join'
use.wlgore.com
是否可以将 Linux 身份验证配置为与传统 Windows 服务器类似的工作方式?也就是说,服务器在一个子域中拥有一个计算机帐户,但可以针对任何其他域进行身份验证。例如,将此 RHEL7 服务器加入“ usw.example.com
”,但也授予“ ”访问权限use.example.com\useuser
?
如果您发现此架构存在任何其他问题,请告诉我。我可能遗漏了一些基本问题。
答案1
通过添加以下行可以解决这个问题/etc/sssd/sssd.conf
:
subdomain_enumerate = all
我想我应该完整地阅读手册页(man sssd.conf
)。
答案2
如果 subdomain_enumerate 能起到作用,我会非常惊讶。该选项应该只对显示子域用户的“getent passwd”有效。
您可以做的是打开 sssd.conf 文件并手动将用户添加到 simple_allow_users 或 simple_allow_groups 列表中。据我所知,问题只是 realmd 不支持允许子域用户的 FQDN 表示法。
答案3
我建议不要使用realm permit
GPO 来控制加入 RHEL 域的登录。Linux 上可用的 GPO 非常少,它们控制登录。GP 路径:Computer Configuration/Policies/Windows Settings/Security Settings/Local Settings/Security Options
。您可以看到以下设置:
Allow log on locally
控制本地登录Allow log on through Remote Desktop Services
控制远程登录(例如 SSH)
添加域本地组到您的默认域,例如rhel-login-local
和rhel-login-ssh
。然后添加您要授权的用户(您也可以添加其他域的用户),所有内容都可以从 AD 集中管理。