Ubuntu 16 - 活动目录 - 可以通过ssh连接,但无法通过rdp连接。

5

我一直在为我们的开发人员构建一个连接到Active Directory服务器的Linux服务器。使用Realm和SSSD的组合,我已成功让所有用户使用SSH,但是尝试通过xrdp远程桌面却失败了。

Nov  7 04:54:49 ip-10-10-100-177 xrdp-sesman: pam_unix(xrdp-sesman:auth): authentication failure; logname= uid=0 euid=0 tty= ruser= rhost=  user=ricktbaker
Nov  7 04:54:49 ip-10-10-100-177 xrdp-sesman: pam_sss(xrdp-sesman:auth): authentication success; logname= uid=0 euid=0 tty= ruser= rhost= user=ricktbaker
Nov  7 04:54:49 ip-10-10-100-177 xrdp-sesman: pam_sss(xrdp-sesman:account): Access denied for user ricktbaker: 6 (Permission denied)

我的/etc/sssd/sssd.conf

[sssd]
domains = my.domain.com
config_file_version = 2
services = nss, pam

[domain/my.domain.com]
ad_domain = my.domain.com
krb5_realm = MY.DOMAIN.COM
realmd_tags = joined-with-adcli
cache_credentials = True
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = False
fallback_homedir = /home/%u
simple_allow_users = $
access_provider = ad

我已经尝试将access_provider更改为simple,但是这样我也无法进行ssh。 不太确定我缺少什么,但我会提供任何可能有助于解决问题的日志或信息。

---- 编辑 -----

在sssd.conf的域部分添加以下行似乎可以解决问题,但我不确定这是否是正确的修复方法:

ad_gpo_access_control = permissive
3个回答

3

我太喜欢你了。我为这个问题奋斗了一整天,但是没有解决。

顺便说一下,当我使用你的配置时,我仍然遇到了X11不允许连接的问题。只需要编辑/etc/X11/Xwrapper.config以允许用户为anybody。

现在,它可以工作了!

非常感谢您的更新!


很高兴能够帮到你。我也花了不少时间来尝试解决这个问题。关于X11的更改很有趣。我猜你是在进行本地登录而不是RDP? - Rick Baker
我正在使用Active Directory登录在Ubuntu加入域的服务器上进行xrdp。 仍需弄清如何正确管理DNS/域票据自动化,但目前还算可以。 - C.Dumange

0

0

来自sssd-ad手册:

       ad_gpo_map_interactive (string)
       A comma-separated list of PAM service names for which GPO-based access control is evaluated based on the InteractiveLogonRight and DenyInteractiveLogonRight policy settings.

       Note: Using the Group Policy Management Editor this value is called "Allow log on locally" and "Deny log on locally".

       It is possible to add another PAM service name to the default set by using “+service_name” or to explicitly remove a PAM service name from the default set by using “-service_name”. For example,
       in order to replace a default PAM service name for this logon right (e.g.  “login”) with a custom pam service name (e.g.  “my_pam_service”), you would use the following configuration:

           ad_gpo_map_interactive = +my_pam_service, -login

      ....

所以,你只需要添加:

           ad_gpo_map_interactive = +xrdp-sesman

添加到你的sssd.conf文件中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接