1. RADIUS
ㅇ 통상, ISP,기업 등에서 사용하는 대규모 원격 접속에 대한 인증용 서버를 지칭
- 리빙스턴社(루슨트에 인수)가 1990년 중반 개발한 분산 보안 시스템 (인증 프로토콜)
2. RADIUS 시스템 구성 요소
ㅇ 실제 사용자
ㅇ Radius 클라이언트 (인증 에이전트)
- 원격접속 터미널 서버, NAS, 802.1x 브리지 또는 AP 등
ㅇ Radius 서버 (인증 서버, Authentication Server)
- 인증 전용의 서버
. 인증을 위한 주요 자격정보가 저장되고 관리됨
.. 자격정보 : 사용자 식별명,비밀번호,디지털 인증서,단말 MAC 주소 등
※ 구성
- 실제 사용자 ↔ 터미널 서버 (Radius 클라이언트) ↔ 인증서버 (Radius 서버)
3. RADIUS 특징
ㅇ 비교적 단순하여 많은 다양한 사용 사례 있음
ㅇ 분산형 클라이언트/서버 기반의 동작
- 사용자 관리는 중앙집중식으로 수행
ㅇ 인증방법
- PAP, CHAP 등 다양한 방법을 지원
ㅇ RADIUS 메세지
- 속성/값 쌍(Attribute/Value Pair)라 불리는,
Type - Length - Value 형태로 인코딩되어 전달됨
ㅇ 수송용 프로토콜
- 통상 UDP에 의해 전달됨
. (인증,인가 : 포트번호 1812, 계정관리 : 포트번호 1813)
. (한편, 구형 포트 세트 : 1645 및 1646)
ㅇ RADIUS 서버는 다른 RADIUS 서버에 대해 Proxy 클라이언트로 쓰여질 수 있음
ㅇ 표준 : 인증관련 RFC 2138, 과금관련 RFC 2139
- 1996년 IETF의 RADIUS Working Group에서 최초 표준화하여 RFC 2138로 문서화함
4. 일반적인 동작설명
ㅇ 사용자는 RADIUS 클라이언트를 지원하는 서버에 접속 시도
ㅇ 서버는 PPP 프레임 등을 사용하여 ID 및 암호를 받음
ㅇ UDP/IP 를 통해 ID 및 암호를 RADIUS 서버로 암호화된 Access-Request로써 전달
ㅇ RADIUS 서버는 받아들인 User-Name Attribute(속성)과 자신이 저장하고 있는 DB 내용과
일치하는지 확인함
- 다르면, 실패 이유를 Access-Reject 메세지를 해당 서버에 알려줌
- 맞으면, Access-Accept 메세지를 해당 서버에 알려줌
5. 원격 접근시 제공되는 2가지 보안 모드
ㅇ Packet Mode : 흘러다니는 패킷에 대한 보안
ㅇ Charater Mode : 관리자가 원격관리를 위한 터미널 접속시 보안
- 例) Telnet 등
6. 패킷 구조
ㅇ 구조
- 코드 (8 바이트) : RADIUS 패킷의 종류
. 1 : Access Request, 2 : Access Reply(Accept), 3 : Access Reject,
4 : Accounting Request, 5 : Accounting Response, 11 : Access Challenge,
12 : Status Server, 13 : Status Client, 255 : (Reserved)
- 식별자 (8 바이트)
. 요청과 회신 패킷을 일치시키는데 (세션화) 사용되는, 메세지 일련번호
- 패킷의 길이 (16 바이트)
. 패킷 최소 길이는 20 바이트
- 인증자 (Authenticator) (16 바이트)
. RADIUS 서버로부터의 요청 패킷은 임의로(무작위로) 생성됨
. RADIUS 서버로의 회신 패킷은 요청 패킷을 사용한 MD5 해쉬 값
- 속성, Attributes (가변)
. 사용자 이름,패스워드 등 인증 관련 속성들
. 표현 형식 : TLV (Type - Length - Value)
. (Type)
.. 1 : User Name
.. 2 : Password
.. 79 : EAP Message
.. 80 : EAP Message Authenticator
※ [참고] ☞ AAA, 802.1X/EAP 참조