Artikel ini adalah bagian dari seri WireGuard VPN. Jika Anda belum membaca artikel sebelumnya dari seri ini, Anda mungkin akan tertarik untuk membaca Cara Setup VPN Server WireGuard Sendiri atau Menginstall WireGuard-UI untuk Mengatur WireGuard Server Anda.
Pada awalnya, WireGuard dirilis untuk kernel Linux, namun sekarang WireGuard sudah tersedia untuk Windows, macOS, BSD, iOS, dan Android. Saat Anda membeli VPN WireGuard dari penyedia layanan VPN, biasanya Anda akan menerima file konfigurasi (beberapa penyedia juga memberi gambar QR Code). File konfigurasi inilah yang Anda butuhkan untuk menyetting VPN WireGuard di perangkat Anda.
Untuk Windows, MacOS, Android, dan iOS, yang perlu anda lakukan adalah mengimport file konfigurasi yang diberikan oleh penyedia layanan VPN WireGuard ke aplikasi official WireGuard. Untuk pengguna Linux yang menggunakan wg-quick
bahkan jauh lebih mudah, yaitu cukup meletakkan file konfigurasi ke folder /etc/wireguard
.
Meskipun cara mensettingnya cukup mudah, saya akan tetap menuliskan langkah-langkah untuk menginstall atau mengimport konfigurasi WireGuard disini untuk keperluan dokumentasi pribadi.
Konfigurasi WireGuard yang diberikan oleh penyedia layanan VPN atau Sistem Administrator Anda sebenarnya hanyalah sebuah text file saja, biasanya akan terlihat seperti berikut:
1[Interface]
2Address = 10.10.88.5/32
3PrivateKey = gJc2XC/D2op6Y37at6tW1Sjl8gY/O/O4Apw+MDzAZFg=
4DNS = 1.1.1.1
5MTU = 1450
6
7[Peer]
8PublicKey = dW7TUSnRylgpo+rbNr1a55Wmg1lCBgjYnluiJhDuURI=
9PresharedKey = Ps4+a+xQfwKFBx+yWHKF7grUP3rzilOCQDftZ5A3z08=
10AllowedIPs = 0.0.0.0/0
11Endpoint = xx.xx.xx0.246:51822
12PersistentKeepalive = 15
Bagian alamat IP dari
[Peer] Endpoint
diatas dihapus untuk alasan privasi dan keamanan.
iPhone / iOS
Download official WireGuard client untuk iOS dari App Store, pastikan bahwa aplikasi berasal dari "WireGuard Development Team".
Kemudian Anda dapat mengimport konfigurasi dengan menekan tombol + yang terletak di sisi layar kanan atas dari aplikasi WireGuard.
Menggunakan QR Code
- Jika penyedia layanan VPN Anda memberikan gambar QR Code untuk konfigurasi WireGuardnya, pilih “Create from QR code” kemudian scan gambar QR Code yang diberikan tersebut.
- Ketika diminta untuk memasukan name of the scanned tunnel (contoh gambar), isi saja dengan apapun yang bisa Anda ingat dengan mudah. Hindari menggunakan karakter selain
-
dan[a-z]
. Profile koneksi VPN baru yang baru saja Anda tambahkan akan muncul di aplikasi WireGuard Anda.
Menggunakan import file atau archive
- Untuk mengimport konfigurasi dari file
.conf
, Anda perlu mendownload terlebih dahulu konfigurasi tersebut ke perangkat Anda. - Setelah konfigurasi tersebut terdownload ke perangkat Anda, pilih “Create from file or archive” dan import konfigurasi WireGuard Anda.
Ingat, hindari menggunakan karakter selain
-
dan[a-z]
untuk interface “name”.
Setelah konfigurasi berhasil diimport, cukup tap tombol "switch Active" pada profile VPN ke on untuk mengkatifkan koneksi VPN [contoh gambar connected VPN WireGuard yang aktif di iOS].
Android
Download official WireGuard client untuk Android dari Play Store,pastikan bahwa aplikasi berasal dari "WireGuard Development Team".
Anda dapat mengimport konfigurasi dengan menekan tombol + yang terletak di sisi layar kanan bawah dari aplikasi WireGuard.
Menggunakan QR Code
- Jika penyedia layanan VPN Anda memberikan gambar QR Code untuk konfigurasi WireGuardnya, pilih “Scan from QR code” kemudian scan gambar QR Code yang diberikan tersebut.
- Ketika diminta untuk memasukan Tunnel Name (contoh gambar), isi saja dengan apapun yang bisa Anda ingat dengan mudah. Hindari menggunakan karakter selain
-
dan[a-z]
. Profile koneksi VPN baru yang baru saja Anda tambahkan akan muncul di aplikasi WireGuard Anda.
Menggunakan import file atau archive
- Untuk mengimport konfigurasi dari file
.conf
, Anda perlu mendownload terlebih dahulu konfigurasi tersebut ke perangkat Anda. - Setelah konfigurasi tersebut terdownload ke perangkat Anda, pilih “Import from file or archive” dan import konfigurasi WireGuard Anda.
Ingat, hindari menggunakan karakter selain
-
dan[a-z]
untuk interface “name”.
Setelah konfigurasi berhasil diimport, cukup tap tombol "switch Active" pada profile VPN ke on untuk mengkatifkan koneksi VPN [contoh gambar connected VPN WireGuard yang aktif di Android].
Windows dan MacOS
Saya meletakan Windows dan MacOS di sesi yang sama karena mengimport konfigurasi WireGuard untuk sistem operasi Windows dan MacOS cukup mirip. Setelah aplikasi official WireGuard terinstall:
- Klik tombol “Add Tunnel” (atau pada icon dropdown-nya) dan “Import tunnel(s) from file…”, kemudian pilih file konfigurasi WireGuard Anda.
- Setelah berhasil melakukan konesi VPN WireGuard, coba lakukan pengecekan alamat IP publik Anda. Jika semua konfigurasi benar, maka IP VPN server Anda yang seharusnya tampil saat pengecekan, bukan IP dari ISP Anda.
Linux
Untuk pengguna Linux, Anda perlu menginstall package wireguard
ke sistem Anda. Cari tahu bagaimana cara menginstall WireGuard dari situs resmi WireGuard atau dari halaman dokumentasi distro yang Anda gunakan.
Menggunakan wg-quick
Cara paling mudah dan paling simple untuk menggunakan WireGuard adalah dengan menggunakan wg-quick
yang tersedia setelah Anda menginstall package wireguard
. Letakkan file konfigurasi WireGuard dari penyedia layanan VPN Anda ke /etc/wireguard
dan lakukan koneksi ke VPN server menggunakan perintah berikut:
1sudo systemctl start wg-quick@<interface-name>.service.
Ubah <interface-name>
diatas dengan nama file (tanpa ekstensi .conf
) dari konfigurasi WireGuard yang diberikan oleh penyedia layanan VPN Anda.
Sebagai contoh, jika Anda mengubah nama file wg0.conf
ke wg-do1.conf
yang berada di folder /etc/wireguard
, Anda bisa melakukan koneksi ke VPN server menggunakan perintah sudo systemctl start [email protected]
.
Cobalah melakukan pengecekan koneksi WireGuard dengan mengecek alamat IP publik Anda dari browser atau terminal (curl ifconfig.me
). Jika alamat IP yang terdeteksi masih alamat IP dari ISP yang Anda gunakan, perintah pertama untuk melakukan troubleshot adalah sudo wg show
atau sudo systemctl status [email protected]
.
Catatan 1: Secara default,
wg-quick
menggunalanresolvconf
untuk memasukan entri DNS baru. Hal ini akan menimbulkan masalah dengan network manager dan DHCP client yang tidak menggunakanresolvconf
, karena mereka akan menulis ulang entri DNS di/etc/resolv.conf
(yang akan menghapus DNS server yang telah ditambahkan oleh perintahwg-quick
).
Solusinya adalah dengan menggunakan software network manager yang mensupportresolvconf
.
Catatan 2: Pengguna
systemd-resolved
harus memastikan bahwasystemd-resolvconf
terinstall dan berjalan dengan baik.
Mengunakan NetworkManager
NetworkManager pada bleeding-edge atau rolling release distro seperti Arch Linux sudah mensupport WireGuard VPN secara native.
Menggunakan NetworkManager TUI & GUI
Anda dapat dengan mudah mengkonfigurasi koneksi WireGuard dan peers-nya menggunakan NetworkManager TUI atau GUI. Pada contoh ini, saya akan menggunakan NetworkManager GUI.
- Buka NetworkManager GUI, klik + untuk menambahkan koneksi.
- Pilih “Import a saved VPN configuration” import konfigurasi WireGuard Anda.
- Kemudian, Anda dapat mengubah “Connection name” dan “Interface name” ke apapun yang bisa Anda ingat dengan mudah. Tapi, Hindari menggunakan karakter selain
-
dan[a-z]
untuk “Interface name”. Koneksi tidak akan berjalan jika Anda menggunakan karakter spesial seperi spasi.
Menggunakan nmcli
nmcli
dapat mengimport konfigurasi wg-quick
. Sebagai contoh, untuk mengimport konfigurasi WireGuard dari /etc/wireguard/t420.conf
:
1nmcli connection import type wireguard file /etc/wireguard/t420.conf
Meskipun nmcli
dapat membuat profil koneksi WireGuard, tetapi ia tidak mendukung konfigurasi untuk peer. Berikut ini adalah contoh konfigurasi WireGuard melalui format .nmconnection
file yang ada pada folder /etc/NetworkManager/system-connections/
untuk multiple peers dan custom routing:
1[connection]
2id=WG-<redacted>
3uuid=<redacted-uuid-string>
4type=wireguard
5autoconnect=false
6interface-name=wg-<redacted>
7timestamp=1684607233
8
9[wireguard]
10private-key=<redacted_base64_encoded_private_key>
11
12[wireguard-peer.<redacted_base64_encoded_public_key>]
13endpoint=<redacted_ip_address>:<redacted_port>
14persistent-keepalive=15
15allowed-ips=0.0.0.0/0;
16
17[wireguard-peer.<redacted_base64_encoded_public_key>]
18endpoint=<redacted_ip_address>:<redacted_port>
19persistent-keepalive=15
20allowed-ips=<redacted_specific_ip_network_routes_separated_by_semicolon>
21
22[ipv4]
23address1=10.10.88.2/24
24dns=192.168.1.105;192.168.1.252;
25method=manual
26
27[ipv6]
28addr-gen-mode=stable-privacy
29method=ignore
Catatan
- Anda tidak dapat melakukan koneksi ke VPN server yang sama dari 2 perangkat atau lebih dengan key yang sama. Setiap perangkat HARUS memiliki key yang unik.
- Untuk beberapa sistem operasi seperti Windoes, jika Anda tidak dapat mengimport konfigurasi WireGuard Anda ke aplikasi WireGuard, pastikan bahwa file konfigurasi Anda berekstensi
.conf
.