我可以毫无问题地将机器加入到 Ubuntu 领域。因此,对 CentOS 7.7 使用完全相同的步骤,我可以加入域和 id 用户...但我无法 ssh 登录!
我使用的步骤仅因软件包要求略有不同而有所不同。以下是我的 CentOS AD 加入步骤:
sudo dnf install net-tools samba sssd krb5-workstation krb5-server sssd-krb5 sssd-ad nfs-utils oddjob-mkhomedir
/etc/hostname #contains:
hostname
/etc/hosts #contains:
127.0.0.1 hostname
-set SELINUX to permissive in /etc/selinux/config
Edit /etc/krb5.conf
sudo kinit domain_administrator
Edit /etc/samba/smb.conf
systemctl stop sssd
Edit /etc/sssd/sssd.conf
sudo chmod 600 /etc/sssd/sssd.conf
sudo net ads join -Udomain_administrator
Add this line to /etc/pam.d/common-session
session required pam_mkhomedir.so skel=/etc/skel/ umask=0022
systemctl start sssd
systemctl enable sssd
id moreilly
-Succesfully outputs id info
ssh banana@hostname
Permission denied, please try again.
但是当我尝试 su 或 ssh user@centosbox 时,它显示“权限被拒绝,请重试。”
如果我在 /etc/ssh/sshd_config 中更改并启用这些行,那么我可以 ssh 但不会创建主目录:
# Kerberos options
#default is no
KerberosAuthentication yes
KerberosOrLocalPasswd yes
KerberosTicketCleanup yes
#default no
KerberosGetAFSToken yes
KerberosUseKuserok yes
# GSSAPI options
GSSAPIAuthentication yes
# DEFAULT IS NO
GSSAPICleanupCredentials yes
主目录在 Ubuntu 上自动创建,但在 CentOS 上则不会。为什么我需要在 CentOS 的 sshd_config 中启用这些 Kerberos 和 GSSAPI 指令,而不是在 Ubuntu 上?
到底:
- 我不知道为什么我需要在 CentOS 而不是 Ubuntu 上编辑 sshd_config。
- 如果我确实必须启用这些 sshd_config 指令,那么我不需要做更多的事情来启用主目录
答案1
地方
session required pam_mkhomedir.so skel=/etc/skel/ umask=0022
如果您还没有这样做,则位于所有会话指令的顶部。