226. NAC (Network Access Control) 및 IEEE 802.1X

⚠️ 이 문서는 외부 해커의 침입을 막는 방화벽만 믿고 있다가, 사내 직원이 몰래 가져온 개인 노트북이나 웜(Worm)에 감염된 USB를 회사 회의실 랜선에 꽂는 순간 사내망 전체가 초토화되는 사고를 막기 위해, 네트워크 스위치 포트에 꽂히는 모든 단말기(PC, IP폰, 프린터)의 신분과 보안 상태를 엑스레이 검사하듯 철저히 확인한 후에야 인터넷(IP)을 허락하는 '네트워크 접근 제어(NAC)' 기술을 다룹니다.

핵심 인사이트 (3줄 요약)

  1. 본질: "네가 누군지, 그리고 네 PC에 백신이 깔려있는지 확인되기 전까지는 단 한 방울의 인터넷도 쓸 수 없다!"라는 제로 트러스트(Zero Trust)의 가장 물리적인 바닥 계층(L2 스위치 포트) 통제 시스템이다.
  2. 가치: 인가받지 않은 외부인(공유기, 개인 폰)의 사내망 불법 접속을 차단하고, 백신(Anti-virus) 업데이트를 안 한 게으른 직원의 PC를 논리적인 격리망(격리 VLAN)으로 유배 보내 사내 전염을 원천 봉쇄한다.
  3. 기술 체계: PC(Supplicant) $\leftrightarrow$ 스위치(Authenticator) $\leftrightarrow$ 인증 서버(RADIUS/Auth Server)로 이어지는 IEEE 802.1X 국제 표준 프로토콜이 뼈대를 이루며, 최근에는 에이전트(Agent) 프로그램 없이 기계의 고유 MAC 주소를 수집해 통제하는 방식과 혼합하여 쓰인다.

Ⅰ. 스위치의 맹점: 꽂으면 열리는 자동문의 비극

회사 건물 로비는 신분증을 찍어야 들어가는데, 회의실 랜선은 아무나 꽂을 수 있었다.

  1. 내부망 무한 신뢰의 위험성:
    • 과거 기업 네트워크는 "우리 회사 벽 안에 꽂힌 랜선은 100% 안전한 아군이다"라고 가정했다.
    • 직원이 집에서 랜섬웨어에 감염된 개인 노트북(BYOD)을 가져와 회사 스위치에 딱 꽂는 순간, 스위치는 IP를 할당해 주고 사내망의 모든 문을 활짝 열어주어 데이터센터가 통째로 암호화되는 비극이 발생했다.
  2. NAC (Network Access Control)의 도입:
    • 이제 랜선을 꽂는다고 스위치가 IP를 주지 않는다. 스위치의 구멍(Port)은 자물쇠로 굳게 잠겨있다.
    • 단말기는 자신의 ID/PW나 회사 인증서(무선 랜의 경우)를 제출해야만 스위치가 이를 검사하고 비로소 랜선의 차단기(Port)를 논리적으로 열어준다.

📢 섹션 요약 비유: 과거의 사내망은 지하철역의 공용 자판기 전기 콘센트와 같았습니다. 누구나 플러그(랜선)만 꽂으면 전기(네트워크)를 공짜로 도둑질할 수 있었습니다. NAC가 도입된 사내망은 최고급 호텔 헬스장 락커룸과 같습니다. 회원 카드(인증)를 태그하기 전까지는 문이 열리지도, 샤워기에서 물(IP)이 한 방울도 나오지 않는 철벽 통제 공간입니다.


Ⅱ. NAC의 영혼: IEEE 802.1X 인증 아키텍처

랜선을 타고 인증 정보를 안전하게 전달하는 국제 표준의 등장이다.

  1. 3대 핵심 구성 요소:
    • Supplicant (단말기/신청자): 인증을 요구하는 노트북이나 스마트폰. 보통 OS에 내장된 802.1X 클라이언트나 전용 에이전트 소프트웨어를 띄운다.
    • Authenticator (인증자/스위치): 단말기가 꽂히는 L2 스위치나 무선 AP. 얘네들은 똑똑하지 않아서 자기가 직접 비밀번호를 대조하지 않고 문지기 역할만 한다. "잠깐! 신분증 내놔. 본사에 물어볼게."
    • Authentication Server (인증 서버): 스위치 뒤쪽에 숨어있는 진짜 본사 서버 (RADIUS 서버, AD 서버). 직원의 ID/PW나 인증서가 맞는지 DB를 뒤져보고 "문 열어줘라(Accept)" 또는 "내쫓아라(Reject)"를 결정해 스위치에 명령을 내린다.
  2. 인증 프로토콜 EAP (Extensible Authentication Protocol):
    • 단말기와 인증 서버가 스위치를 통과해 아이디와 비밀번호를 캡슐에 싸서 안전하게 주고받는 표준 대화 문법(규격)이다. TLS를 씌운 EAP-TLS 등이 있다.

📢 섹션 요약 비유: 직원이 클럽(사내망)에 입장하려 합니다. 입구의 기도(스위치/Authenticator)가 앞을 막습니다. 직원이 신분증(Supplicant)을 내밀면, 기도는 무전기(EAP 프로토콜)를 들고 건물 안쪽의 사장님(RADIUS 인증 서버)에게 "사장님, 여기 홍길동이란 분 오셨는데 명단에 있나요?"라고 묻습니다. 사장님이 "어 VIP 맞아, 들여보내"라고 오더를 주면 기도가 벨트 차단기를 걷어내어 입장을 허락하는 구조입니다.


Ⅲ. 상태 점검 (Health Check)과 격리 (Quarantine)

단순히 직원이 맞냐가 중요한 게 아니다. 병(바이러스)에 걸렸는지가 더 중요하다.

  1. 에이전트 기반 무결성 점검 (Endpoint Posture):
    • 직원의 인증이 성공했더라도, NAC는 단말기에 깔린 에이전트(Agent) 프로그램을 통해 엑스레이 검사를 한 번 더 한다.
    • "윈도우 보안 패치 3개월 안 했네? V3 백신 업데이트 어제 날짜로 안 되어 있네?"
    • 이 검사(Policy Check)를 통과하지 못하면 불합격 판정을 내린다.
  2. VLAN 할당을 통한 격리 조치 (Quarantine):
    • 불합격한 PC는 인터넷이 뚝 끊기는 게 아니다. 스위치는 이 PC의 랜선 포트를 본망(VLAN 10)이 아닌 **'치료용 유배지 망(Quarantine VLAN 99)'**으로 강제 변경해 버린다.
    • 이 유배지 망에서는 회사 DB나 업무 시스템으로 갈 수 없다. 오직 "백신 업데이트 서버"와 "보안 패치 다운로드 사이트"만 접속할 수 있는 제한된 환경이다. 여기서 치료를 완료하고 재검사에 통과해야만 진짜 사내망으로 풀어준다.

📢 섹션 요약 비유: 공항 입국 심사대(NAC)입니다. 여권(ID) 검사를 통과한 내국인이라도, 열화상 카메라(무결성 점검 에이전트)를 찍어 온도가 39도(보안 패치 누락)가 나오면 일반 게이트(사내망)로 내보내 주지 않습니다. 강제로 공항 구석의 '음압 격리 병동(치료용 VLAN)'으로 격리해 치료제(백신 업데이트)를 맞게 한 뒤, 열이 완전히 내려 정상(건강한 PC)이 되어야만 집으로 갈 수 있게 문을 열어주는 완벽한 방역 체계입니다.