InternetSpeed.online

Bahasa

Artikel

Panduan praktikal

Cara Menyediakan Pelayan VPN WireGuard pada Ubuntu dengan Skrip

Bermula dengan pelayan Ubuntu baharu hingga sambungan VPN peribadi: sediakan pelayan, cipta profil peranti dan semak laluan trafik internet.

Telah diuji: pemasangan pelayan, sambungan bekas Linux dan kelajuan Windows. Ujian pada peranti macOS, Ubuntu Desktop, iPhone dan Android masih belum selesai.

1. Pilih pelayan dan sediakan akses

Panduan ini memasang WireGuard dari awal pada VPS Ubuntu 26.04 LTS. Anda memerlukan IPv4 awam serta kata laluan root atau kunci SSH. Pilih penyedia dan rantau mengikut keperluan.

Kami menggunakan Vultr Shared CPU: 1 vCPU, RAM 1 GB, SSD 25 GB dan kuota trafik bulanan 1 TB.

Pilih pelayan IPv4 supaya rangkaian tanpa IPv6 boleh bersambung. Pelayan IPv6 sahaja memerlukan aturan tambahan untuk laman IPv4 sahaja dan tidak diliputi di sini.

2. Semak log masuk SSH

Windows: cari dan buka PowerShell melalui Start. Mac: tekan Command+Space, taip Terminal dan Enter. Ubuntu Desktop: tekan Ctrl+Alt+T.

Gantikan SERVER_IP dalam setiap arahan dengan IPv4 awam daripada panel pelayan. ssh root@SERVER_IP menyambungkan anda sebagai root.

Pilih arahan kata laluan atau arahan kunci jika sudah mempunyai kunci SSH. Tukar laluan contoh kunci kepada laluan sebenar.

Pada sambungan pertama, SSH mungkin meminta pengesahan kepercayaan. Semak alamat VPS, taip yes dan Enter. Masukkan kata laluan root apabila diminta; aksara tidak dipaparkan semasa menaip.

Selepas masuk, jalankan arahan pelayan untuk menyemak Ubuntu, kemudian exit untuk kembali ke komputer sendiri.

PowerShell atau Terminal pada komputer — log masuk kata laluan
ssh root@SERVER_IP
PowerShell atau Terminal pada komputer — kunci SSH sedia ada
ssh -i ~/.ssh/id_ed25519 root@SERVER_IP
Pada pelayan
cat /etc/os-release
exit
Jika arahan ssh tidak ditemui

Pada Windows, buka PowerShell dengan Run as administrator dan jalankan arahan berikut. Selepas pemasangan, tutup dan buka PowerShell biasa. Ubuntu menggunakan arahan Ubuntu di bawah. macOS menyertakan klien SSH.

Windows — pasang klien SSH dalam PowerShell pentadbir
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

Salin tepat. OpenSSH.Client~~~~0.0.1.0 ialah pengecam komponen Windows; jangan ubah tanda tilde atau nombornya.

Ubuntu Desktop — pasang klien SSH
sudo apt update
sudo apt install openssh-client

3. Muat turun dan semak pakej pemasangan

Muat turun dan ekstrak ZIP. Simpan kelima-lima skrip bersama dalam folder wireguard-guide. Ikuti satu laluan sahaja: Windows, Mac atau Ubuntu.

Skrip memasang WireGuard pada VPS dan mencipta profil peranti. Kata laluan pelayan mungkin diminta beberapa kali.

Muat turun skrip persediaan (.zip)

4a. Sediakan pelayan dari Windows

Buka folder wireguard-guide yang diekstrak dalam File Explorer. Taip powershell di bar alamat dan tekan Enter supaya PowerShell dibuka dalam folder itu.

Jalankan salah satu arahan. Gantikan SERVER_IP dengan alamat VPS dan laluan kunci jika digunakan.

windows selepas -Device ialah nama profil. Gunakan nama lain seperti laptop untuk komputer kedua. Profil berasingan membolehkan akses satu peranti dibatalkan tanpa memutuskan peranti lain.

Selepas selesai, taip %USERPROFILE%\WireGuard di bar alamat File Explorer. Buka folder bernama pelayan dan peranti untuk mencari windows.conf. Skrip turut memaparkan laluan penuh. Aktifkan VPN pada langkah 5.

PowerShell — pengesahan kata laluan
.\Connect-WireGuardServer.ps1 -Server SERVER_IP -Device windows
PowerShell — pengesahan kunci SSH
.\Connect-WireGuardServer.ps1 -Server SERVER_IP -Device windows -IdentityFile "$HOME\.ssh\id_ed25519"
Jika PowerShell menyekat skrip

