WireGuard adalah VPN modern yang dirancang agar mudah digunakan sekaligus memberikan keamanan yang kuat. Salah satu topologi sederhana yang bisa digunakan WireGuard adalah koneksi point-to-point.
Koneksi ini dapat digunakan antara lebih dari dua anggota untuk membuat topologi mesh, di mana masing-masing server dapat berbicara dengan rekan-rekannya secara langsung. Karena setiap host berada pada pijakan yang sama.
Dalam panduan ini, kami akan menunjukkan bagaimana membangun koneksi VPN point-to-point dengan WireGuard menggunakan dua server Ubuntu 16.04. Mulai dengan menginstal perangkat lunak dan kemudian menghasilkan kunci kriptografi untuk masing-masing host.
Setelah itu, kita akan membuat file konfigurasi singkat untuk menentukan informasi koneksi peer. Begitu kita memulai interface, kita akan bisa mengirim pesan aman antar server melalui interface WireGuard.
- Initial Server Setup dengan Ubuntu 16.04
Masuklah ke setiap server dengan sudo
Memasang Perangkat Lunak
WireGuard menyediakan paket upa-to-date untuk sistem Ubuntu. Kita perlu menginstal WireGuard di kedua server. Pada setiap server, lakukan tindakan berikut.
Pertama, tambahkan WireGuard PPA ke sistem:
sudo add-apt-repository ppa:wireguard/wireguard
Tekan ENTER saat diminta menambahkan sumber paket baru ke konfigurasi apt Anda. Setelah PPA ditambahkan, perbarui indeks paket lokal untuk menarik informasi tentang paket yang baru tersedia dan kemudian pasang modul kernel WireGuard dan komponen userland:
sudo apt-get update sudo apt-get install wireguard-dkms wireguard-tools
Selanjutnya, kita bisa mulai mengkonfigurasi WireGuard di setiap server.
Membuat Kunci Pribadi
Untuk membuat kunci pribadi dan menuliskannya langsung ke file konfigurasi WireGuard, ketikkan yang berikut pada setiap server:
(umask 077 && printf "[Interface]\nPrivateKey = " | sudo tee /etc/wireguard/wg0.conf > /dev/null) wg genkey | sudo tee -a /etc/wireguard/wg0.conf | wg pubkey | sudo tee /etc/wireguard/publickey
Membuat File Konfigurasi Awal
Selanjutnya, kita akan membuka file konfigurasi untuk mengatur beberapa rincian lainnya:
sudo nano /etc/wireguard/wg0.conf
Pada script diatas, Anda harus melihat kunci pribadi yang Anda buat yang didefinisikan di bagian yang disebut [Interface]. Bagian ini berisi konfigurasi untuk sisi lokal koneksi.
Mengkonfigurasi Bagian Interfaces
Kita perlu mendefinisikan alamat IP VPN yang akan digunakan dan port yang akan digunakanuntuk koneksi. Mulailah dengan menambahkan baris ListenPort dan SaveConfig seperti ini:
/etc/wireguard/wg0.conf
[Interface] PrivateKey = generated_private_key ListenPort = 5555 SaveConfig = true
*untuk port bebas yaa tergantung pada server masing-masing
Selanjutnya, tambahkan Alamat ke setiap server, disini Kami akan menggunakan subnet 10.0.0.0/24
/etc/wireguard/wg0.conf on first server
[Interface] PrivateKey = generated_private_key ListenPort = 5555 SaveConfig = true Address = 10.0.0.1/24
Di server kedua kami, kami akan menentukan alamat sebagai 10.0.0.2
/etc/wireguard/wg0.conf on second server
[Interface] PrivateKey = generated_private_key ListenPort = 5555 SaveConfig = true Address = 10.0.0.2/24
Mendefinisikan Bagian Peer
Pada file konfigurasi yang masih terbuka, buat bagian yang disebut [Peer]
[Interface] :
/etc/wireguard/wg0.conf on second server
[Interface] . . . [Peer] PublicKey = public_key_of_first_server AllowedIPs = 10.0.0.1/32 Endpoint = public_IP_of_first_server:5555
Membuka Firewall dan Memulai VPN
Pertama, buka port:
sudo ufw allow 5555
layanan wg-quick menggunakan file interface wg0:
sudo systemctl start wg-quick@wg0
Ini akan memulai antarmuka jaringan wg0 pada mesin:
ip addr show wg0
Output on first server 6: wg0: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1420 qdisc noqueue state UNKNOWN group default qlen 1 link/none inet 10.0.0.1/24 scope global wg0 valid_lft forever preferred_lft forever
Jika semuanya bekerja dengan benar, Anda dapat menyimpan konfigurasi di server pertama kembali ke file /etc/wireguard/wg0.conf dengan me-restart layanan:
sudo systemctl restart wg-quick@wg0