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 위치, 동적으로 로드가능