LDAP 루트 계정 사용을 허용하지 않는 방법

LDAP 루트 계정 사용을 허용하지 않는 방법

저는 대학에서 두 대의 서버를 담당하고 있습니다. 이 모든 컴퓨터는 중앙 집중식 사용자 로그인을 허용하기 위해 부서의 LDAP 서버와 통신하도록 구성되어 있습니다. 이 LDAP 서버에는 다음과 같은 사용자가 있습니다 root.

# getent passwd | grep root
root:x:0:0:root:/root:/bin/bash
root:x:0:0:Netbios Domain Administrator:/home/root:/bin/false

root최근에 제가 담당하고 있는 서버 중 하나의 계정 에 문제가 발생했습니다 . 내 SSH 연결 시도는 로컬 root사용자에 대해 성공적으로 인증되었지만 홈 디렉터리는 LDAP에서 /home/root. 또한 어떤 서버에서든 LDAP의 자격 증명을 사용하여 루트로 인증할 수 있다는 사실을 발견했습니다 root. 즉, 로컬에 대한 인증이 root실패하면 LDAP가 root시도되고 암호가 정확하면 사용자는 수퍼유저로 로그인됩니다.

나는 이것이 매우 안전하지 않으며 두 root계정의 모호성을 제거해야 한다고 생각합니다. 하지만 우리 IT 부서에 따르면 LDAP가 root필요하다고 합니다.

LDAP에서 계정 을 필터링하여 root인증을 허용하지 않으려면 어떻게 해야 합니까? pam_ldap.so에서 일부 LDAP 지시문도 사용하고 있습니다 /etc/nsswitch.conf.

답변1

여러 가지 방법이 있습니다. 다음은 몇 가지 쉬운 방법입니다.

  • /etc/ssh/sshd_config아니요로 변경합니다 ( PermitRootLogin보통 좋은 생각이므로 su/ sudo관리에 의존합니다). 이는 물론 SSH에만 영향을 미칩니다.
  • 다양한 PAM 구성 파일에서 pam_listfile모듈을 사용하여 특정 계정을 명시적으로 허용하거나 거부합니다(각 서비스마다 수행해야 함).
  • 다양한 PAM 구성 파일에서 루트가 로그인할 수 없도록 pam_ldap모듈 을 1(또는 그 이상)로 구성합니다(각 서비스마다 수행해야 함).pam_min_uid
  • PAM LDAP 검색 필터( pam_filter)를 수정하여 사용자를 제외하거나(예 pam_filter (uidNumber>=1): 또는 기본/범위를 수정할 수 있음)

마지막 두 가지 중 하나가 귀하에게 가장 적합할 수 있습니다. 또한 실패할 경우 로컬 루트 계정이 pam_unix 성공할 수 있도록 로컬 PAM 구성을 일부 조정해야 할 수도 있습니다 pam_ldap(예: 주문 및 필수/필수/충분).

관련 정보