PAM 인증

Linux Authentication Module

- 인증 모듈 : PAM ( Pluggable Authentication Modules )

- 모듈 사용 시 주의할 점 : 항상 Test환경에서 실행 후 실제 적용할 것( 다시 재설정하기 어려움 )

 

Linux PAM

- 사용자 인증의 핵심, 인증 형태, 자원 접근 등의 선택형 라이브러리

- 모듈의 종류가 다양하며 착탈식 인증 모듈

- Telent, SSH 등의 서비스 인증 부분에서 접근 통제 설정 가능

- PAM 활용한 su의 접근 통제 설정 가능

 

PAM 동작순서

1. 프로그램이 사용자 인증 필요시PAM 라이브러리 호출

2. 라이브러리가 호출되면 프로그램의 PAM 설정 파일을 참조

3. 참고한 파일에서 모듈을 수행

4. 결괏값은 프로그램으로 반환되어 인증 여부를

 

PAM 라이브러리 관련 경로

- /etc/pam.d

   > PAM 라이브러리를 이용하는 응용프로그램의 설정 파일 위치

   > 파일명은 서비스 이름으로 되어 있다.

 

- /usr/lib64/security

   > PAM 라이브러리가 제공하는 인증 모듈들

   > 다양한 인증 작업 모듈, 라이브러리(*.so)로 구현되어 있음.‘

 

- /etc/security

   > PAM 모듈 실행에 필요한 설정 파일

   > 파일명은 해당 서비스명.conf

 

PAM 구성 파일 작성 방법

[type]                    [control]               [module-path]     [module-argument]

Type : PAM에게 어떤 타입의 인증이 사용될 것인지 지정

   - auth : 사용자 인증에 사용, 올바른 패스워드인지 확인 절차를 가짐

   - account : 계정관리, 사용자의 위치, 시간, 권한 등의 확인 절차를 가짐

   - password : 사용자가 패스워드 변경할 수 있는 모듈 지정

   - session : 로그인 전 후 수행되는 일을 지정 ( EX: 로그 )

 

Control : PAM에서 사용되는 모듈의 결과에 따라 동작 지정

   - required

        : 성공 값 반환 시 성공 후 Pass, 실패 시 마지막까지 다 실행 후 ( 실패가 나더라도 뒤의 자료도 보겠다 )

        : 대부분의 실패 확인 작업은 required 설정을 한다.

        : 특정 인증절차 부분에서 어떠한 부분에서 인증을 실패했는지 찾기 위한 것

        : 예를 들어 IP 입력 후 ID 입력에서 실패인지 IP 입력부터가 실패인지 확인한다.

        : 최초 실패 시 이후 결과에서 성공이 발생하더라도 무조건 실패 처리된다.

   - requisite( 리큐지트 ): 성공 값 반환 시 성공 후 Pass, 실패 시 곧바로 실패 ( 계정이 없으면 바로 실패 )

   - sufficient( 서피젼드 ) : 성공 값 반환 시 곧바로 성공, , 위에서 required 실패 시 실패( 우선순위가 제일 낮다 )

 

Module-path : 사용할 모듈의 위치

- 기본 Default 경로는 /usr/lib64/security로 사용된다. (PAM 모듈의 이름만 넣어도 실행)

 

Module-arguments : 모듈에게 전달되는 인수

(옵션이므로 선택적 사용이 가능, if문과 비슷한 역할을 하는 옵션을 주로 사용)

   - no_warn : 경고 메시지 표시 안 함

   - use_first_pass : 패스워드를 요구하지 않음, 패스워드가 없다면 인증받지 못함 (패스워드 오류 시 종료)

   - try_first_pass : 입력받은 패스워드로 인증을 시도, 없다면 사용자에게 물어봄 (패스워드 오류 시 다시 입력)

'리눅스' 카테고리의 다른 글

Shell Script 실습  (0) 2022.11.03
Shell Script  (0) 2022.11.03
Log  (0) 2022.11.02
NFS 실습  (0) 2022.11.01
NFS (Network File System)  (0) 2022.11.01

+ Recent posts