Section 1. 인증
1.1 인증이란?
인증이란 해당 사용자가 대상 서비스를 이용하는 본인인가를 검증하는 것을 뜻한다.
리눅스 환경에서는 여러 개의 인증 시스템이 실행되고 있다. 주요 인증은 다음과 같이 정리할 수 있다.
- 시스템에 로그인하여 셸을 이용하기 위한 인증
- SMTP 서버에 메일을 전송시키기 위한 인증
- POP3/IMAP4 등 메일을 사용하기 위한 인증
- 웹 애플리케이션을 이용하기 위한 인증
- 리눅스 시스템에서 실행하는 Windows 네트워크 공유 디렉터리에 접근하기 위한 인증
1.2 리눅스 인증 순서
리눅스 시스템에 로그인하는 인증은 기본적으로는 인증된 사용자가 본인만이 아는 인증 정보(사용자 이름과 비밀번호 등)를 시스템에 보내고 시스템은 자신이 가진 정보와 비교하여 사용자 본인인지 확인한다. 확인되면 사용자에게 인증되었음을 통보한다.
시스템이 사용자 정보를 검증하는 방법에는 여러가지가 있으며 UNIX 비밀번호, LDAP(Lightweight Directory Access Protocol), Kerberos, NIS, SSL, SSH 공개키 인증 등을 인증엔진으로 이용할 수 있다.
LDAP, Kerberos, NIS는 네트워크 경유로 사용자를 인증한다. 인증 서버에 인증 정보를 등록함으로써 직접 사용자 등록하지 않은 서버라도 인증 서버에서 로그인 정보를 가져올 수 있다. 로그인 등 서비스마다 이용하는 인증 모듈을 지정할 수 있는 서비스를 PAM(Pluggable Authentication Modules)이 제공한다. 단, PAM이 구동하는 로컬 시스템에서만 이용할 수 있다.