cara install wg-portal wireguard di ubuntu server
Juni 11, 2025
Disini saya pakai ubuntu Ubuntu 24.04.2 LTS
Step By Step Instalasi.
- Update server vps + instal wireguard
apt update && apt upgrade -y && apt install wireguard iptables -y
- Aktifkan ip forwarding
echo "net.ipv4.ip_forward = 1" | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
- Download file binary DISINI (v2.0.2)
- Buat sebuah folder dengan nama wg-portal atau bebas mau ngasih nama apa saja.
- Letak file binary-nya di dalam folder tersebut.
- Buat folder dengan nama config lalu buat file dengan nama config.yaml di dalam folder tersebut.
- Isi file config.yaml dengan kode berikut :
core:
admin_user: admin@google.com
admin_password: hujanderas
admin_api_token: ""
editable_keys: true
import_existing: true
create_default_peer: true
self_provisioning_allowed: false
create_default_peer_on_creation: false
re_enable_peer_after_user_enable: true
delete_peer_after_user_deleted : true
restore_state : true
web:
listening_address: :8080
external_url: http://66.39.4.69:8080
site_company_name: WireGuard Portal
site_title: WireGuard Portal
session_identifier: wgPortalSession
session_secret: very_secret
csrf_secret: super-s3cr3t-csrf
request_logging: true
expose_host_info: false
cert_file: ""
key_File: ""
advanced:
log_level: info
log_pretty: true
log_json: false
config_storage_path: ./data
expiry_check_interval: 5m
database:
debug: true
type: sqlite
dsn: data/sqlite.db
encryption_passphrase: secret-of-satanic-temple
auth:
callback_url_prefix: "https://${WG_PORTAL_DNS_HOSTNAME}/api/v0"
webauthn:
enabled: true
min_password_length: 16
Untuk listening_address isi dengan port web yang akan digunakan.
Untuk external_url isi dengan alamat web yang nantinya akan kamu akses.
Untuk yang lainnya silahkan kondisikan sendiri.
Setelah itu simpan.
- Change directory (cd) ke lokasi folder di prompt command, disini lokasi folder berada di jalur /root/wg-portal maka saya jalankan perintah :
cd /root/wg-portal
- Kemudian beri izin file binary-nya agar dapat dijalankan.
chmod +x wg-portal_linux_amd64
- Kemudian jalankan file binnary-nya
./wg-portal_linux_amd64
- Silahkan kunjungi alamat link web portal. kemudian klik tombol "LOGIN". lihat gambar berikut :
http://ip-vps:8080
- Selesai. kini kamu telah memiliki server vpn wireguard sendiri.
Biar Bisa Jalan Dibelakang Layar & Otomatis Jalan Saat Vps Reboot
Disini saya pakai PM2 untuk menjalankan-nya. Untuk mengecek apakah PM2 sudah terpasang atau tidak silahkan jalankan perintah berikut :
pm2 --version
Jika sudah terpasang akan muncul respon. lebih kurang seperti ini
Instalasi PM2
Silahkan install nodejs, jalankan perintah berikut :
apt update && apt upgrade -y && apt install build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev -y
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
source ~/.bashrc
nvm list-remote
nvm install v22.16.0
npm install pm2 -g
Cek apakah sudah terpasang, silahkan jalankan perintah berikut :
pm2 --version
Kalau sudah kita lanjut.
Menjalankan aplikasi
- Silahkan buat file bernama wg-portal_linux_amd64.sh, lalu isi dengan kode berikut :
#!/usr/bin/env bash
./wg-portal_linux_amd64
- Selanjutnya jalankan perintah berikut untuk menjalankan aplikasi-nya :
pm2 start wg-portal_linux_amd64.sh --output /dev/null --error /dev/null -- --color && pm2 save && pm2 startup && pm2 save
Perintah ini sudah saya optimasi agar lognya tidak tersimpan di disk kita, jadi gak akan nyampah.
Untuk melihat log aplikasi, silahkan jalankan perintah ini :
pm2 log wg-portal_linux_amd64 --raw
Atau bisa juga seperti ini :
pm2 log --raw
DONE. Sekarang aplikasi telah berjalan di belakang layar dan akan tetap berjalan ketika vps kita reboot.
Informasi tambahan
Saat kamu membuat interface, silahkan gunakan code Post-Up dan Post-Down pada form isian. ini berfungsi agar client yang terhubung dapat terkoneksi ke internet.
Code untuk Post-Up
iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE
Code untuk Post-Down
iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o ens3 -j MASQUERADE
Perhatikan yang saya beri tanda warna merah, itu adalah interface jaringan yang tehubung ke internet di dalam vps anda. Untuk melihatnya silahkn jalankan :
ip a
Indikator interface mana yang punya akses internet, bisanya ada ip publik/ip vps di dalam list interface tersebut. hasilnya :
Kalau gak mau ribet, tinggal jalankan perintah ini :
ip route get 1.1.1.1 | grep -oP 'dev \K\S+'
Hasilnya :
Berikut hasil gambar input form isian-nya.
Informasi tambahan lagi
Jika mau mengalihkan semua trafik client untuk melewati ip server, maka pada bagian submenu Peer Defaults, silahkan isi seperti berikut :
- Tambahkan subnet berikut pada isian input bagian Allowed IP Addresses, lihat gambar berikut :
0.0.0.0/0, ::/0
Hasilnya :
1.1.1.1,8.8.8.8
Terakhir, jangan lupa isi pada kolom input Endpoint Address dengan ip vps kamu. lihat berikut ini :
Setelah itu sumpan.
Done........ :)
Terus cara pakai vpn/tunnel wireguard ini gimana ?
next ya saya buat artikelnya.
Apakah bisa meng-online-kan pc rumahan agar bisa di akses publik?
ya bisa, nanti tak buatkan panduannya juga.
next ya saya buat artikelnya.
Apakah bisa meng-online-kan pc rumahan agar bisa di akses publik?
ya bisa, nanti tak buatkan panduannya juga.