Di tutorial cara menginstall VPN Wireguard di Ubuntu 20.04, akan dibahas tahap demi tahap, waktu yang dibutuhkan sampai wireguard berjalan sekitar 5 menit. Dibandingkan konfigurasi OpenVPN, instalasi wireguard jauh lebih mudah, dan membutuhkan konfigurasi minimalis. Selain karena kelebihan itu wireguard juga sangat cepat, dengan koneksi 100Mbps saya bisa menggunakan 98Mbps, bisa dibilang hampir seluruh bandwidth yang tersedia bisa saya gunakan.

Install Wireguard Server

Di Ubuntu 20.04 Focal Fossa wireguard sudah ada di repository resmi. Jadi tinggal di install dengan

apt install wireguard -y

Konfigurasi Wireguard Server

Pertama generate public dan private key di wireguard server

umask 077
wg genkey | tee privatekey | wg pubkey > publickey

file privatekey dan publickey tersebut bisa dilihat dengan cat

cat privatekey publickey
# output
GKjQA65VPGRE1kMUT0RB+V65rsUF1sCDZGkmckLxA04=
owZl6Dcw+1l8VashzSbytjGBtE//j66Am7N5WRxrqRY=

Buat konfigurasi wireguard server di /etc/wireguard/wg0.conf, yang isinya

[Interface]
# PrivateKey Server
PrivateKey = GKjQA65VPGRE1kMUT0RB+V65rsUF1sCDZGkmckLxA04=
Address = 192.168.50.1/24
ListenPort = 1940
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;
SaveConfig = true
 
[Peer]
# PublicKey Client
PublicKey = 9Yp3CwD/k+zV6tfrADq+/GIVd2fSCBL1rCX/jF3mPyk=
AllowedIPs = 192.168.50.2/32

PrivateKey : ini adalah private key wireguard server
PublicKey : ini adalah public key wireguard client
1940 : port wireguard, bisa menggunakan port berapa saja
192.168.50.x : pastikan range ini tidak digunakan di jaringan anda, bisa sudah digunakan gunakan subnet atau private IP lain, agar tidak terjadi bentrok.

Aktifkan IP Forward

Agar dari wireguard client bisa mengakses internet (tunnel) koneksinya menggunakan public IP wireguard server, kita harus mengaktifkan ip forward di kernel.

echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
sysctl -p

Install Wireguard Client

Di client sendiri kita juga perlu menginstall wireguard. Disini saya menggunakan Ubuntu 20.04 desktop, cara untuk menginstallnya sama dengan di server

sudo apt install wireguard -y

generate public dan private key dari client

umask 077
wg genkey | tee privatekey | wg pubkey > publickey

cek file yang baru dibuat

cat privatekey publickey 
# output
UIyXHYAEtRjAuNufgwAzys3mPWW9VnRQHrgYFdudOmc=
9Yp3CwD/k+zV6tfrADq+/GIVd2fSCBL1rCX/jF3mPyk=

Buat file configurasi di client /etc/wireguard/wg0c.conf

[Interface]
Address = 192.168.50.2/32
ListenPort = 1940
# private key client
PrivateKey = UIyXHYAEtRjAuNufgwAzys3mPWW9VnRQHrgYFdudOmc=
 
[Peer]
# public key server
PublicKey = owZl6Dcw+1l8VashzSbytjGBtE//j66Am7N5WRxrqRY=
AllowedIPs = 0.0.0.0/0
Endpoint = 1.2.3.4:1940

Endpoint : Public ip server wireguard
1940 : Port wireguard server

Jalankan wireguard di client

sudo wg-quick up wg0c

output perintah diatas

[#] ip link add wg0c type wireguard
[#] wg setconf wg0c /dev/fd/63
[#] ip -4 address add 192.168.50.2/32 dev wg0c
[#] ip link set mtu 1420 up dev wg0c
[#] wg set wg0c fwmark 51820
[#] ip -4 route add 0.0.0.0/0 dev wg0c table 51820
[#] ip -4 rule add not fwmark 51820 table 51820
[#] ip -4 rule add table main suppress_prefixlength 0
[#] sysctl -q net.ipv4.conf.all.src_valid_mark=1
[#] nft -f /dev/fd/63

Untuk memastikan anda bisa terhubung ke internet
1. Cek public ip anda di https://ip.jaranguda.com
2. ping ke 1.1.1.1 dan 8.8.8.8
3. ping private IP wireguard server (192.168.50.1)

Join the Conversation

2 Comments

Your email address will not be published. Required fields are marked *

  1. cara menambah client gmn gan, agar wireguard bisa d gunakan lebih dr 1 orang
    mohon pencerahanya