$ sudo grep -v -E '^\s*(#|$)' /etc/openldap/ldap.conf
SASL_NOCANON on
uri ldap://ldap.local.{company}.com
base dc={company},dc=com
$ sudo grep -v -E '^\s*(#|$)' /etc/pam.d/sshd
auth sufficient pam_ldap.so
auth sufficient pam_unix.so
account sufficient pam_ldap.so
account sufficient pam_unix.so
auth required pam_listfile.so item=user sense=allow file=/etc/ldap.allowedusers
auth substack password-auth
auth include postlogin
account required pam_sepermit.so
account required pam_nologin.so
account include password-auth
password include password-auth
session required pam_selinux.so close
session required pam_loginuid.so
session required pam_selinux.so open env_params
session required pam_namespace.so
session optional pam_keyinit.so force revoke
session optional pam_motd.so
session include password-auth
session include postlogin
$
$ sudo cat /etc/ldap.allowedusers
ldapuser1
$ sudo grep -v -E '^\s*(#|$)' /etc/nsswitch.conf
passwd: files ldap
group: files ldap
netgroup: sss files
automount: sss files
services: sss files
shadow: files sss
hosts: files dns myhostname
aliases: files
ethers: files
gshadow: files
networks: files dns
protocols: files
publickey: files
rpc: files
$ sudo grep -v -E '^\s*(#|$)' /etc/nslcd.conf
uid nslcd
gid ldap
uri ldap://ldap.local.{company}.com/
base dc={company},dc=com
$
以上是配置。我能够使用 LDAP 用户和 VM 常规内部用户 ssh 到上述 Oracle 8 Linux VM。
我想将虚拟机访问限制为仅特定设置的用户?为此,我在 /etc/pam.d/sshd 文件中添加了“ auth required pam_listfile.so item=user sense=allow file=/etc/ldap.allowedusers ”,并在 /etc/ldap.allowedusers 中仅允许 ldapuser1 它不起作用,我仍然可以使用未列出的 ldap 用户 ex:ldapuser2 进行访问
我在这里犯了什么错误...
在 $ sudo cat /etc/ldap.allowedusers 中添加/删除用户,然后重新启动serversudo systemctl restart sshd 仍然没有用。无法限制仅某些 LDAP 用户的访问,请注意内部用户继续访问服务器以执行 sudo 职责。