Jika ralat menyatakan fail tiada tandatangan digital, jalankan arahan ini dalam folder yang sama dan cuba pemasangan semula.

PowerShell — nyahsekat fail yang dimuat turun
Unblock-File -LiteralPath .\Connect-WireGuardServer.ps1

Jika pelaksanaan skrip dinyahdayakan, jalankan arahan ini, sahkan gesaan dan cuba lagi. Perubahan tamat apabila tetingkap PowerShell ditutup.

PowerShell — benarkan skrip untuk tetingkap ini sahaja
Set-ExecutionPolicy -Scope Process -ExecutionPolicy RemoteSigned
Unblock-File -LiteralPath .\Connect-WireGuardServer.ps1

Jika dasar masih menghalang pelaksanaan, berhenti dan simpan mesej ralat untuk diagnosis.

4b. Sediakan pelayan dari Mac

Buka Terminal. Taip cd diikuti ruang, seret folder wireguard-guide dari Finder ke Terminal dan tekan Enter.

Jalankan satu arahan termasuk bash di awal. Gantikan SERVER_IP dan laluan kunci jika ada. mac ialah nama profil; gunakan nama lain seperti macbook untuk Mac kedua.

Selepas selesai, tekan Command+Shift+H dalam Finder untuk membuka folder utama. Buka WireGuard dan folder pelayan-peranti; profilnya mac.conf. Skrip memaparkan laluan penuh juga.

Terminal macOS — pengesahan kata laluan
bash ./connect-wireguard-server.sh SERVER_IP mac
Terminal macOS — pengesahan kunci SSH
bash ./connect-wireguard-server.sh SERVER_IP mac 22 ~/.ssh/id_ed25519

4c. Sediakan pelayan dari Ubuntu Desktop

Tekan Ctrl+Alt+T. Taip cd dan ruang, seret folder wireguard-guide ke Terminal dan tekan Enter.

Gantikan SERVER_IP lalu jalankan satu arahan. ubuntu ialah nama profil. Pelancar dan log masuk SSH ini tidak memerlukan sudo.

Dalam pengurus fail, buka Home, WireGuard dan folder pelayan-peranti. ubuntu.conf berada di ~/WireGuard/SERVER_IP-ubuntu/ubuntu.conf dengan alamat sebenar pelayan. Panduan ini menggunakan NetworkManager untuk menyambung.

Pada Ubuntu Desktop — pengesahan kata laluan
bash ./connect-wireguard-server.sh SERVER_IP ubuntu
Pada Ubuntu Desktop — pengesahan kunci SSH
bash ./connect-wireguard-server.sh SERVER_IP ubuntu 22 ~/.ssh/id_ed25519

5a. Sambungkan Windows atau macOS

Pasang aplikasi WireGuard rasmi. Import fail .conf yang dihasilkan, benarkan kebenaran VPN dan aktifkan terowong. Nama pilihan import mungkin berbeza mengikut versi.

Profil menghantar IPv4 melalui VPN dan menyertakan laluan lalai IPv6 supaya IPv6 tidak memintasnya. Pelayan tidak menyediakan internet IPv6. Semak tingkah laku sebenar peranti dengan ujian berikut.

Profil mengandungi kunci peribadi. Pemilik salinannya boleh cuba menggunakan identiti VPN peranti. Jangan masukkannya dalam tiket sokongan, penjana QR dalam talian atau berkongsi antara peranti.

Muat turun WireGuard rasmi

5b. Sambungkan Ubuntu Desktop melalui NetworkManager

NetworkManager mengurus import, DNS dan laluan tanpa bergantung pada versi dialog grafik. Jalankan arahan pada desktop, bukan melalui SSH VPS. Pastikan nmcli tersedia dan NetworkManager berjalan.

ubuntu.conf menghasilkan sambungan bernama ubuntu. Jika nama sudah wujud, pilih nama peranti lain dan laraskan arahan. Import sekali sahaja; kemudian gunakan up dan down. Tetapan berikut mematikan sambungan VPN automatik semasa komputer bermula.

DNS ini mengutamakan VPN untuk semua nama ketika aktif. DNS selamat pelayar mungkin berbeza. Lakukan ujian IP, DNS dan IPv6 pada langkah 7. Kaedah ini belum diuji pada Ubuntu Desktop sebenar; ujian bekas Linux tidak mengesahkan DNS atau IPv6 desktop.

Jangan aktifkan profil sama dengan wg-quick serentak kerana laluan boleh bercanggah. nmcli boleh memeriksa dan memutuskan sambungan walaupun paparan desktop berbeza.

