WireGuard
1. Instalasi
Installasi sesuai sistem operasi masing-masing.
2. Konfigurasi
Buat private dan public key.
wg genkey | tee privatekey | wg pubkey > publickey
Server
Configurasi file berada di /etc/wireguard/wg0.conf
[Interface]
Address = 10.20.30.40/24
SaveConfig = true
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE;
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE;
ListenPort = 12345
PrivateKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=
Peer 1 (Dalam NAT)
- Konfigurasi ini akan membuat semua paket melewati server Full VPN.
[Interface]
PrivateKey = xxxxxxxxxxxxxxxxxxxxxxxxxx=
Address = 10.20.30.50/24
[Peer]
PublicKey = xxxxxxxxxxSERVERPUBLIKKEYxxxxxxxx=
Endpoint = SERVER-IP:12345
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 20
- Tambahkan peer di server
wg set wg0 peer xxxxPEERPUBLICKEYxxxxx= allowed-ips 10.20.30.50/32
wg-quick save wg0
Peer 2 (Dalam NAT)
- Konfigurasi dibawah hanya akan melewatkan paket antar peer dalam jaringan wireguard (Server dan Peer 1)
[Interface]
PrivateKey = xxxxxxxxxxxxxxxxxxxxxxxxxx=
Address = 10.20.30.60/24
[Peer]
PublicKey = xxxxxxxxxxSERVERPUBLIKKEYxxxxxxxx=
Endpoint = SERVER-IP:12345
AllowedIPs = 10.20.30.60/32, 10.20.30.0/24
PersistentKeepalive = 20
- Tambahkan peer di server
wg set wg0 peer xxxxPEER2PUBLICKEYxxxxx= allowed-ips 10.20.30.60/32
wg-quick save wg0
Hapus Peer di server
Menghapus konfig peer dengan perintah remove
wg set wg0 peer xxxxPEERPUBKEYxxxxx= remove
Memuat semua trafik via wireguard
Tambahkan IP 0.0.0.0/0 pada AllowedIPs di client.
3. Penggunaan
Seteleh konfigurasi langsung dapat digunakan dengan bantuan tool wg-quick
.
sudo wg-quick up wg0
Dan untuk mematikan WireGuard dengan perintah
sudo wg-quick down wg0
Untuk melihat status
sudo wg
Systemd
sudo systemctl enable wg-quick@wg0
4. NetworkManager
Untuk NetworkManager bisa juga menggunakan perintah berikut:
sudo nmcli con import type wireguard file /etc/wireguard/wg0.conf
sudo nmcli -p device show wg0
Untuk menghapus :
nmcli connection delete wg0