RADIUS
RADIUS(Remote Authentication Dial-In User Service)
액세스 서버 인증 및 계정 관리 프로토콜
원격 사용자 액세스를 인증하고 승인하는 데 사용되는 클라이언트/서버 보안 프로토콜
*NAS(Network Access Server)와 RADIUS 서버 간의 통신은 UDP를 기반으로 함
서버 가용성, 재전송 및 시간 초과와 관련된 문제는 전송 프로토콜이 아닌 RADIUS 활성화 디바이스에서 처리
[ 클라이언트/서버 프로토콜 ]
RADIUS 클라이언트는 일반적으로 NAS
→ 지정된 RADIUS 서버에 사용자 정보를 전달하고 반환되는 응답에 대한 조치를 취함
RADIUS 서버는 일반적으로 UNIX 또는 Windows NT 시스템에서 실행되는 데몬 프로세스
→ 사용자 연결 요청을 수신, 사용자를 인증한 다음 클라이언트가 사용자에게 서비스를 제공하는 데 필요한 설정 정보를 반환
→ 다른 RADIUS 서버 또는 다른 종류의 인증 서버에 대한 *프록시 클라이언트 역할을 할 수 있음
*프록시 클라이언트
RADIUS 서버가 클라이언트로부터 인증 요청을 받았을 때, 그 요청을 자체적으로 처리하지 않고 다른 RADIUS 서버나 다른 종류의 인증 서버로 전달하는 기능 = RADIUS 프록시
1. 사용자가 NAS에 대한 PPP 인증 시작
2. NAS에서 사용자 이름 및 비밀번호(PAP, Password Authentication Protocol) 또는 챌린지(CHAP, Challenge Handshake Authentication Protocol)을 묻는 프롬프트 표시
3. 사용자 응답
4. RADIUS 클라이언트는 사용자 이름 및 암호화된 비밀번호를 RADIUS 서버로 전송
5. RADIUS 서버가 Accept, Reject 또는 Challenge로 응답
6. RADIUS 클라이언트는 Accept 또는 Reject와 함께 번들로 제공되는 서비스 및 서비스 파라미터에 따라 작동
[ 인증 및 권한 부여 ]
사용자가 제공한 사용자 이름 및 원래 비밀번호와 함께 제공된 경우, RADIUS 서버는 다양한 방법으로 사용자 인증
→ PPP, PAP 또는 CHAP, UNIX 로그인 및 기타 인증 메커니즘을 지원할 수 있음
< 일반적인 사용자 로그인 구성 >
❶ NAS에서 RADIUS 서버에 대한 쿼리
Access-Request → 사용자 이름, 암호화된 비밀번호, NAS IP 주소 및 포트 포함
❷ 해당 서버의 응답
(Access-Accept 또는 Accept-Reject)
요청의 형식은 사용자가 시작하려는 세션 유형에 대한 정보도 제공
e.g., 쿼리가 문자 모드로 표시되면 Service-Type = Exec-User로 추론되지만,
요청이 PPP 패킷 모드로 표시되면 Service Type = Framed User 및 Framed Type = PPP로 추론
(추론 - RADIUS 프로토콜에서 패킷 형태에 따라 특정 서비스 유형을 자동으로 유추)
사용자 요청
① 사용자 이름과 비밀번호를 입력
인증 과정
② RADIUS 서버가 NAS에서 Access-Request 수신
③ 데이터베이스에서 사용자 이름과 비밀번호 확인
권한 부여 : RADIUS에서는 인증과 권한 부여가 함께 결합됨(접속 허가와 동시에 접속 조건도 함께 설정 )
④-1 인증에 성공할 경우, 사용자가 어떤 권한으로 네트워크를 사용할 수 있는지 정의
RADIUS 서버는 이 세션에 사용할 매개변수를 설명하는 속성-값 쌍의 목록을 포함한 Access-Accept 응답을 반환
④-2 인증에 실패할 경우,
기본 프로파일이 로드되거나 RADIUS 서버에서 즉시 Accept-Reject 메시지를 전송
Access-Reject 메시지에는 거부 사유를 나타내는 텍스트 메시지가 포함될 수 있음
일반적인 매개변수에는 서비스 유형(셸 또는 프레임), 프로토콜 유형, 사용자를 할당할 IP 주소(정적 또는 동적), 적용할 액세스 목록 또는 NAS 라우팅 테이블에 설치할 고정 경로가 포함됨. RADIUS 서버의 설정 정보는 NAS에 설치할 수 있는 항목을 정의
[ RADIUS 인증 및 권한 부여 순서 ]
Access Server → RADIUS Server
Access Server ← RADIUS Server
1 | Pacet Type-Access Request | Username, Password |
2 | Access-Accept/Access-Reject | User Service, Framed Protocol |
3 | Access Challenge (optional) | Reply Message |
RADIUS Accounting
네트워크 리소스 사용에 대한 정보를 기록하고 추적하는 기능
RADIUS Accounting 기능을 사용하면 세션 중에 사용된 리소스(시간, 패킷, 바이트 등)의 양의 나타내는 데이터를 세션 시작 및 종료 시에 전송할 수 있음
RADIUS 프로토콜의 계정 관리 기능은 RADIUS 인증 또는 권한 부여와 상관없이 사용할 수 있음
→ 계정 관리 기능은 인증(Authentication)이나 권한 부여(Authorization)와 별개로 독립적
사용자 인증이 되지 않더라도 네트워크 리소스 사용 기록을 수집할 수 있음
e.g.,
인증 및 권한 부여 없이 계정 관리 : 공용 네트워크에서는 사용자 인증 없이 접속할 수 있는 경우 존재. 이 경우에도 RADIUS 서버는 접속 시간, IP 주소, 데이터 사용량 같은 정보 기록
보안 모니터링 : 사용자가 인증을 하지 않더라도 네트워크에 연결하려는 모든 시도 기록 가능
*ISP(인터넷 서비스 공급자)는 특별한 보안 및 청구 요구 사항을 충족하기 위해 RADIUS 액세스 제어 및 Accounting Software를 사용할 수 있음
대부분의 시스코 디바이스에 대한 RADIUS의 계정 관리 포트는 1646이지만 1813일 수도 있음
클라이언트와 RADIUS 서버 간의 트랜잭션은 네트워크를 통해 전송되지 않은 공유 암호를 사용하여 인증됨
또한 안전하지 않은 네트워크를 *Snooping하는 누군가가 사용자의 비밀번호를 확인할 가능성을 제거하기 위해 사용자 비밀번호가 클라이언트와 RADIUS 서버 간에 암호화되어 전송
*ISP(Internet Service Provider, 인터넷 서비스 공급자) : 인터넷에 접속할 수 있도록 서비스를 제공하는 기업이나 기관
*NAS (Network Access Server, 네트워크 결합 스토리지) : 여러 사용자가 Wi-Fi 또는 이더넷 케이블을 통해 TCP/IP 네트워크로 파일을 저장하고 공유할 수 있는 중앙 집중식 파일 서버
*Snooping : 네트워크 상에 떠도는 중요 정보를 몰래 획득하는 행위
2025. 02. 04