- WireHub는 WireGuard 설정을 파일로 주고받는 대신, 호스팅된 관리 UI에서 네트워크를 만들고 링크로 공유하게 해주는 베타 서비스임
- 여러 네트워크와 디바이스를 한곳에서 관리하며, CIDR 기반 피어 IP 자동 할당과 기본 DNS 설정을 지원함
- 디바이스 라벨로 접속 규칙을 구성해 Peer, AllowedIPs, PresharedKey 같은 WireGuard 설정을 규칙 기반으로 관리함
- 초대 사용자는 Guest, Member, Manager, Admin 역할로 나뉘며, Guest는 WireHub 계정 없이도 할당된 디바이스 설정을 볼 수 있음
- Private Key 없이도 사용할 수 있고, 키를 저장할 때는 브라우저에서 WebCrypto로 암호화되어 비밀번호와 평문 키가 WireHub로 전송되지 않음
WireHub가 해결하는 문제
- WireHub는 WireGuard 네트워크 설정을 생성하고 공유하는 호스팅 관리 UI임
- 친구, 가족, 팀원에게 WireGuard 설정 파일을 이메일로 보내는 대신 WireHub 링크로 안전하게 공유할 수 있음
- 여러 네트워크와 디바이스, 라벨 기반 접근 규칙, 초대와 권한, WireGuard Private Key의 안전한 저장을 지원함
- Private Key는 브라우저에서 생성하거나 기존 키를 가져올 수 있음
- 키를 WireHub에 제공하는 경우 사용자가 정한 비밀번호로 브라우저에서 암호화되며, WireHub는 비밀번호를 받거나 저장하지 않음
- Private Key 암호화·복호화를 제외한 기능은 JavaScript 없이도 접근 가능함
네트워크와 디바이스 관리
-
Networks
- 여러 디바이스를 하나 이상의 WireGuard VPN으로 연결할 수 있음
Home네트워크는 가족 개인 디바이스용,Office네트워크는 업무 관련 디바이스용으로 나눠 쓸 수 있음10.10.0.0/24같은 네트워크 수준 CIDR을 사용해 새 피어에 고유 IP를 자동 할당함- 연결된 모든 디바이스에 적용할 기본 DNS 설정을 지정할 수 있음
-
Devices
- 노트북, 휴대폰, 서버 등 WireGuard를 지원하는 디바이스를 추가할 수 있음
- 각 디바이스는 네트워크 CIDR에서
10.10.0.5/32같은 IP 주소를 자동으로 받음 192.168.65.5/32같은 추가 주소도 지정 가능함pihole,media,server:app-1같은 사용자 정의 라벨로 디바이스를 그룹화하고 필터링할 수 있음
라벨 기반 연결 규칙
- 디바이스 간 피어링은 단방향 라벨 기반 연결 규칙으로 구성됨
- 연결이 성립하려면 두 디바이스가 모두 자신에게 적용된 라벨로 연결을 지정해야 함
- 각 연결의 AllowedIPs는 키워드로 지정할 수 있음
peers: 두 피어의 IP만 사용network: 네트워크 CIDR 사용all: 모든 트래픽0.0.0.0/24사용
- 직접 피어 투 피어 연결에서는 PresharedKey가 기본적으로 자동 생성되어 피어 간 공유됨
- 패스스루 연결을 지정하면 Hub/Site 토폴로지, Web Proxy, VPN exit node 구성을 표현할 수 있음
멤버 초대와 권한
- WireHub는 네트워크에서 누가 무엇을 할 수 있는지 정하는 역할 기반 접근 제어를 제공함
-
Guests
- WireGuard 설정 파일을 안전하게 공유하려는 경우에 쓰임
- 자신에게 할당된 디바이스만 볼 수 있음
- WireHub 계정이 필요 없음
-
Members
- 사용자가 자신의 디바이스를 직접 관리해야 할 때 쓰임
- 자신의 디바이스를 추가하고 다른 네트워크 디바이스를 볼 수 있음
- 자신이 소유하거나 자신에게 할당된 디바이스만 수정 가능함
-
Managers & Admins
- 네트워크 관리를 다른 사람에게 맡길 때 쓰임
- 새 멤버 초대, 멤버십 취소, 연결 생성·수정, 네트워크 설정 변경을 할 수 있음
- 다른 멤버의 관점에서 네트워크를 미리 보며 설정 상태를 확인할 수 있음
Interface와 키 보관
- Interfaces는 WireGuard 설정 파일의
[Interface]섹션을 나타내며, Private/Public Key를 포함함 - Interface는 생성한 사용자에게 비공개로 간주됨
- Interface가 네트워크 Manager나 디바이스 소유자에 의해 Device에 할당되면, Public Key와 Endpoint가 있는 경우 해당 디바이스의 피어와 공유됨
- Private Key를 WireHub에 공유하면 클라이언트 측 암호화가 적용됨
- WebCrypto로 브라우저에서 암호화됨
- 사용자가 정한 비밀번호로 보호됨
- 비밀번호는 브라우저를 떠나지 않음
설정 미리보기
- WireHub는 WireGuard 설정 미리보기 UI를 제공함
Home Network의Hub디바이스가 사용 가능한 모든 디바이스에 연결되는 구성을 볼 수 있음- 미리보기에는
[Interface]와 여러[Peer]항목이 포함됨home/hub는10.10.10.1주소를 가짐home/iphone,home/home-server,home/ipad,home/macbook피어가 표시됨- 각 피어에는 PublicKey, PresharedKey, AllowedIPs가 표시됨
home/home-server는10.10.10.2/32와192.168.68.24/32AllowedIPs를 함께 가짐
- UI에서 복사, QR, 다운로드 동작을 사용할 수 있음
WireHub의 범위와 계정 요구
- WireHub는 VPN 서비스가 아님
- WireGuard 설정을 생성하고 배포하는 도구임
- 생성한 설정은 공식 WireGuard 앱과 명령줄 도구로 가져와 활성화할 수 있음
- 대상 사용자는 자체 WireGuard 네트워크를 운영하고 관리하는 사람임
- 계정은 네트워크 설정, 디바이스, Private/Public Key를 저장하기 위해 필요함
- 기존 WireHub 네트워크 초대를 수락할 때도 경우에 따라 계정이 필요함
- WireHub는 Private Key 없이도 사용할 수 있음
- 유효한 WireGuard 설정을 생성하려면 Public Key와 Endpoint만 필요함
- Private Key를 제공하면 브라우저에서 사용자가 정한 비밀번호로 암호화됨
- 비밀번호와 평문 Private Key는 WireHub로 전송되지 않고, 암호화된 문자열만 전송됨
- Private Key 암호화·복호화에는 표준 WebCrypto API를 사용하고, 브라우저에서 Private Key를 생성할 때 Jason의
wireguard.js를 사용함