802.1X/EAP와 Enterprise¶
규격 · 개정판
IEEE 802.1X-2020 (포트 기반 접근 제어, EAPOL) · RFC 3748 (EAP), RFC 5216 / 9190 (EAP-TLS, TLS 1.3), RFC 3579 (RADIUS EAP) · 802.11-2024 Clause 12 (802.1X AKM, PMK 유도) · Wi-Fi Alliance WPA3-Enterprise, Passpoint
한눈에 보기
회사나 학교 Wi-Fi는 모두가 같은 암호를 쓰지 않고 **사람마다 계정(또는 인증서)**으로 로그인합니다. 이를 위해 세 역할이 있습니다.
| 역할 | 802.1X 이름 | 실제 |
|---|---|---|
| 접속하려는 기기 | Supplicant | 노트북, 휴대폰 (wpa_supplicant, OS) |
| 문지기 | Authenticator | AP 또는 무선 컨트롤러 |
| 판정하는 곳 | Authentication Server | RADIUS 서버 (FreeRADIUS, NPS, ISE 등) |
AP는 내용을 모른 채 EAP 메시지를 RADIUS 서버로 중계만 합니다. 서버가 "합격"하면 그 사용자 전용 키(MSK)를 AP에 넘기고, AP와 단말은 그 키로 4-Way Handshake를 합니다. 사용자마다 키가 달라 동료가 내 트래픽을 복호할 수 없습니다.
인증 흐름¶
sequenceDiagram
participant S as STA (Supplicant)
participant A as AP (Authenticator)
participant R as RADIUS 서버
S->>A: Association (AKM = 802.1X)
A->>S: EAP-Request/Identity
S->>A: EAP-Response/Identity (익명 ID 권장)
A->>R: RADIUS Access-Request (EAP 캡슐화)
Note over S,R: EAP 방식별 교환 (예: TLS 핸드셰이크) — AP는 중계만
R->>A: Access-Accept + MSK (MS-MPPE 키 속성)
A->>S: EAP-Success
Note over S,A: PMK = MSK 앞 256비트 → 4-Way Handshake
EAP 방식 비교¶
| 방식 | 사용자 자격 증명 | 서버 인증 | 특징 |
|---|---|---|---|
| EAP-TLS | 클라이언트 인증서 | 서버 인증서 | 가장 안전. 인증서 배포(MDM) 필요 |
| PEAP-MSCHAPv2 | 아이디·암호 | 서버 인증서 | 가장 흔함. 서버 인증서 검증을 끄면 가짜 AP에 암호 해시 노출 |
| EAP-TTLS (PAP 등) | 아이디·암호 | 서버 인증서 | 다양한 내부 인증 |
| EAP-SIM / AKA / AKA' | SIM 카드 | 망 | 통신사 Wi-Fi 오프로드, Passpoint |
| EAP-FAST, TEAP | 다양 | PAC / 인증서 | 터널 방식 |
WPA3-Enterprise¶
| 모드 | 요구 사항 |
|---|---|
| WPA3-Enterprise (기본) | PMF 필수, 서버 인증서 검증 강화(단말이 검증을 끌 수 없게 하는 방향), AKM 1/5 등 |
| WPA3-Enterprise only | PMF 필수(MFPR = 1), 레거시 비 PMF 단말 차단 |
| 192-bit 모드 | EAP-TLS만, ECDHE·ECDSA P-384 또는 RSA ≥ 3072비트, GCMP-256, HMAC-SHA-384, BIP-GMAC-256, AKM 12 |
로밍과 Enterprise¶
EAP 전체 교환은 RADIUS 왕복이 여러 번이라 수백 ms 이상 걸립니다. 그래서 Enterprise 망은 로밍 가속이 필수입니다.
| 방법 | 원리 |
|---|---|
| PMK 캐싱 | 전에 붙었던 AP로 돌아가면 PMKID로 EAP 생략 |
| OKC (Opportunistic Key Caching) | 컨트롤러가 PMK를 다른 AP에도 공유 (비표준이지만 널리 쓰임) |
| 802.11r FT | PMK-R0/R1 키 계층으로 4-Way Handshake까지 생략 (로밍) |
| FILS | ERP(EAP 재인증)로 빠른 재연결 |
전문가 노트 — 실무 보안 포인트
서버 인증서 검증. PEAP/TTLS에서 단말이 서버 인증서를 검증하지 않으면, 같은 SSID의 가짜 AP + 가짜 RADIUS가 MSCHAPv2 응답을 받아 오프라인으로 암호를 깰 수 있습니다. 단말 프로필에 CA 인증서와 서버 도메인 이름을 반드시 지정해야 합니다. 최근 OS는 이 설정 없이 Enterprise 망에 붙는 것을 제한하는 추세입니다.
익명 외부 ID. EAP-Response/Identity는 TLS 터널 전 평문입니다. anonymous@realm 같은 외부 ID를 쓰고 실제 ID는 터널 안에서 보내야 사용자 신원이 노출되지 않습니다. EAP-TLS 1.3(RFC 9190)은 클라이언트 인증서도 암호화됩니다.
RADIUS 보안. RADIUS는 공유 비밀 + MD5 기반이라 2024년 Blast-RADIUS 같은 취약점이 공개되었습니다. Message-Authenticator 속성 필수화와 RadSec(RADIUS over TLS) 전환이 권장됩니다.
MSK와 PMK. EAP 방식이 MSK(최소 512비트)를 만들고, 802.11은 그 앞 256비트를 PMK로 씁니다(SHA-384 AKM은 384비트). FT에서는 MSK의 뒷부분(XXKey)으로 PMK-R0를 만듭니다.