Знания Прости инструкции за работа с услугата Profitserver
основен Знания Как да настроите Wireguard VPN на вашия сървър

Как да настроите Wireguard VPN на вашия сървър


Тази статия ще опише подробно как да настроите Wireguard VPN на вашия сървър. Може да е виртуален или частен сървър - няма толкова голямо значение.

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

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

Предполага се, че вече имате VPS. Ако не, можете поръчка то от нас.

Ще инсталираме операционната система Ubuntu 22.04 на нашия сървър. Ако имате сървър с различна операционна система, можете лесно да го преинсталирате, като следвате инструкции.

И така, сървърът с Ubuntu 22.04 OS е готов, сега се свързваме с него чрез SSH. Ако изведнъж не сте срещали този протокол преди, тогава статия, в която този процес е описан подробно, ще ви помогне. Вторият параграф на статията е за Linux OS, третият е за Windows OS.

Настройте Wireguard сървър

След успешно свързване ще напиша няколко команди и описание на това, което произвеждат, за да разбера процеса:

Ние актуализираме списъка с пакети в хранилищата

apt update

Подновяване на самите пакети

apt upgrade -y

Инсталирайте пакета wireguard

apt install -y wireguard

Нашата конфигурация ще бъде съхранена в директорията /etc/wireguard/, трябва да влезем в директорията:

cd /etc/wireguard/

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

umask 077
wg genkey > privatekey
wg pubkey < privatekey > publickey

Сега задаваме правата за частния ключ:

chmod 600 privatekey

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

ip a

Нуждаем се от интерфейса с IP адреса, който се използва за текущата връзка. Вероятно ще се казва ens3 във вашия случай, но може да има друго име.

Настройте Wireguard - Ще ни трябват публичен и частен ключ за нашия сървър

Ще ни трябват и публичен и частен ключ. За да ги покажа, използвам опашка

tail privatekey publickey

Тя изглежда така:

Ще ни трябват и публичен и частен ключ. За да ги покажа, използвам опашка

За редактиране можете да използвате всеки Linux текстов редактор. Ще използвам нано. За да го инсталирате трябва да изпълните командата:

apt install -y nano

Ние редактираме конфигурационния файл:

nano /etc/wireguard/wg0.conf

Забележка

за да запазим файла, използваме комбинацията от бутони ctrl+o

за изход - ctrl+x

Трябва да изглежда така:

[Interface]
PrivateKey = [ your private key ]
Address = 10.30.0.1/24
ListenPort = 51928
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o [ interface name ] -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o [ interface name ] -j MASQUERADE

В моя случай изглежда така

Ние редактираме конфигурационния файл

Включваме ip forwarding

echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p

Стартирайте услугата wireguard:

systemctl start [email protected]

Ако искаме услугата да стартира след рестартиране на сървъра, тогава правим следното:

systemctl enable [email protected]

За преглед на състоянието на услугата:

systemctl status [email protected]

Състоянието трябва да е активно, както на екранната снимка:

Състоянието трябва да е активно, както на екранната снимка

Ако сте следвали внимателно нашите инструкции, тогава на този етап имате всичко необходимо, за да накарате сървърната част на VPN Wireguard да работи.

Настройване на Wireguard клиент

Остава само да конфигурирате клиентската част. За пример и простота, ще генерирам ключове за клиентската част също на сървъра. Но за целите на сигурността би било по-правилно да се генерират ключове от страна на клиента. Използвам команди за генериране:

wg genkey > mypc_privatekey
wg pubkey < mypc_privatekey > mypc_publickey

Също така ще генерирам ключове за използване на VPN на телефона:

wg genkey > myphone_private
keywg pubkey < myphone_privatekey > myphone_publickey

Трябва да се отбележи, че всичко това трябва да се направи, докато е в каталога

/etc/wireguard/

Можете да стартирате и в друг каталог. Но за простота изпълняваме инструкциите в /etc/wireguard/

Използваме командата ls, за да изброим файловете в директория. Получих го така:

