红帽6.5 ldap添加用户无法登录

我的机器的操作系统是redhat6.8,ip为:172.10.54.19 远程有一台ldap服务,在这台机器上使用authconfig-tui命令配置ldap客户端,

1 . 使用id命令,发现可以正常的找到ldap用户 jiang

2 .使用root用户su jiang 也能正常切换到jiang用户

3. 使用ssh [email protected] 时,

   报错:Permission denied, please try again. 

4.系统中有个非ldap用户,非root用户,是操作系统的普通用户xiao

使用ssh [email protected] 输如密码:正常登陆

4.在机器上,当普通用户xiao使用:su jiang,输入密码:********

  报错:su:incorrect password  可以确保的是密码是正确的。

分析问题:操作系统用户可以正常ssh登陆,而ldap用户不能正常登陆,

1. 有可能是ssh的配置问题,ssh配置文件位置 /etc/ssh/sshd_config

2.ldap的问题,那就涉及到pam组件,pam的配置文件在/etc/pam.d/system-auth

解决问题:1. 首先查看/etc/ssh/sshd_config ,参数: PasswordAuthentication yes  |  UsePAM yes 这2个参数配置都是正确的,切无其他限制用户的参数。

    2.网上说添加alllowUser jiang,尝试了一次,重启sshd服务,发现问题依然存在

  3.检查pam组件,

a.命令:rpm -qa | grep nss-pam

b.返回信息:nss-pam-ldapd-0.7.5-32.el6.x86_64(redhat是需要这个进行ldap的认证,所以必需要安装)

4.检查pam的配置文件 system-auth

   .....

auth        sufficient    pam_sss.so use_first_pas

....

account     [default=bad success=ok user_unknown=ignore] pam_sss.so

发现系统的auth,account,password,session都只有pam_sss.so,这个是操作系统的认证,缺少ldap级别的认证,加上: auth        sufficient    pam_ldap.so use_first_pas 这样的配置,问题解决。这是进行ldap认证,没有这一行,

同理后面的account,password,session也要加上pam_ldap.so,从而保证ldap用户和操作系统用户使用上具有同样的权限和感知。

account,password,session加上pam_ldap.so的相关配置

account     [default=bad success=ok user_unknown=ignore] pam_ldap.so

password    sufficient    pam_ldap.so use_authtok

session     optional      pam_ldap.so

结论: 1.  auth        sufficient    pam_sss.so use_first_pas  是操作系统的用户这一层的认证,所以操作系统用户xiao用户可以ssh登陆,

    2. 而缺少auth        sufficient    pam_ldap.so use_first_pas ,也就缺少了ldap层的用户认证。jiang(ldap用户)也就未进行ldap认证,可以理解为输入的密码没有发送到ldap服务端,操作系统接受不到来自ldap服务端有关这个用户的认证信息,所以认证不通过。

   3. 而root具有超级权限,所以可以不用认证,从而直接切换到任意的用户。

   4.redhat7 版本,以及redhat 6.6版本,当使用authconfig-tui的时候,是可以将以上的信息自动写入到对应的配置文件的。
--------------------- 

使用authconfig-tui跳出图形化界面勾选ldap验证才行。。。


原文:https://blog.csdn.net/xiaowen_1990/article/details/78793382 
 

猜你喜欢

转载自blog.csdn.net/seulzz/article/details/86681863
6.5
今日推荐