
GNS3 홈 랩으로, Cisco ASAv 방화벽, L3 코어, DMZ, Active Directory 도메인으로 구성된 분할 네트워크를 문서화하여 네트워킹, 시스템 관리, 공격적 보안을 연습할 수 있습니다.

HomeLab은 단일 노트북(OMEN 16, i7-14650HX, 32 GB RAM, RTX 4060 8 GB)에서 네트워킹, 시스템 관리, 공격적 보안을 하나의 환경에서 실습하기 위해 구축한 GNS3 랩입니다. 방화벽(Cisco ASAv)이 있는 경계, DMZ(Ubuntu Server), 라우팅된 코어(SW-L3 + 두 개의 액세스 스위치), 그리고 Windows Server 2025에서 실행되는 Active Directory 도메인 kooler.local을 모델링합니다. 공격자 플랫폼(Kali, Exegol)은 인터넷으로 향하는 NAT 게이트웨이와 함께 신뢰할 수 없는 외부 세그먼트에 위치합니다. 자산 수, 호스트 유형, 구성된 서비스는 PC에 과부하를 주지 않으면서 전체 환경을 동시에 실행하고 VM에 적절한 리소스를 할당할 수 있도록 제 호스트 사양을 기반으로 합니다.
참고: 이는 시작하기 위한 기준 설정이므로 필요에 따라 사용자 정의하십시오. 서버 하드닝, SIEM, EDR, C2 서버, 추가 테스트를 위한 LAN 피벗팅과 같은 도구와 개념은 훈련하려는 목표에 따라 직접 구현하고 수행해야 합니다. 사용성을 위해 전체 아키텍처만 시간이 지남에 따라 문서화되며 최종적으로 CHANGELOG.md에 추적됩니다. 또한 방화벽이 실제로 라이선스가 적용되지 않으므로(평가 모드) 관련 대역폭이 제한되어 네트워크 성능에 크게 영향을 미칩니다(외부 소스 → DMZ, 내부 → 인터넷). 따라서 시스템 업데이트나 대용량 소프트웨어 다운로드와 같이 대역폭이 많이 필요한 트래픽에는 VM에 추가 네트워크 어댑터(VMware NAT)를 임시로 사용합니다. 테스트하고 무언가를 망가뜨릴 때는 구성 요소의 스냅샷을 찍으십시오. 즐기고 성장하십시오!
체인: Kali/Exegol + NAT (Switch-X) → Router → ASAv Firewall (DMZ 레그 포함) → SW-L3 → L2-SW-1 / L2-SW-2 (VLAN).
| 세그먼트 | 서브넷 | 비고 |
|---|---|---|
| 외부 / 비신뢰 | 192.168.160.0/24 | Switch-X: Kali/Exegol, NAT 클라우드; Router는 .100 |
| Router ↔ FW 외부 | 10.10.3.0/29 | Router .1, ASA outside .2, DMZ NAT .3 |
| FW ↔ DMZ | 10.10.2.0/30 | ASA dmz .2, Ubuntu .1 |
| FW ↔ SW-L3 (내부) | 10.10.1.0/30 | ASA inside .2, SW-L3 .1 |
| VLAN 30 (VPCS) | 192.168.30.0/24 | PC-C, PC-D |
| VLAN 40 (워크스테이션) | 192.168.40.0/24 | L2-SW-2 뒤 — Windows 10, PC-B |
| VLAN 50 (서버) | 192.168.50.0/24 | L2-SW-1 뒤 — Windows Server 2025 (DC01), PC-A |
| VLAN 100 (관리) | 192.168.100.0/24 | SW-L3에 SVI 존재; 트렁크됨, 아직 ASA 객체 그룹에 없음 |
트렁크 링크 SW-L3 ↔ L2-SW-1/L2-SW-2는 VLAN 30, 40, 50, 100을 전달합니다(네이티브 VLAN 999, dot1q).
| 장치 | 역할 | 플랫폼 | 주요 인터페이스 |
|---|---|---|---|
| Router | 에지 라우터, NAT 측 게이트웨이 | Cisco IOSv 15.9 | Gi0/0 10.10.3.1/29 (FW 방향); Gi0/1 192.168.160.100/24 (Switch-X 방향) |
| FW | 경계 방화벽, DMZ | Cisco ASAv 9.22(1)1 | outside 10.10.3.2/29; dmz 10.10.2.2/30; inside 10.10.1.2/30 |
| SW-L3 | 코어 L3 스위치, VLAN 간 라우팅 | Cisco IOSv L2 15.2 | Gi0/0 10.10.1.1/30 (FW 방향); Gi0/1-0/2 L2-SW-1/2 방향 트렁크; VLAN 30/40/50/100용 SVI; VTP 서버 모드 |
| L2-SW-1 | 액세스 스위치 | Cisco IOSv L2 15.2 | VLAN 50 액세스 포트 (WinServer2025, PC-A); VTP 클라이언트 모드 |
| L2-SW-2 | 액세스 스위치 | Cisco IOSv L2 15.2 | VLAN 40 액세스 포트 (Windows 10, PC-B); VLAN 30 (PC-D); VTP 클라이언트 모드 |
ASAv는 Smart Licensing Using Policy에 따라 라이선스가 부여되며, 평가 모드에서 실행되고 기능 티어 standard와 처리량 수준 1G가 로컬에서 선언됩니다(CSSM 등록 없음).
| 호스트 / 리소스 | OS / 빌드 | 호스트명 | IP / VLAN | 서비스 |
|---|---|---|---|---|
| Kali (1 CPU, 8 코어, 4/80GB) | Kali Linux 2026.2 (VMware amd64) | Kali | 192.168.160.130 (외부 세그먼트) | 공격자 플랫폼 |
| Ubuntu (1 CPU, 2 코어, 3/60GB) | Ubuntu Desktop 26.04 | ko0ler-VMware-Virtual-Platform | 10.10.2.1 (DMZ) | DVWA, bWAPP, httpbin, FTP, Samba, MySQL |
| WindowsServer 2025 (1 CPU, 4 코어, 4/60GB) | Windows Server 2025 | DC01 | 192.168.50.10 (VLAN 50) | ADCS, ADDS, DHCP, DNS, MSSQL — kooler.local의 도메인 컨트롤러 |
| Windows 10 (1 CPU, 2 코어, 4/60GB) | Windows 10 | PC1 | DHCP (VLAN 40) | 도메인 가입 워크스테이션 |
| PC-A | VPCS | — | VLAN 50 (.15) | — |
| PC-B | VPCS | — | VLAN 40 (.15) | — |
| PC-C | VPCS | — | VLAN 30 (.1) | — |
| PC-D | VPCS | — | VLAN 30 (.2) | — |
VPCS는 주로 연결성 테스트에 사용됩니다.
도메인 컨트롤러: DC01 (Windows Server 2025, 192.168.50.10)로, ADCS, ADDS, DHCP, DNS, MSSQL을 동시에 실행합니다 — 공격 표면 실습을 위해 의도적으로 과다 프로비저닝된 DC입니다 (서비스 계정 노출, ADCS 템플릿 오구성, DC 상의 SQL 등).
| 계정 | 범위 | 비고 |
|---|---|---|
| Administrator | 로컬 (DC01) | 기본 제공 로컬 관리자 |
| Ko0ler | 도메인 사용자 | — |
| user1 | 도메인 사용자 | — |
Windows 10 (PC1)은 kooler.local에 가입되어 있으며, 해당 머신에는 도메인 계정과 별개로 로컬 로그인 ko0ler도 존재합니다.
| 존 쌍 | 방향 | 허용 |
|---|---|---|
| outside → DMZ | 인바운드 | Ubuntu(10.10.2.1)로의 HTTP(80), HTTPS(443), 8080, 8070, 8060; ICMP |
| DMZ → outside | 아웃바운드 | HTTP, HTTPS, DNS(53) |
| DMZ → inside | — | 거부 |
| inside → DMZ | 아웃바운드 | Ubuntu로의 전체 IP |
| inside → outside | 아웃바운드 | 전체 IP, ASA outside 인터페이스를 통한 PAT |
NAT: inside 서브넷(192.168.30/40/50.0/24, 동적, ASA outside 경유)에 대한 PAT 및 DMZ 호스트(10.10.2.1 → 10.10.3.3, DMZ_MAPPED)에 대한 정적 NAT. 참고: VLAN 30/40/50 간의 인터-VLAN 트래픽은 ASA를 거치지 않습니다 — SW-L3가 로컬에서 라우팅하므로, 방화벽은 north-south(DMZ/outside) 트래픽만 확인합니다.
CHANGELOG.md에서 추적됩니다.
랩 자격 증명은 의도적으로 이 저장소에 커밋되지 않습니다.
| 범위 | 계정 | 호스트명 |
|---|---|---|
| 로컬 | kali | ko0ler-VMware-Virtual-Platform (Kali) |
| 로컬 | ko0ler | Ubuntu |
| 로컬 | ko0ler | PC1 (Windows 10) |
| 로컬 | Administrator | DC01 (WindowsServer 2025) |
| 도메인 (kooler.local) | Ko0ler | — |
| 도메인 (kooler.local) | user1 | — |