redhat – 为什么所有LDAP用户都显示getent passwd?

我们正在将LDAP服务器与Solaris和RHEL服务器一起使用,并计划将更多服务器迁移到RHEL.但是,我们在所有Red Hat服务器上都存在LDAP问题.

当我键入“getent passwd”时,将显示整个LDAP服务器上的所有用户,而不是仅显示有权访问此服务器的用户.通常大约有10到50人可以访问服务器,因此Solaris打印出这个用户列表,而Red Hat flat out打印出LDAP中存在的所有用户的列表(大约650).

我更喜欢Solaris上的行为,其中只有具有访问服务器权限的用户才会列出“getent passwd”.

如何配置RHEL以仅列出有权访问服务器的用户

解决方法

您在/etc/security/access.conf中限制访问权限,虽然它控制谁可以访问服务器,但对用户对服务器可见的内容没有影响.这通常是你想要的:即使用户alice无法登录服务器,如果她拥有共享文件系统上的文件,我想看到:
$ls -l ~alice
-rw-rw-r--. 1 alice alice 0 Aug  1 09:09 afile

代替:

$ls -l ~alice
-rw-rw-r--. 1 5234 5234 0 Aug  1 09:09 afile

也就是说,即使用户无法登录系统,我希望系统了解用户.

如果要限制系统可见的用户集,则需要配置NSS子系统以实现某种LDAP过滤器.你如何做到这取决于你正在使用什么工具:

> user993553提到nss_ldap,这是与LDAP集成的传统工具.
>一些较新的发行版使用SSSD,其中包括LDAP模块中的ldap_service_search_base参数,
> nslcd程序具有可应用于每个地图的过滤器选项

您使用哪种机制取决于您正在运行的RHEL版本:RHEL 6同时具有nslcd和sssd(我使用的是nslcd),而我认为早期版本仅限于nss_ldap.

相关文章

insmod和modprobe加-f参数导致Invalid module format错误 这...
将ArchLinux安装到U盘 几个月前入门Arch的时候上网搜了不少安...
1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...
如何抑制stable_secret读取关键的“net.ipv6.conf.all.stabl...