允许域用户和本地用户访问 Centos 7 服务器

允许域用户和本地用户访问 Centos 7 服务器

我需要允许域用户(用户 ID 和密码)以及本地用户(SSH 密钥/无密码)访问 Centos 7 服务器。我已使用 AllowUsers 和 AllowGroups 配置了 sshd_config,并假设如果我将本地用户添加到这些用户中,它应该可以正常工作。但是,当本地用户尝试登录时,我收到错误:

sshd[23906]: pam_sss(sshd:account): Access denied for user datahub_push: 10 (User not known to the underlying authentication module)
sshd[23906]: fatal: Access denied for user datahub_push by PAM account configuration [preauth]

域用户工作正常,在 sshd_config 中的 AllowGroups 下有一个条目。经过一番谷歌搜索,我发现一个建议需要修改:

/etc/pam.d/sshd

...但我不确定要更改什么以及编辑该文件是否是最佳做法?即我应该使用 authconfig 工具吗?

非常感谢您的帮助。

答案1

我自己修复了它!我添加了以下行到

sshd 配置文件

account    sufficient   pam_localuser.so

重新启动 sshd 后,我现在可以作为域用户登录本地用户。以下是完整的工作文件:

#%PAM-1.0
auth       required     pam_sepermit.so
auth       substack     password-auth
auth       include      postlogin
# Used with polkit to reauthorize users in remote sessions
-auth      optional     pam_reauthorize.so prepare
account    sufficient   pam_localuser.so
account    required     pam_nologin.so
account    include      password-auth
password   include      password-auth
# pam_selinux.so close should be the first session rule
session    required     pam_selinux.so close
session    required     pam_loginuid.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session    required     pam_selinux.so open env_params
session    required     pam_namespace.so
session    optional     pam_keyinit.so force revoke
session    include      password-auth
session    include      postlogin
# Used with polkit to reauthorize users in remote sessions
-session   optional     pam_reauthorize.so prepare

希望这对其他人有帮助:)

答案2

即使 nsswitch.conf 正确,它也无法工作。我们使用 winbind 和 krb5 进行密码验证。windbind 可以工作,但本地用户验证不起作用,导致访问被拒绝。

相关内容