Linux

Cara Menyiapkan WireGuard VPN pada Debian 10

Cara Menyiapkan WireGuard VPN pada Debian 10

WireGuard adalah VPN tujuan umum (Virtual Private Network) yang menggunakan kriptografi canggih. Berbanding dengan penyelesaian VPN lain yang popular, seperti IPsec dan OpenVPN, WireGuard umumnya lebih cepat, lebih mudah dikonfigurasi, dan mempunyai jejak yang lebih kecil. Ia adalah platform silang dan boleh berjalan hampir di mana sahaja, termasuk Linux, Windows, Android, dan macOS.

Wireguard adalah VPN peer-to-peer; ia tidak menggunakan model pelayan pelanggan. Bergantung pada konfigurasi, rakan sebaya boleh bertindak sebagai pelayan atau pelanggan tradisional. Ia berfungsi dengan membuat antara muka rangkaian pada setiap peer device yang berfungsi sebagai terowong. Rakan sebaya mengesahkan satu sama lain dengan menukar dan mengesahkan kunci awam, meniru model SSH. Kunci awam dipetakan dengan senarai alamat IP yang dibenarkan di terowong. Trafik VPN dikemas dalam UDP.

Artikel ini menerangkan cara memasang dan mengkonfigurasi WireGuard pada Debian 10 yang akan bertindak sebagai pelayan VPN. Kami juga akan menunjukkan kepada anda cara mengkonfigurasi WireGuard sebagai klien pada Linux, Windows dan macOS. Trafik pelanggan akan diarahkan melalui pelayan Debian 10.

Penyediaan ini dapat digunakan sebagai perlindungan terhadap serangan Man in the Middle, melayari laman web secara anonim, melewati kandungan yang dibatasi Geo, atau membenarkan rakan anda yang bekerja dari rumah untuk menyambung ke rangkaian syarikat dengan selamat.

Prasyarat #