Pada Ubuntu Desktop — semak NetworkManager
nmcli --version
systemctl is-active NetworkManager
Pada Ubuntu Desktop — import sekali dan tetapkan DNS
sudo nmcli connection import type wireguard file "$HOME/WireGuard/SERVER_IP-ubuntu/ubuntu.conf"
sudo nmcli connection modify ubuntu connection.autoconnect no ipv4.dns-priority -50 ipv4.dns-search "~."
Pada Ubuntu Desktop — sambung
sudo nmcli connection up ubuntu
nmcli connection show --active
Pada Ubuntu Desktop — putuskan sambungan
sudo nmcli connection down ubuntu

6. Sambungkan iPhone atau Android dengan kod QR

Pasang aplikasi WireGuard rasmi melalui pautan App Store atau Google Play di bawah.

Pada komputer, masuk semula ke VPS dengan ssh root@SERVER_IP atau arahan kunci SSH anda. Arahan telefon berikut mencipta profil dan memaparkan kod QR.

Dalam WireGuard telefon, pilih tambah terowong dengan imbasan QR. Imbas kod komputer, namakan sambungan, benarkan VPN dan aktifkannya.

Gunakan profil berasingan bagi setiap telefon. Jangan kongsi QR kerana ia memberikan akses VPN. Jika kod terpecah baris, besarkan tetingkap Terminal dan paparkan semula.

Pada pelayan — cipta profil iPhone
python3 /root/internetspeed-wireguard/manage-client.py add iphone
qrencode -t ANSIUTF8 < /etc/wireguard/clients/iphone.conf
Pada pelayan — cipta profil Android berasingan
python3 /root/internetspeed-wireguard/manage-client.py add android
qrencode -t ANSIUTF8 < /etc/wireguard/clients/android.conf

WireGuard untuk iPhone — App Store

WireGuard untuk Android — Google Play

7. Semak trafik internet melalui VPN

Buka halaman My IP melalui pautan berikut sebelum menghidupkan VPN dan catat alamat anda. Aktifkan WireGuard, muat semula My IP dan bandingkan dengan IPv4 awam VPS.

Jika halaman terbuka dan memaparkan alamat VPS, sambungan pelayar itu melalui VPN. Jika alamat lama kekal, lihat penyelesaian masalah.

Ini mengesahkan pelayar, bukan semua aplikasi atau perlindungan ketika VPN terputus. Ujian tambahan meliputi DNS dan IPv6.

Semak IP awam anda

Pilihan: semak IPv6 dan DNS

IPv6: buka Test IPv6 sebelum menyambung dan catat sama ada alamat IPv6 muncul. Aktifkan VPN dan ulangi. Konfigurasi IPv4 ini sepatutnya tiada internet IPv6 yang berfungsi. IPv6 biasa yang masih muncul memintas terowong. Jika tiada IPv6 sebelum ujian, hasilnya tidak menunjukkan tingkah laku pada rangkaian IPv6.

DNS: dengan VPN aktif, jalankan Standard test dalam DNS Leak Test. Profil menggunakan Cloudflare DNS. Jika penyedia internet rumah muncul, semak DNS peranti. Penyedia lain mungkin datang daripada Secure DNS pelayar; ia perlu disiasat dan bukan bukti kebocoran automatik. Hasil ini tidak menjamin semua aplikasi dilindungi.

Buka Test IPv6

Buka DNS Leak Test

8. Selesaikan masalah sambungan

Jika My IP masih menunjukkan alamat biasa, pastikan profil WireGuard aktif. Matikan dan hidupkan sekali lalu muat semula My IP.

Jika laman gagal ketika VPN aktif, matikan VPN dan cuba laman sama. Jika masih gagal, pulihkan internet biasa dahulu. Jika hanya gagal dengan VPN, gunakan semakan berikut.

Untuk membandingkan rangkaian, sambungkan komputer ke hotspot telefon dan cuba VPN. Pada telefon, matikan Wi-Fi dan cuba data mudah alih. Ini ujian sementara; caj data mungkin dikenakan. Jika hanya berfungsi melalui hotspot atau data mudah alih, masalah khusus pada sambungan Wi-Fi itu; puncanya belum diketahui.

Jika pemasangan terhenti, simpan ralat terakhir. Selepas membetulkan punca, jalankan arahan sama dengan nama peranti sama. Profil sedia ada dikekalkan.

Semak pelayan VPN berjalan

Masuk melalui SSH seperti langkah 2 dan jalankan arahan. Hasil sepatutnya active. Jika inactive atau failed, mulakan semula dan semak lagi. Jika bukan active, simpan ralat.

