Information Security

31-2 PAM을 이용한 로그인 제한 본문

Linux

31-2 PAM을 이용한 로그인 제한

leeeeye321 2017. 10. 30. 04:16

PAM을 이용한 로그인 제한

PAM(Pluggable Authentication Module)

서비스 접속 및 각종 인증에 사용되는 모듈

 

ftpusers 파일을 이용한 FTP 사용자 접근 제어는 사용자 인증에 사용되는 모듈 PAM의 pam.listfile.so 모듈을 이용하여 가능하다.

 

vsftp에서 PAM을 사용하기 위하여 설정 파일에 위와 같이 명시가 되어 있다.

 

...

...

vsftpd의 PAM 설정 확인

auth       required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed

-인증을 담당하는 2번째 줄 auth에서 설정 확인

-해당 파일(/etc/vsftpd/ftpusers)에 등록되어 있는 사용자는 접근을 금지하며(sense=deny)

해당 파일이 없거나 파일명이 다르면 접속을 허용(onerr=succeed)

 

VSFTP 인증 절차

(1) 클라이언트가 FTP 서버에 서비스 요청 (로그인)

(2) VSFTP 서비스가 PAM에게 인증 요청 (위임)

/etc/vsftpd/vsftpd.conf 설정 중 pam_service_name=vsftpd 옵션 확인 후 PAM 설정 확인

(3) PAM 설정 파일 확인

/etc/pam.d/vsftpd 파일의 모듈 및 설정 내용 확인 (pam_listfile.so)

(4) 인증 결과를 서버에게 전달

sense=deny, onerr=succeed

(5) FTP 서버는 PAM의 인증 결과로 VSFTP 서비스 승인/거부 진행

 

실습

userlist 파일 비활성화

 

데몬 재시작

 

ftpusers 파일에 ftp-user3 추가

 

접속 시도 -> 실패

 

/var/log/secure 파일을 tail로 확인

Oct 16 14:06:31 Server-A vsftpd[2011]: pam_listfile(vsftpd:auth): Refused user ftp-user3 for service vsftpd

-> PAM에 의하여 인증이 실패하여 서비스 접근이 거부되었다는 메시지 출력

 

auth       required     pam_listfile.so item=user sense=allow file=/etc/vsftpd/ftpusers onerr=succeed

ftpusers 파일에 등록되어 있는 사용자의 접근을 허용하기 위하여

PAM 설정 파일에서 sense=deny를 sense=allow로 수정

 

다시 접속 시도 -> 성공