일부 사용자에게만 openldap 인증 사용

일부 사용자에게만 openldap 인증 사용

저는 몇 대의 Linux 워크스테이션(RedHat 7)을 설정하려고 하는데, 몇 가지 특이한 요구 사항이 있는 LDAP 서버에 대해 인증을 설정하는 방법을 알아내려고 합니다.

기본적으로 sssd를 사용하여 LDAP 인증을 설정하는 방법을 알고 있지만 요구 사항에 맞게 특정 사용자에게만 인증을 제한하는 방법을 모르겠습니다.

LDAP 구성을 활성화하려면 다음 명령줄을 사용하겠습니다.

authconfig --enableldap --enableldapauth --ldapserver="<redacted>" --ldapbasedn="<redacted>" --update --enablemkhomedir

이렇게 하면 모든 LDAP 사용자가 로그인할 수 있으며 내가 아는 한 잘 작동합니다. 그러나 내 요구 사항은 LDAP의 특정 사용자만 로그인할 수 있고 사용자 목록이 별도의 텍스트 파일(사용자 로그인 이름별)로 제공된다는 것입니다.

추가 정보: 우리는 수천 명의 사용자를 보유한 LDAP 서버(실제로는 Active Directory)를 보유하고 있습니다. 이러한 워크스테이션에서 작업해야 하는 약 20명만 이 워크스테이션에 로그인할 수 있습니다. 불행히도 LDAP에는 이에 대한 정보가 없으며 LDAP 서버를 제어할 수 없습니다. 대신 몇 주에 한 번씩 로그인이 허용되어야 하는 사용자 이름 목록이 포함된 텍스트 파일을 받습니다.

이 목록에 있는 사용자로만 제한하면서 LDAP를 사용하여 사용자 이름/비밀번호/사용자 ID 등을 가져오도록 인증을 설정하려면 어떻게 해야 합니까?

답변1

나는 필요한 것을 달성하는 두 가지 방법을 찾았습니다. 첫 번째는 thrig에 의해 설명됩니다. 각 사용자 이름을 /etc/security/access.conf에 개별적으로 추가해야 했습니다.

두 번째 옵션은 sssd.conf에 LDAP 쿼리 문자열을 지정하는 것입니다.

ldap_access_filter = (|(userid=user1)(userid=user2).....)

두 번째 솔루션은 구축하기가 매우 번거롭지만 sssd가 소수의 LDAP 레코드만 검색하기 때문에 궁극적으로 대규모 LDAP 환경에서 상당한 성능 이점을 제공합니다.

답변2

이러한 사용자를 그룹에 넣은 다음 pam_access규칙을 사용하여 /etc/security/access.conf해당 그룹에 있는 사용자(및 root필요한 경우 시스템 관리자 및 모니터링)에 대해서만 로그인을 허용합니다.

+ : root wheel nagios : ALL
+ : yourusergrouphere : ALL
- : ALL : ALL

관련 정보