Enterprise Infrastructure Intelligence ● Certified engineers online · Fast response guaranteed
리눅스/OS

NSS와 PAM의 아키텍처: Linux 인증 시스템의 계층 분리 모델

NSS(Name Service Switch)는 사용자 정보를 어디서 조회할지 결정하고, PAM(Pluggable Authentication Modules)은 인증 정책을 어떻게 적용할지 제어합니다. 두 계층이 독립적으로 작동하면서 Linux 인증 시스템의 유연성을 제공하는 구조를 이해해야 합니다.

2026.10.06  ·  11회  · 

NSS와 PAM의 역할 구분

NSS는 어디서 정보를 가져올지 결정합니다. /etc/nsswitch.conf를 통해 passwd, shadow, group 등 각 데이터베이스의 조회 순서를 정의합니다. 로컬 파일(/etc/passwd), LDAP, NIS, DNS 같은 다양한 백엔드 중 어느 것을 먼저 쿼리할지 제어합니다.

PAM은 어떻게 인증할지 결정합니다. /etc/pam.d/ 디렉토리 내 각 서비스별 설정 파일을 통해 인증, 계정 검증, 비밀번호 변경, 세션 관리의 4가지 관리 그룹을 독립적으로 구성합니다.

동작 원리와 실무 주의점

SSH 로그인 시, PAM이 먼저 /etc/pam.d/sshd를 읽고 어떤 인증 모듈을 실행할지 결정합니다. pam_ldap.so 같은 모듈이 실행되면, 그 모듈 내부에서 NSS를 통해 사용자 정보를 조회합니다. NSS는 /etc/nsswitch.conf 설정에 따라 LDAP 서버 또는 로컬 파일에서 UID, GID, 홈 디렉토리 같은 정보를 가져옵니다.

실무에서 LDAP 연동 시 흔한 오류는 PAM만 변경하고 NSS를 수정하지 않는 것입니다. 인증(PAM)은 성공하더라도 NSS가 사용자 정보를 찾지 못하면 로그인 후 셸 환경이 제대로 로드되지 않습니다. 두 계층을 함께 설정해야 하며, 캐싱 계층(SSSD)을 도입하면 offline 시나리오에도 대응할 수 있습니다.

WIKIDATA WORKSTATION
AI·렌더링에 최적화된
전문가용 워크스테이션
NVIDIA RTX GPU · 최대 192GB 메모리 · ECC 지원