Linux

Как да настроите WireGuard VPN на Debian 10

Как да настроите WireGuard VPN на Debian 10

WireGuard е VPN с общо предназначение (виртуална частна мрежа), която използва най-съвременната криптография. В сравнение с други популярни VPN решения, като IPsec и OpenVPN, WireGuard обикновено е по-бърз, по-лесен за конфигуриране и има по-малък отпечатък. Той е междуплатформен и може да работи почти навсякъде, включително Linux, Windows, Android и macOS.

Wireguard е peer-to-peer VPN; той не използва модела клиент-сървър. В зависимост от конфигурацията, партньор може да действа като традиционен сървър или клиент. Той работи чрез създаване на мрежов интерфейс на всяко равнопоставено устройство, което действа като тунел. Връстниците се удостоверяват взаимно, като обменят и валидират публични ключове, имитирайки модела SSH. Публичните ключове се картографират със списък с IP адреси, които са разрешени в тунела. VPN трафикът е капсулиран в UDP.

Тази статия обяснява как да инсталирате и конфигурирате WireGuard на Debian 10, който ще действа като VPN сървър. Ще ви покажем и как да конфигурирате WireGuard като клиент на Linux, Windows и macOS. Трафикът на клиента ще бъде насочен през сървъра на Debian 10.

Тази настройка може да се използва като защита срещу атаките на Man in the Middle, сърфиране в мрежата анонимно, заобикаляне на географско ограничено съдържание или позволяване на вашите колеги, които работят от вкъщи, да се свързват по сигурен начин към фирмената мрежа.

Предпоставки #