Ще генерирам ключове за клиентската част на Wireguard също на сървъра

Нека покажем публичните ключове на екрана. Ще ни трябват, за да добавим възли към нашата мрежа:

tail mypc_publickey myphone_publickey

За мен изглежда така:

Нека покажем публичните ключове на екрана

Нека редактираме нашия конфигурационен файл:

nano wg0.conf

Добавете следните редове:

[Peer]
PublicKey = [ mypc_publickey ]
AllowedIPs = 10.30.0.2/32 

[Peer]
PublicKey = [ myphone_publickey ]
AllowedIPs = 10.30.0.3/32

Сега конфигурационният файл изглежда така:

Нека редактираме нашия конфигурационен файл

Запазете файла и рестартирайте нашата услуга:

systemctl restart wg-quick@wg0

Нека проверим дали всичко е било успешно:

systemctl status wg-quick@wg0

Състоянието трябва да е активно

Необходимо е презареждане на услугата всеки път след редактиране на конфигурационния файл на сървъра (wg0.conf)

След това ще създадем конфигурации за клиенти (в моя случай, моя компютър и телефон). Ще направя същото и на сървъра.

nano mypc.conf
[Interface] 
PrivateKey = [mypc_privatekey private key] 
Address = 10.30.0.2/32 
DNS = 8.8.8.8 

[Peer] 
PublicKey = [publickey server publc key] 
Endpoint =[ server ip address]:51928 
AllowedIPs = 0.0.0.0/0 
PersistentKeepalive = 20

В полето Крайна точка можете да видите IP адреса на сървъра - това е IP адресът, който използвахме за свързване чрез SSH. За да видите интерфейсите и адресите, можете да използвате командата ip a.

Настройте Wireguard за мобилни устройства

Създаваме подобна конфигурация за нашия телефон. Просто трябва да смените адреса. За компютъра беше 10.30.0.2/32, а в конфигурацията за телефона ще направим 10.30.0.3/32. Освен това, ако искаме да използваме VPN на други устройства, тогава трябва да добавим други адреси към полето Адрес в конфигурационните файлове и конфигурационния файл на сървъра wg0.conf, полето AllowedIPs, когато създаваме конфигурации

Файловете изглеждат така в моя случай:

mypc.conf

трябва да добавим други адреси към полето Адрес в конфигурационните файлове

myphone.conf

myphone.conf

За връзка инсталираме wireguard client https://www.wireguard.com/install/

В Windows приложението добавяме нов тунел и въвеждаме конфигурацията, създадена във файла mypc.conf

В Windows приложението добавяме нов тунел и въвеждаме конфигурацията, създадена във файла mypc.conf

Пускаме тунела и отиваме в браузъра на уебсайта, който показва нашия адрес

Пускаме тунела и отиваме в браузъра на уебсайта, който показва нашия адрес

За да добавите удобно VPN към телефона си, инсталирайте програма за генериране на qr кодове на сървъра:

apt install -y qrencode

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

qrencode -t ansiutf8 -r myphone.conf
За да добавите удобно VPN към телефона си, инсталирайте програма за генериране на qr кодове на сървъра

След това влизаме в приложението Wireguard на телефона, натискаме +, за да създадем нов тунел, избираме сканиране на QR кода, сканиране, включване на VPN. След това ще проверим дали показваме адреса на нашия сървър, като използваме всеки ресурс, който показва изходния IP адрес.

След това влизаме в приложението Wireguard на телефона, натискаме +, за да създадем нов тунел проверете дали показваме адреса на нашия сървър, като използвате всеки ресурс, който показва изходния IP адрес

Направи го!

❮ Предишна статия Как да се свържете с Windows сървър чрез RDP (отдалечен работен плот) от смартфон на IOS или Android
Следваща статия ❯ Настройка на VPN сървър на Linux: PPTP или OpenVPN?

Попитайте ни за VPS

Винаги сме готови да отговорим на вашите въпроси по всяко време на деня и нощта.