Untuk mengikuti panduan ini, anda memerlukan mesin dengan Debian 10 terpasang. Anda juga memerlukan root atau [sudo access] (https: // linuxize.com / post / how-to-create-a-sudo-user-on-debian / untuk memasang pakej dan membuat perubahan pada sistem.

Menyiapkan Pelayan WireGuard #

Kita akan mulakan dengan memasang pakej WireGuard pada mesin Debian dan menyediakannya untuk berfungsi sebagai pelayan. Kami juga akan mengkonfigurasi sistem untuk mengarahkan lalu lintas pelanggan melaluinya.

Pasang WireGuard pada Debian 10 #

WireGuard boleh didapati dari repositori backport Debian. Untuk menambahkan repositori ke sistem anda, jalankan:

echo 'deb http: // ftp.debian.org / debian buster-backports main '| sudo tee / etc / apt / sumber.senarai.d / buster-backport.senarai

Setelah repositori diaktifkan, kemas kini cache tepat dan pasang modul dan alat WireGuard:

sudo apt kemas kinisudo apt memasang wireguard
WireGuard berfungsi sebagai modul kernel.

Mengkonfigurasi WireGuard #

Anda boleh mengkonfigurasi dan mengurus antara muka WireGuard dengan wg dan cepat-cepat alat baris perintah.

Setiap peranti di rangkaian WireGuard VPN harus mempunyai kunci peribadi dan awam. Jalankan arahan berikut untuk menghasilkan pasangan kunci:

wg genkey | sudo tee / etc / wireguard / privatekey | wg pubkey | sudo tee / etc / wireguard / publickey

Fail dihasilkan di / etc / wireguard direktori. Menggunakan kucing atau kurang arahan untuk melihat kandungan fail. Kunci peribadi tidak boleh dikongsi dengan sesiapa sahaja dan harus sentiasa dijaga dengan selamat.

Wireguard juga menyokong kunci pra-kongsi, yang menambahkan lapisan tambahan kriptografi kunci simetri. Kunci ini adalah pilihan dan mesti unik untuk setiap pasangan rakan sebaya.

Langkah seterusnya adalah mengkonfigurasi peranti terowong yang akan mengarahkan lalu lintas VPN.

Peranti boleh disiapkan dari baris perintah menggunakan ip dan wg arahan, atau dengan membuat fail konfigurasi secara manual. Kami akan membuat konfigurasi dengan penyunting teks.

Buka editor anda dan buat fail baru bernama wg0.pengesahan dengan kandungan berikut:

sudo nano / etc / wireguard / wg0.pengesahan
/ etc / wireguard / wg0.pengesahan
[Antaramuka] Alamat = 10.0.0.1/24 SaveConfig = true ListenPort = 51820 PrivateKey = SERVER_PRIVATE_KEY PostUp = iptables -A FORWARD -i% i -j MENERIMA; iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE PostDown = iptables -D FORWARD -i% i -j MENERIMA; iptables -t nat -D POSTROUTING -o ens3 -j MASQUERADE 

Anda boleh menamakan antara muka apa sahaja yang anda mahukan. Walau bagaimanapun adalah disyorkan untuk menggunakan sesuatu seperti wg0 atau wgvpn0.

Tetapan di bahagian antara muka mempunyai makna berikut:

The wg0.pengesahan dan kunci peribadi fail tidak boleh dibaca oleh pengguna biasa. Gunakan chmod untuk menetapkan kebenaran fail ke 600:

sudo chmod 600 / etc / wireguard / privatekey, wg0.conf

Setelah selesai, bawa wg0 antara muka menggunakan atribut yang ditentukan dalam fail konfigurasi:

sudo wg-cepat naik wg0

Hasilnya akan kelihatan seperti ini:

[#] ip link add wg0 type wireguard [#] wg setconf wg0 / dev / fd / 63 [#] alamat ip -4 tambah 10.0.0.1/24 dev wg0 [#] ip link set mtu 1420 up dev wg0 [#] iptables -A FORWARD -i wg0 -j TERIMA; iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE 

Untuk memeriksa keadaan dan konfigurasi antara muka, jalankan:

sudo wg tunjukkan wg0
antara muka: kunci awam wg0: + Vpyku + gjVJuXGR / OXXt6cmBKPdc06Qnm3hpRhMBtxs = kunci persendirian: (tersembunyi) port pendengaran: 51820 

Anda juga boleh mengesahkan keadaan antara muka dengan ip rancangan wg0:

ip rancangan wg0
4: wg0:  mtu 1420 qdisc noqueue state UNKNOWN kumpulan lalai qlen 1000 pautan / tiada inet 10.0.0.1/24 skop global wg0 valid_lft selamanya disukai_lft selamanya 

WireGuard dapat diuruskan dengan Systemd. Untuk membawa antara muka WireGuard pada waktu boot, jalankan arahan berikut:

sudo systemctl aktifkan wg-quick @ wg0

Rangkaian Pelayan dan Konfigurasi Firewall #

Pemajuan IP mesti diaktifkan agar NAT berfungsi. Buka / etc / sysctl.pengesahan failkan dan tambah atau tanggalkan baris berikut:

sudo nano / etc / sysctl.pengesahan
/ etc / sysctl.pengesahan
bersih.ipv4.ip_forward = 1

Simpan fail dan terapkan perubahan:

sudo sysctl -p
bersih.ipv4.ip_forward = 1 

Sekiranya anda menggunakan UFW untuk menguruskan firewall anda, anda perlu membuka lalu lintas UDP di port 51820:

sudo ufw membenarkan 51820 / udp

Itu sahaja. Rakan Debian yang akan bertindak sebagai pelayan telah disediakan.

Persediaan Pelanggan Linux dan macOS #

Arahan pemasangan untuk semua platform yang disokong boleh didapati di https: // wireguard.com / pasang / . Pada sistem Linux, anda boleh memasang pakej menggunakan pengurus pakej pengedaran dan di macOS dengan membancuh.

Setelah dipasang, ikuti langkah-langkah di bawah untuk mengkonfigurasi peranti pelanggan.

Proses untuk menetapkan klien Linux dan macOS hampir sama seperti yang anda lakukan untuk pelayan. Pertama, buat kunci awam dan peribadi:

wg genkey | sudo tee / etc / wireguard / privatekey | wg pubkey | sudo tee / etc / wireguard / publickey

Buat fail wg0.pengesahan dan tambahkan kandungan berikut:

sudo nano / etc / wireguard / wg0.pengesahan
/ etc / wireguard / wg0.pengesahan
[Antaramuka] PrivateKey = CLIENT_PRIVATE_KEY Alamat = 10.0.0.2/24 [Rakan sebaya] PublicKey = SERVER_PUBLIC_KEY Endpoint = SERVER_IP_ADDRESS: 51820 DibolehkanIPs = 0.0.0.0/0 

Tetapan di bahagian antara muka mempunyai arti yang sama seperti ketika menyiapkan pelayan:

Bahagian rakan sebaya mengandungi bidang berikut:

Sekiranya anda perlu mengkonfigurasi pelanggan tambahan, ulangi langkah yang sama menggunakan alamat IP peribadi yang berbeza.

Persediaan Pelanggan Windows #

Muat turun dan pasang pakej msi Windows dari laman web WireGuard .

Setelah dipasang, buka aplikasi WireGuard dan klik pada "Tambah Terowong" -> "Tambahkan terowong kosong ..." seperti yang ditunjukkan pada gambar di bawah:

Sepasang penerbit dibuat secara automatik dan dipaparkan di skrin.

Masukkan nama untuk terowong dan edit konfigurasi seperti berikut:

[Antaramuka] PrivateKey = CLIENT_PRIVATE_KEY Alamat = 10.0.0.2/24 [Rakan sebaya] PublicKey = SERVER_PUBLIC_KEY Endpoint = SERVER_IP_ADDRESS: 51820 Dibolehkan IPs = 0.0.0.0/0 

Di bahagian antara muka, tambahkan baris baru untuk menentukan Alamat terowong pelanggan.

Di bahagian rakan sebaya, tambahkan medan berikut:

Setelah selesai, klik pada butang "Simpan".

Tambahkan Rakan Pelanggan ke Pelayan #

Langkah terakhir adalah menambahkan kunci awam dan alamat IP pelanggan ke pelayan. Untuk melakukannya, jalankan arahan berikut pada pelayan Debian:

sudo wg set wg0 peer CLIENT_PUBLIC_KEY dibenarkan-ips 10.0.0.2

Pastikan untuk menukar KLIEN_PUBLIC_KEY dengan kunci awam yang anda hasilkan pada mesin pelanggan (sudo cat / etc / wireguard / publickey) dan sesuaikan alamat IP klien jika berbeza. Pengguna Windows boleh menyalin kunci awam dari aplikasi WireGuard.

Setelah selesai, kembali ke mesin pelanggan dan buka antara muka tunneling.

Pelanggan Linux dan macOS #

Jalankan arahan berikut yang memunculkan antara muka:

sudo wg-cepat naik wg0

Sekarang anda harus disambungkan ke pelayan Debian, dan lalu lintas dari mesin pelanggan anda harus dilaluinya. Anda boleh memeriksa sambungan dengan:

sudo wg
antara muka: kunci awam wg0: gFeK6A16ncnT1FG6fJhOCMPMeY4hZa97cZCNWis7cSo = kunci persendirian: (tersembunyi) port pendengaran: 53527 fwmark: 0xca6c peer: r3imyh3MCYggaZACmkx + CxlD6uAmIC = P8.XXX.XXX.XXX: 51820 ips dibenarkan: 0.0.0.0/0 jabat tangan terkini: 53 saat yang lalu perpindahan: 3.23 KiB diterima, 3.50 KiB dihantar 

Anda juga boleh membuka penyemak imbas anda, ketik "apa itu ip saya", dan anda akan melihat alamat IP pelayan Debian anda.

Untuk menghentikan terowong, turunkan wg0 antara muka:

sudo wg-cepat turun wg0

Pelanggan Windows #

Sekiranya anda memasang WireGuard pada Windows, klik pada butang "Aktifkan". Setelah rakan sebaya disambungkan, status terowong akan berubah menjadi Aktif:

Kesimpulan #

Kami telah menunjukkan kepada anda cara memasang WireGuard pada Debian 10 dan mengkonfigurasinya sebagai pelayan VPN. Penyediaan ini membolehkan anda melayari web tanpa nama dengan menyimpan data trafik anda secara peribadi.

Sekiranya anda menghadapi masalah, sila beri komen.

Distro Linux Terbaik untuk Permainan pada tahun 2021
Sistem operasi Linux telah jauh dari tampilan asal, ringkas dan berasaskan pelayan. OS ini telah berkembang pesat dalam beberapa tahun kebelakangan in...
Cara menangkap dan streaming sesi permainan anda di Linux
Pada masa lalu, bermain permainan hanya dianggap sebagai hobi, tetapi seiring dengan berjalannya waktu, industri permainan menyaksikan pertumbuhan yan...
Permainan Terbaik untuk Dimainkan dengan Penjejakan Tangan
Oculus Quest baru-baru ini memperkenalkan idea hebat penjejakan tangan tanpa pengawal. Dengan jumlah permainan dan aktiviti yang semakin meningkat yan...