За да следвате това ръководство, ще ви трябва машина с инсталиран Debian 10. Трябва ви също root или [sudo достъп] (https: // linuxize.com / post / how-to-create-a-sudo-user-on-debian / за инсталиране на пакети и извършване на промени в системата.

Настройка на сървъра WireGuard #

Ще започнем с инсталирането на пакета WireGuard на машината Debian и ще го настроим да действа като сървър. Също така ще конфигурираме системата да насочва трафика на клиентите през нея.

Инсталирайте WireGuard на Debian 10 #

WireGuard се предлага от хранилищата на Debian backports. За да добавите хранилището към вашата система, изпълнете:

echo 'deb http: // ftp.debian.org / debian buster-backports main '| sudo tee / etc / apt / sources.списък.г / задръствания.списък

След като хранилището е активирано, актуализирайте подходящия кеш и инсталирайте модула и инструментите WireGuard:

sudo apt актуализацияsudo apt инсталирайте wireguard
WireGuard работи като модул на ядрото.

Конфигуриране на WireGuard #

Можете да конфигурирате и управлявате интерфейсите на WireGuard с wg и wg-бързо инструменти за команден ред.

Всяко устройство във VPN мрежата WireGuard трябва да има частен и публичен ключ. Изпълнете следната команда, за да генерирате двойката ключове:

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

Файловете се генерират в / etc / wireguard директория. Използвай котка или по-малко команди за преглед на съдържанието на файловете. Частният ключ никога не трябва да се споделя с никого и винаги трябва да бъде защитен.

Wireguard също поддържа предварително споделен ключ, който добавя допълнителен слой криптография със симетричен ключ. Този ключ не е задължителен и трябва да бъде уникален за всяка двойка връстници.

Следващата стъпка е да конфигурирате тунелното устройство, което ще насочва VPN трафика.

Устройството може да бъде настроено или от командния ред с помощта на ip и wg команди или чрез ръчно създаване на конфигурационния файл. Ще създадем конфигурацията с текстов редактор.

Отворете редактора си и създайте нов файл с име wg0.конф със следното съдържание:

sudo nano / etc / wireguard / wg0.конф
/ etc / wireguard / wg0.конф
[Интерфейс] Адрес = 10.0.0.1/24 SaveConfig = true ListenPort = 51820 PrivateKey = SERVER_PRIVATE_KEY PostUp = iptables -A FORWARD -i% i -j ACCEPT; iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE PostDown = iptables -D НАПРЕД -i% i -j ПРИЕМ; iptables -t nat -D РАЗГЛЕЖДАНЕ -o ens3 -j MASQUERADE 

Можете да назовете интерфейса, каквото искате. Въпреки това се препоръчва да използвате нещо като wg0 или wgvpn0.

Настройките в раздела за интерфейса имат следното значение:

The wg0.конф и privatekey файловете не трябва да се четат на обикновените потребители. Използвайте chmod за да зададете разрешенията за файлове 600:

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

След като приключите, донесете wg0 интерфейс нагоре, използвайки атрибутите, посочени в конфигурационния файл:

sudo wg-бързо нагоре wg0

Резултатът ще изглежда по следния начин:

[#] ip link add wg0 type wireguard [#] wg setconf wg0 / dev / fd / 63 [#] ip -4 адрес add 10.0.0.1/24 dev wg0 [#] ip link set mtu 1420 up dev wg0 [#] iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -А РАЗГЛЕЖДАНЕ -o ens3 -j MASQUERADE 

За да проверите състоянието и конфигурацията на интерфейса, изпълнете:

sudo wg шоу wg0
интерфейс: wg0 публичен ключ: + Vpyku + gjVJuXGR / OXXt6cmBKPdc06Qnm3hpRhMBtxs = частен ключ: (скрит) порт за слушане: 51820 

Можете също да проверите състоянието на интерфейса с ip a show wg0:

ip a show wg0
4: wg0:  mtu 1420 qdisc noqueue състояние UNKNOWN група по подразбиране qlen 1000 връзка / няма inet 10.0.0.1/24 обхват глобален wg0 валиден_лфт завинаги предпочитан_лфт завинаги 

WireGuard може да се управлява със Systemd. За да приведете интерфейса WireGuard по време на зареждане, изпълнете следната команда:

sudo systemctl активира wg-quick @ wg0

Сървърна мрежа и конфигурация на защитна стена #

Пренасочването на IP трябва да бъде активирано, за да може NAT да работи. Отвори / и т.н. / sysctl.конф файл и добавете или разкоментирайте следния ред:

sudo nano / etc / sysctl.конф
/ и т.н. / sysctl.конф
нето.ipv4.ip_forward = 1

Запазете файла и приложете промяната:

sudo sysctl -p
нето.ipv4.ip_forward = 1 

Ако използвате UFW за управление на вашата защитна стена, трябва да отворите UDP трафик на порта 51820:

sudo ufw позволяват 51820 / udp

Това е. Настройката на Debian връстник, който ще действа като сървър.

Настройка на клиенти за Linux и macOS

Инструкциите за инсталиране на всички поддържани платформи са достъпни на https: // wireguard.com / install / . На Linux системи можете да инсталирате пакета с помощта на диспечера на дистрибуторски пакети и на macOS с варете.

Веднъж инсталирани, следвайте стъпките по-долу, за да конфигурирате клиентското устройство.

Процесът за настройка на клиент за Linux и macOS е почти същият като този за сървъра. Първо, генерирайте публичния и частния ключ:

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

Създайте файла wg0.конф и добавете следното съдържание:

sudo nano / etc / wireguard / wg0.конф
/ etc / wireguard / wg0.конф
[Интерфейс] PrivateKey = CLIENT_PRIVATE_KEY Адрес = 10.0.0.2/24 [Peer] PublicKey = SERVER_PUBLIC_KEY Крайна точка = SERVER_IP_ADDRESS: 51820 AllowedIPs = 0.0.0.0/0 

Настройките в раздела за интерфейса имат същото значение като при настройването на сървъра:

Разделът за връстници съдържа следните полета:

Ако трябва да конфигурирате допълнителни клиенти, просто повторете същите стъпки, като използвате различен частен IP адрес.

Настройка на клиенти на Windows #

Изтеглете и инсталирайте пакета Windows msi от уебсайта WireGuard .

След като инсталирате, отворете приложението WireGuard и кликнете върху „Добавяне на тунел“ -> „Добавяне на празен тунел ...“, както е показано на изображението по-долу:

Двойка публични ключове се създава автоматично и се показва на екрана.

Въведете име за тунела и редактирайте конфигурацията, както следва:

[Интерфейс] PrivateKey = CLIENT_PRIVATE_KEY Адрес = 10.0.0.2/24 [Peer] PublicKey = SERVER_PUBLIC_KEY Крайна точка = SERVER_IP_ADDRESS: 51820 AllowedIPs = 0.0.0.0/0 

В раздела за интерфейса добавете нов ред, за да определите адреса на тунела на клиента.

В раздела за връзки добавете следните полета:

След като приключите, кликнете върху бутона „Запазване“.

Добавете връзката на клиента към сървъра #

Последната стъпка е да добавите публичния ключ и IP адреса на клиента към сървъра. За да направите това, изпълнете следната команда на сървъра на Debian:

sudo wg set wg0 peer CLIENT_PUBLIC_KEY дозволено-ips 10.0.0.2

Не забравяйте да промените CLIENT_PUBLIC_KEY с публичния ключ, който сте генерирали на клиентската машина (sudo cat / etc / wireguard / publickey) и коригирайте IP адреса на клиента, ако е различен. Потребителите на Windows могат да копират публичния ключ от приложението WireGuard.

След като приключите, върнете се към клиентската машина и изведете тунелния интерфейс.

Клиенти за Linux и macOS #

Изпълнете следната команда за извеждане на интерфейса:

sudo wg-бързо нагоре wg0

Сега трябва да сте свързани към сървъра на Debian и трафикът от вашата клиентска машина трябва да бъде насочен през него. Можете да проверите връзката с:

sudo wg
интерфейс: wg0 публичен ключ: gFeK6A16ncnT1FG6fJhOCMPMeY4hZa97cZCNWis7cSo = частен ключ: (скрит) порт за слушане: 53527 fwmark: 0xca6c peer: r3imyh3MCYggaZACmkx + CxlD6uAgICG8.XXX.XXX.XXX: 51820 разрешени ips: 0.0.0.0/0 последно ръкостискане: преди 53 секунди трансфер: 3.Получени 23 KiB, 3.50 KiB изпратени 

Можете също така да отворите браузъра си, да напишете „what is my ip“ и трябва да видите IP адреса на вашия сървър на Debian.

За да спрете тунелирането, свалете wg0 интерфейс:

sudo wg-бързо надолу wg0

Клиенти на Windows #

Ако сте инсталирали WireGuard на Windows, щракнете върху бутона „Активиране“. След като връзките се свържат, състоянието на тунела ще се промени на Активно:

Заключение №

Показахме ви как да инсталирате WireGuard на Debian 10 и да го конфигурирате като VPN сървър. Тази настройка ви позволява да сърфирате в мрежата анонимно, като запазвате данните си за трафика частни.

Ако имате някакви проблеми, не се колебайте да оставите коментар.

Средният бутон на мишката не работи в Windows 10
The среден бутон на мишката ви помага да превъртате дълги уеб страници и екрани с много данни. Ако това спре, добре ще свършите да използвате клавиату...
Как да промените левия и десния бутон на мишката на компютър с Windows 10
Напълно нормално е всички устройства на компютърни мишки да са ергономично проектирани за десничари. Но има налични устройства за мишка, които са спец...
Емулирайте кликванията на мишката, като задържите курсора на мишката с кликаща мишка в Windows 10
Използването на мишка или клавиатура в неправилна поза при прекомерна употреба може да доведе до много здравословни проблеми, включително напрежение, ...