Langsung saja yuk ikut langkah langkahnya.
Prerequiresites Install Wireguard
Sebelum Anda mengikuti langkah langkah pada artikel kali ini, pastikan Anda sudah memenuhi syarat syarat berikut agar tutorial dapat di ikuti dengan mudah:
- NAT VPS dengan OS Ubuntu. versi Ubuntu yang digunakan pada artikel kali ini adalah Ubuntu 20.04
- Untuk VPS Berbasis OpenVZ: VPS harus sudah Support fitur Tun/Tap. Anda bisa melakukan cara aktivasi tun/tap pada tutorial ini
- Perangkat yang sudah support terminal ssh client.
- Aplikasi client SSH seperti Putty, Termux, Terminal, atau CMD.
Goals
Setelah Mengikuti Tutorial pada Artikel ini, Anda diharapkan berhasil:
- melakukan aktivasi fitur tun/tap pada vps melalui client area (khusus vps berbasis openvz)
- membuat virtual private network (VPN) Server dengan protokol Wireguard pada Linux Ubuntu 20.04
- melakukan koneksi VPN ke Server dengan wireguard client.
Cara Install Wireguard pada Linux Ubuntu pada NAT VPS
Login ke Client Area NAT VPS
Untuk Masuk ke NAT VPS dan melakukan Konfigurasi TUN/TAP Anda perlu login dahulu menuju Client Area untuk NAT VPS. Anda dapat gunakan panduan berikut sebagai referensi untuk cara login menuju NAT VPS Cara Membeli dan Login NAT VPS . Berikut adalah tampilan setelah berhasil melakukan koneksi NAT VPS:
Untuk Kredensial Anda Client Area anda dapat periksa Email yang masuk setelah Anda selesai melakukan Order NAT VPS. Kredensial yang dikirim Akan terlihat seperti berikut, username,password, link login client area
Aktifkan fitur TUN/TAP pada NAT VPS
Untuk Mengaktifkan fitur TUN/TAP pada NAT VPS Anda perlu masuk ke Dashboard VPS setelah memilih VPS pada Dashboard Client Area. Kemudian Klik Button Settings dan masuk ke VPS Configuration
pada Halaman VPS Configuration CheckList Checkbox Enable TUN/TAP. setelah itu Submit untuk Menyimpan Konfigurasi
Reinstall NAT VPS ke Linux Ubuntu 20.04 (Opsional)
Anda dapat juga melakukan Reinstall Linux apabila menginginkan fresh OS pada NAT VPS. Gunakan tutorial ini untuk melakukan Instalasi ulang NAT VPS. Cara Install Ulang NAT VPS ke Ubuntu.
Masuk Terminal NAT VPS melalui SSH
Anda dapat gunakan Aplikasi SSH client agar terhubung ke terminal NAT VPS. pada kasus ini kami gunakan NAT SSH dengan PORT ssh yang sudah kami rubah menjadi 22233:
ssh [email protected] -p 22233
Lalu masukkan password. Apabila Kredensial yang dimasukkan benar akan muncul sebuah welcome message pada shell terminal.
Cek IPv4 atau IPv6 yang digunakan pada NAT VPS
Pada shell ssh Terminal Anda dapat gunakan command prompt berikut untuk cek IP Address yang Anda gunakan untuk terkoneksi ke Internet, Tujuannya untuk digunakan pada Konfigurasi pada saat instalasi wireguard-install.sh
. command adalah sebagai berikut, gunakan icanhazip untuk cek IP address Anda.
curl -4 icanhazip.com # untuk ipv4 terutama NAT curl -6 icanhazip.com # untuk ipv6
hasil kurang lebih akan seperti berikut
root@test:~# curl -4 icanhazip.com 202.222.44.251 root@test:~# curl -6 icanhazip.com 2006:eeee:2146:ffaf:1234:4321:eadc:1
Update dependecy linux dan Install aplikasi yang dibutuhkan
Sebelum masuk ke sesi instalasi gunakan command berikut untuk update dependensi dan install aplikasi yang dibutuhkan.
apt update && apt install nano curl wget git -y
Instalasi Golang untuk compile wireguard-go
Langkah Pertama Instalasi golang adalah download relesases file golang. Jalankan script berikut untuk download releases file golang dengan aplikasi wget.
wget
Pastikan sudah melakukan delete FIle instalasi golang yang sebelumnya. Anda dapat gunakan command berikut untuk memastikan golang sudah terhapus sekaligus melakukan instalasi kembali
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.21.6.linux-amd64.tar.gz
Kemudian lakukan export Binary go pada /usr/local/go/bin
ke variable enviroment $PATH
export PATH=$PATH:/usr/local/go/bin
Pastikan golang sudah terpasang dengan cara cek versi go lewat command prompt go ditambah args version
go version
Compile wireguard-go dan Link compiled-binary hasil compile
Setelah selesai Instalasi GO saatnya compile wireguard-go. pada OpenVZ gunakan Wireguard-go dengan versi 2019. Berdasarkan hasil test Saya wireguard-go pada versi tersebut berjalan dengan normal pada NAT VPS. Anda dapat jalankan command berikut untuk mendownload filenya pada official git repository snapshot:
wget
Kemudian extract arsip wireguard2019 dengan aplikasi tar
tar xvf wireguard-go-0.0.20191012.tar.xz
Masuk ke folder wireguard-go 2019 kemudian ekseskusi make file untuk melakukan compile file
cd wireguard-go-0.0.20191012 && make
File dengan nama wireguard-go
akan terbuat setelah Proses compile selesai dilakukan. Copy atau move file tersebut ke root home directory
cp wireguard-go ~/
Lakukan link wireguard-go
ke /usr/local/bin
agar file bisa dijalankan pada system wide
ln ~/wireguard-go /usr/local/bin/
Instalasi & Konfigurasi Wireguard dengan wireguard-install
Saatnya melakukan Konfigurasi Wireguard. Untuk mempermudah Konfigurasi Anda dapat gunakan script auto-install wireguard-installer. Anda dapat mendownloadnya langsung melalui repository resmi di github atau copy command berikut:
curl -O
File wireguard-install.sh
selesai di Download. Karena NAT VPS kali ini berbasis OpenVZ maka Pada langkah selanjutnya Anda perlu Menghapus Virtualization Check pada script wireguard-install.sh. Gunakan Command berikut Untuk menghapus Virtualization Check
sed -i 's/^\tcheckVirt/#\tcheckVirt/' wireguard-install.sh
Ubah Permission pada file wireguard-install.sh
menjadi executable dengan command chmod
chmod +x wireguard-install.sh
Kemudian Itu lakukan Ekseskusi wireguard-install.sh
./wireguard-install
Berikut Konfigurasi Server yang dapat dilakukan
- IPv4 or IPv6 public address: # IP Address v4 NAT yang digunakan pada VPS
- Public interface: venet0 # Interface dimana IPv4 digunakan (secara default biarkan)
- WireGuard interface name: wg0 # Dapat di Biarkan default
- Server WireGuard IPv4: 10.66.66.1 # IP Address v4 Lokal untuk Gateway Server Wireguard
- Server WireGuard IPv6: fd42:42:42::1 # IP Address v6 Lokal untuk Gateway Server Wireguard
- Server WireGuard port [1-65535]: 26664 # Port Publik yang diekspos untuk terkoneksi dengan wireguard, sesuaikan dengan pilihan Anda. untuk NAT VPS Hostdata pastikan sudah melakukan domain forwading melalui Client Area
- First DNS resolver to use for the clients: 1.1.1.1
- Second DNS resolver to use for the clients (optional): 1.0.0.1
- WireGuard uses a parameter called AllowedIPs to determine what is routed over the VPN. Allowed IPs list for generated clients (leave default to route everything): 0.0.0.0/0, ::/0
Membuat user client Wireguard Server
Tunggu hingga Instalasi Wireguard Server selesai dan Muncul Halaman Interaksi baru untuk membuat User Pertama:
Client name: rotan # untuk nama klien Client WireGuard IPv4: 10.66.66.2 # ip address v4 yang digunakan client Client WireGuard IPv6: fd42:42:42::2 # ip address v6 yang digunakan user.
Sebuah QR Code ditampilkan dan Anda dapat scan qr tersebut untuk menambahkan config ke wireguard client seperti Wireguard Android.
Anda bisa gunakan Opsi lain yaitu melakukan copy config wireguard dengan nama file wg0-client-rotan.conf
atau wg0-client-NAMAUSER.conf
untuk digunakan pada wireguard client apabila fitur qr code tidak tersedia.
Konfigurasi service wg-quick agar mengggunakan wireguard-go
Setelah Konfigurasi Selesai Edit File Konfigurasi service pada wg-quick untuk mengubah pengguaan wireguard kernel menjadi wireguard-go
nano /lib/systemd/system/[email protected]
Cari line dengan text “Environment=WG_ENDPOINT_RESOLUTION_RETRIES=infinity” dan masukkan text berikut, letakkan dibawah text tadi
Environment=WG_I_PREFER_BUGGY_USERSPACE_TO_POLISHED_KMOD=1
kurang lebih seperti screenshot berikut
Save file dengan cara ctrl+x -> y -> enter untuk keluar dari nano. Kemudian lakukan stop & start Service wg-quick@wgX
systemctl stop wg-quick@wgX # sesuaikan X dengan interface wireguard yang sebelumnya systemctl start wg-quick@wgX # dipilih pada wireguard-install.sh
Cek status Service apakah sudah berjalan dengan command berikut
systemctl status wg-quick@wgX
Apabila Service tidak bisa berjalan Lakukan Aktivasi ulang TUN/TAP pada Client Area kemudian Reboot VPS
reboot
Sekali lagi cek status Service wg-quick@wgX apakah sudah berjalan normal setelah reboot selesai dilakukan
systemctl status wg-quick@wgX
Khusus Pelanggan Hostdata.id
Untuk Pelanggan Hostdata.id secara default dilimitasi untuk Koneksi UDP apabila Anda mau menyediakan Koneksi Wireguard Server melalui IPv4 NAT. Oleh karena itu Anda perlu membuka tiket ke pada panel WHMCS Hostdata, Sebelum membuka tiket Anda perlu melakukan dahulu domain forwading pada NAT VPS sesuai dengan port wireguard yang anda gunakan. Berikut merupakan Artikel untuk Penjelasan Domain Forwarding di NAT VPS.
Anda dapat gunakan format pesan berikut untuk membuka tiket:
Halo admin, Saya mau Request Open port UDP untuk penggunaan wireguard. untuk port yang mau dibuka sesuai yang tertera pada Domain forwading adalah Port XXXXX. Silakan Diverifikasi dahulu ya min. terima kasih
Kemudian Tunggu Hingga Admin memproses Request.
Harap Dipahami Bahwa Hanya produk NAT VPS EU yang bisa digunakan Untuk melakukan Hosting Wireguard Server, untuk Region lain Tidak diperbolehkan. Apabila melanggar akan ada resiko suspend Layanan.
Penutup
Begitulah Cara Install Wireguard pada Linux Ubuntu pada NAT VPS. Jika ada pertanyaan atau kesulitan, silahkan bertanya di grup Telegram @IPv6Indonesia.