2024. 12. 17. 03:17ㆍETC/홈서버
0. 네트워크 요구사항
- 각 인스턴스는 사설 IP를 부여받는다.
- 하나의 인스턴스가 해킹되어도 다른 인스턴스에 접근할 수 없도록 설정한다.
- 각 인스턴스는 외부에서 안전하게 접근할 수 있어야 한다.
- 하이퍼바이저 자체는 내부망을 통해서만 접근할 수 있도록 설정한다.
- 브루트포스 공격을 막을 수 있어야 한다.
- SSH는 key 사용과 OTP 인증을 강제한다. 혹은 그에 준하는 보안 조치가 필요하다.
- 홈서버의 공인 IP를 노출하지 않는다.
- IDS/IPS 활성화.
- DDNS 지원.
1. 네트워크 장비
가. 일반적인 네트워크 장치 배치 순서
- ISP → 모뎀
- ISP로부터 인터넷 신호를 받아 모뎀에 연결합니다.
- 모뎀 → 라우터
- 모뎀의 LAN 포트에서 라우터의 WAN 포트로 연결합니다.
- pfSense나 OPNsense가 설치된 서버가 있다면, 이 서버를 라우터로 활용할 수 있습니다.
- 라우터 → 스위치
- 라우터의 LAN 포트 중 하나를 스위치의 포트에 연결하여 네트워크 장치들을 유선으로 연결할 수 있는 허브 역할을 합니다.
- 스위치 → 네트워크 장치들
- 스위치에서 서버, PC, NAS, 프린터 등 네트워크 장치로 연결합니다.
스위치와 라우터가 하나의 랜선으로 연결되어 있더라도, 스위치에 연결된 모든 장치는 라우터의 DHCP 서버로부터 개별적인 사설 IP 주소를 할당받는다.
스위치는 그저 데이터를 전달하는 역할만 하며, IP 주소 할당은 라우터가 관리한다.
나. 홈서버 네트워크 구조도
아직 스위치와 AP은 필요가 없다.
라우터와 AP 역할을 가정용 공유기가 담당한다.
2. VLANs
VLAN (Virtual LAN)은 물리적 네트워크를 논리적으로 분할하여 별도의 브로드캐스트 도메인을 만드는 기술이다.
보안과 네트워크 성능 향상에 도움이 된다.
VLAN 구성을 위해 서브네팅이 반드시 필수적인 것은 아니지만, 효율적인 네트워크 관리와 세그멘테이션을 위해 매우 권장된다.
VLAN 장점 | 설명 |
네트워크 분리 | 서브네팅을 통해 VLAN 간 논리적 분리를 더욱 명확하게 할 수 있다 |
IP 주소 관리 | 각 VLAN에 적절한 크기의 IP 주소 범위를 할당하여 주소 관리를 효율화할 수 있다 |
성능 최적화 | 브로드캐스트 도메인을 줄여 네트워크 성능을 향상시킬 수 있다 |
보안 강화 | 서브넷 간 통신을 제어하여 보안을 강화할 수 있다 |
VLAN을 구성하려는 가장 큰 이유는 보안 때문이었다.
하나의 인스턴스가 해킹되어도 다른 인스턴스에 접근할 수 없도록 네트워크를 분리하고자 했다.
각 인스턴스가 속한 네트워크 영역을 물리적으로 격리하는 것처럼 동작하는 VLAN이 적합해 보였다.
3. Proxmox Network
1차적으로 Proxmox에서 제공하는 방법으로 VLAN을 구성해 보려 시도했다.
결과적으로 실패했다.
아마 VLAN을 지원하지 않는 가정용 공유기 사용 중이기 때문인거 같다.
하지만 그 과정에서 학습한 개념과 기술들은 쓸모가 있어 정리해보았다.
가. VLAN
Proxmox에서 사용되는 주요 네트워킹 개념이다. 참고.
개념 | 설명 |
VLAN | 물리적 네트워크를 논리적으로 분할하여 별도의 브로드캐스트 도메인을 만드는 기술. 보안과 네트워크 성능 향상에 도움됨 |
Bridge | 여러 네트워크 세그먼트를 연결하는 가상의 네트워크 스위치. VM들이 호스트의 물리적 네트워크에 접근 가능하게 함 |
Bond | 여러 물리적 네트워크 인터페이스를 하나의 논리적 인터페이스로 결합하는 기술. 대역폭 증가와 네트워크 이중화 제공 |
Zone | SDN에서 사용되는 개념으로, 네트워크 정책과 설정을 그룹화하는 논리적 컨테이너. 여러 노드에 걸쳐 일관된 네트워크 구성 적용 가능 |
VNet | SDN에서 사용되는 가상 네트워크로, 물리적 네트워크 인프라와 독립적으로 구성할 수 있는 소프트웨어 정의 네트워크 |
나. SDN
VLAN이 정상적으로 생성되지 않아서 다른 방법을 시도해 보았다.
내부망 네트워크를 나누고 각 네트워크 간 통신을 차단하는 데에는 주로 VLAN과 SDN 두 가지 방법이 사용된다.
Proxmox SDN (Software-Defined Networking)은 비교적 최근에 추가된 Proxmox VE에서 제공하는 고급 네트워킹 기능이다.
구분 | 특징 | 작동 방식 | 통신 제어 |
VLAN | 전통적인 네트워크 분할 방식 | 스위치 레벨에서 물리적 네트워크를 여러 가상 네트워크로 분리 | 라우터나 L3 스위치를 통해 VLAN 간 통신 제어 |
SDN | 현대적인 소프트웨어 기반 접근 방식 | Zone, VNet 등을 통해 유연한 네트워크 구성 가능 | 정책 기반 라우팅과 세밀한 접근 제어로 통신 관리 |
복잡한 네트워크 구성을 소프트웨어 수준에서 단순화하고 효율적으로 관리할 수 있다.
SDN도 정상적으로 동작하지 않았다…
고급 기능이 없는 KT 공유기를 사용하니깐 Proxmox에서 제공하는 VLAN, SDN 기능을 사용할 수 없는 거 같다.
4. OPNsense
가정용 공유기로는 한계가 있다는 사실을 알게 되었다.
실물 라우터를 구매하기에 앞서 OPNsense VM으로 대신할 수 있는지 시도해 보았다.
OPNsense VM을 만들어서 라우터로 사용해 보았다.
가. 설치
OPNsense는 Router, 네트워크, 보안과 관련된 보다 고급 기능을 제공한다.
pass-through를 위해서 usb-lan도 구입했다.
(덤으로 32G 램도 추가했다.)
나. 절망
3주간 Youtube, google에 존재하는 거의 모든 자료를 찾아가면서 시도했지만 실패했다.
억지로 VLAN을 구성하고 DHCP로 IP를 부여했지만 NAT인지 firewall 문제인지 인터넷 연결이 안 되었다.
tag를 붙이면 VM이 IP를 부여받지 못하는 문제. 따로 gateway를 추가해서 해결했지만 힘들었다.
ping
, nslookup
은 정상 작동하지만, curl
, apt
는 비정상적으로 동작하는 상황.
어떻게 해도 인터넷 연결이 안 돼서 포기했다.
돈과 공간을 아끼기 위해서 온몸 비틀기를 시도했지만 시간과 건강이 너무 많이 소모되었다.
이때 당시 7+6 총 13주 동안 프로젝트를 막 끝낸 직후라 컨디션이 좋지 못했다.
5. 결론
- 1차 삽질 : Proxmox의 VLAN 활용 → 일반 가정용 공유기로는 불가
- 2차 삽질 : Proxmox의 SDN 시도 → 일반 가정용 공유기로는 불가
- 3차 삽질 : OPNsense를 라우터로 사용 → 수많은 버그가 발생. 불가.
물론 조금 포기해서 VLAN 없이 Proxmox에서 제공하는 방화벽으로 VM 간의 통신을 제한할 수도 있다.
하지만 지기 싫어서?? VLAN을 꼭 구성하자 마음먹었다.
결국 돈으로 해결하기로 했다. (진건가?)
라우터를 구매하기로 결정한 것이다.
'ETC > 홈서버' 카테고리의 다른 글
[홈서버] DDNS (0) | 2024.12.17 |
---|---|
[홈서버] 네트워크 2 - 희망편 (1) | 2024.12.17 |
[홈서버] 보안 (0) | 2024.12.15 |
[홈서버] 하이퍼바이저 (1) | 2024.12.10 |
[홈서버] 하드웨어 (1) | 2024.12.10 |