Pada pelayan — semak WireGuard
systemctl is-active wg-quick@wg0
Pada pelayan — mulakan semula WireGuard jika tidak aktif
systemctl restart wg-quick@wg0
systemctl is-active wg-quick@wg0

Mula semula memutuskan peranti yang menggunakan VPN ini seketika.

Semak peranti mencapai pelayan

Aktifkan VPN dan buka My IP. Pada pelayan, jalankan wg show. Cari latest handshake di bawah peranti; 10 seconds ago bermakna sambungan disulitkan baru dibentuk. Jika baris tiada, belum ada sambungan berjaya direkodkan untuk peranti itu.

Jika tiada sambungan terkini, semak Endpoint mengandungi alamat VPS diikuti :51820. Dalam panel VPS, cari Firewall atau Security groups. Jika peraturan dipasang, benarkan UDP masuk port 51820. Paparan berbeza mengikut penyedia; skrip sudah mengurus firewall Ubuntu.

Jika handshake terkini ada tetapi laman masih gagal, simpan hasil dan log atau ralat aplikasi. Mengubah tetapan rangkaian lanjutan secara rawak boleh menyukarkan diagnosis.

Pada pelayan — paparkan status VPN
wg show

9. Apakah kelajuan yang boleh dijangka?

Ujian Windows kami mencatat muat turun sekitar 350–400 Mbps dan muat naik 450–500 Mbps dengan kaedah sama seperti VPN lain dalam projek. Laluan: pengguna San Diego → VPN di San Francisco Bay Area → pelayan ukuran Seattle.

VPS Vultr Shared CPU vc2-1c-1gb: 1 vCPU, RAM 1 GB, SSD 25 GB dan trafik bulanan 1 TB; harga semasa ditempah ialah AS$5 sebulan.

Ini hasil konfigurasi tersebut. Keputusan bergantung pada internet, pelayan dan lokasi anda. Pelan atau penyedia VPS lain belum dibandingkan.

10. Kos, privasi dan had penyedia

VPN sendiri memberikan kawalan konfigurasi dan satu lokasi keluar pilihan. Anda mengurus kemas kini keselamatan, bil, akses peranti dan pemulihan. Ia tidak menyembunyikan identiti daripada penyedia hosting atau menggantikan HTTPS.

Melayari web, video, muat turun, muat naik dan ujian kelajuan menggunakan kuota trafik VPS. Semak baki dalam panel hosting. Lebihan boleh menyebabkan caj atau sekatan mengikut pelan.

Sebelum menggunakan P2P, semak syarat penggunaan penyedia dan undang-undang berkaitan. Protokol dan hak kandungan adalah berasingan. Muat turun dan kongsi kandungan yang anda berhak gunakan; tidak semua hos membenarkan semua penggunaan P2P.

IP pusat data boleh menghadapi CAPTCHA, sekatan perkhidmatan atau penstriman. WireGuard biasa tidak menjamin akses dari semua rangkaian ditapis. Satu VPS juga menjadi satu titik kegagalan tanpa pilihan lokasi dan pelayan gantian seperti penyedia besar.

11. Tambah peranti, batalkan akses dan selenggara pelayan

Gunakan satu profil setiap peranti. Untuk telefon hilang, buang peer bernama itu pada pelayan dan salinan profil yang masih ada. Cipta profil gantian selepas membatalkannya. Memadam fail pada telefon sahaja tidak membatalkan akses pelayan.

Pastikan kemas kini keselamatan Ubuntu terkini dan semak keperluan mula semula. Mulakan semula pada masa sesuai dan pastikan VPN kembali. Lindungi akaun hosting dan SSH; tukar pengesahan SSH secara berasingan dengan kaedah masuk alternatif yang sudah diuji.

Skrip pembuangan menghentikan VPN ini dan membuang konfigurasi serta peraturan firewall yang diurusnya. SSH, UFW dan pakej kekal. Pemajuan trafik kekal aktif sehingga dasar sistem digunakan ketika mula semula. Membuang VPN tidak menghentikan bil VPS; simpan data perlu kemudian padamkan instance melalui penyedia apabila tidak lagi digunakan.

Pada pelayan — batalkan profil iPhone
python3 /root/internetspeed-wireguard/manage-client.py remove iphone
Pada pelayan — semak kemas kini dan keperluan mula semula
apt update
apt list --upgradable
test ! -f /var/run/reboot-required || cat /var/run/reboot-required
Pada pelayan — buang konfigurasi VPN (semua klien terputus)
bash /root/internetspeed-wireguard/remove-server.sh --confirm