仅使用pam ldap和nslcdvalidation一个用户

我只想用户“theuser”login到这个主机。

我在nslcd.conf中尝试了以下内容:

pam_authz_search (&(objectClass=posixAccount)(IsActive=TRUE)(uid=theuser)) 

但都可以login。 如果不使用pam_authz_search,我使用“filter”命令,但是getent只返回一个用户,即“theuser”。

更新:操作系统是Ubuntu 12.10,我正在使用libpam-ldapd不是libpam-ldap

您可以使用/etc/security/access.conf文件来控制将哪些日志logging到服务器(不pipe用户数据库的来源)。 对于这种机制,您需要启用pam_access模块​​(通常用于帐户阶段)。 无论是在/etc/pam.d/common-account所有服务,还是类似/etc/pam.d/sshd,使其只对ssh连接有效。

有关详细信息,请查看手册页access.conf和pam_access。

以RHEL6为例:

编辑/etc/pam_ldap.conf类似于:

pam_filter |(uid = myuid)

并保持/etc/nslcd.conf不被修改。 这将允许您使用“id someuser”浏览所有用户,但只允许“myuid”login。

还有/ etc / ssh / sshd_config中的AllowUsers和AllowGroups,也可以用于访问控制,假设他们只有ssh访问权限。