SSH、Kerberos、AD:如何/在哪里配置 /etc/pam.d/password-auth?

SSH、Kerberos、AD:如何/在哪里配置 /etc/pam.d/password-auth?

我这里有一台 CentOS 6 机器,想为来自另一个受信任林的用户提供 SSH 访问权限。我有一个临时的解决方法,即:

1)将 /etc/pam.d/vncserver 中的内容更改为

auth include password-auth

2)添加这两行/etc/pam.d/password-auth

auth        sufficient    pam_krb5.so use_first_pass realm=NEW.DOMAIN.NET
password    sufficient    pam_krb5.so use_authtok realm=NEW.DOMAIN.NET

看起来是这样的:

%PAM-1.0
This file is auto-generated.
User changes will be destroyed the next time authconfig is run.
auth        required      pam_env.so
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 500 quiet
auth        sufficient    pam_krb5.so use_first_pass
auth        sufficient    pam_krb5.so use_first_pass realm=NEW.DOMAIN.NET
auth        required      pam_deny.so

account     required      pam_unix.so broken_shadow
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 500 quiet
account     [default=bad success=ok user_unknown=ignore] pam_krb5.so
account     required      pam_permit.so

password    requisite     pam_cracklib.so try_first_pass retry=3 type=
password    sufficient    pam_unix.so sha512 shadow nis nullok try_first_pass use_authtok
password    sufficient    pam_krb5.so use_authtok
password    sufficient    pam_krb5.so use_authtok realm=NEW.DOMAIN.NET
password    required      pam_deny.so

session     optional      pam_keyinit.so revoke
session     required      pam_limits.so
session     [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session     required      pam_unix.so
session     optional      pam_krb5.so

3)将新域名添加到/etc/krb5.conf

4)重新启动 SSH 守护进程

--> 工作正常,但在每次系统配置身份验证(authconfig -update_all)之后,2)中的更改都会被覆盖(撤消),然后 SSH 连接被拒绝。

我的问题是在哪里添加额外的新域以使其永久运行。简单的替换不起作用,因为旧域/林仍在使用中。

仅将新域添加到 /etc/krb5.so 不会解决问题,因为它只会检查默认域,而不是“NEW.DOMAIN.NET”。欢迎提出任何想法...

问候,托马斯

答案1

您可以使用 FreeIPAs AD 同步功能来实现这一点。它虽然不完全相同,但功能相同,而且管理和控制起来更容易。

相关内容