Linux PAM (Pluggable Authentication Module)

I. 리눅스 인증 모듈, Linux PAM

가. Linux PAM(Pluggable Authentication Model)의 개념

  • 리눅스 시스템에서 사용자 및 어플리케이션과 서비스 인증에 대한 동적 접근 제어 모듈

나. Linux PAM의 목적

목적구성요소
사용자 인증과
독립 프로그램
– 사용자 인증 권한을 OS에 이관하여 개발 시 별도의 인증 과정 개발이 불필요
손쉬운 인증
모듈 관리
– 필요 라이브러리는 묶음으로 제공
– 인증방법 변경 시 재컴파일 불필요
  • PAM을 통해 시스템 관리자가 응용프로그램들의 사용자 인증 방법을 세밀하게 제어 가능

 

II. Linux PAM 구조와 주요 모듈

가. Linux PAM 구조

구분세부 항목설명
구조설치 경로– 기본 설치 경로 /etc/pam.d 디렉토리
기본 구조type  control  module-path  arguments
문법Type– account, auth, password, session
Control– requisite, required, sufficient, optional
Module-path– 모듈 사용 유무 및 해당 모듈 경로
Arguments– 모듈에 전달되는 인수, 모듈 별 인수
주요
파일
login– 슈퍼유저 로그인 가능 인증 및 파일
other– 별도 지정하지 않은 서비스 참조
  • PAM 라이브러리는 /etc/pam.d에서 각 시스템에 설정하여, 사용 가능 인증 모듈 통해 인증

나. Linux PAM 주요 모듈

모듈파일명설명
tty 모듈Pam_securetty.so– 보안 접속 시 사용
파일 제어Pam_listfile.so– 서비스 허가나 거부 방법
로그인Pam_nologin.so– 로그인 가능 여부 제어
접근거부Pam_deny.so– 접근 거부 시 사용
암호정책Pam_cracklib.so– 암호 설정 정책 비교,검사
루트권한Pam_wheel.so– Root 권한 부여 가능검사
암호입력Pam_rootpk– 무 암호 서비스이용 지원
  • 모듈 자체는 /lib/security 위치, 동적으로 로드가능

콘텐츠 사용 시 출처 표기 부탁 드리고, 궁금한 점이나 의견은 댓글 남겨주세요^^