Настройка WireGuard VPN-сервера

В этой статье я подробно расскажу, как настроить VPN-сервер WireGuard. В качестве примера я буду использовать Debian сервер версии 9.6

Добавляем unstable репозиторий в пакетный менеджер apt . Изменяем приоритет для unstable пакетов. Делаем обновление ОС и устанавливаем пакет wireguard.

# echo "deb http://deb.debian.org/debian/ unstable main" > /etc/apt/sources.list.d/unstable.list
# printf 'Package: *\nPin: release a=unstable\nPin-Priority: 90\n' > /etc/apt/preferences.d/limit-unstable
# apt update
# apt install wireguard

Генерируем приватный ключ и записываем его в файл. Генерируем из приватного ключа публичный ключ

# wg genkey > private
# wg pubkey < private
qV4joe2XTr7ea8S5Xy8QKsMMaaiKPpCXFj2gr93qYxU=

Добавляем новый интерфейс с именем wg0 типа wireguard. Назначаем интерфейсу приватный IP адрес, к примеру 172.16.0.1/24 Назначаем интерфейсу wg0 приватный ключ и активируем его.

# ip link add dev wg0 type wireguard
# ip addr add 172.16.0.1/24 dev wg0
# wg set wg0 private-key ./private
# ip link set wg0 up

Команда ip a покажет новый интерфейс wg0

В качестве VPN-клиента под Windows 10 я использую TunSafe Утилиту TunSafe можно скачать по этой ссылке.

После установки утилиты, необходимо сгенерировать пару приватный/публичный ключ в меню «File-Generate Key Pair … -Randomize»

Настроим конфигурацию VPN-клиента через Edit Config. В открывшемся окне любого текстового редактора запишем следующие параметры для нашего тунеля. Обратите внимание, что здесь в секции [Interface] настраиваются праметры VPN-клиента, а в секции [Peer] — параметры VPN-сервера

[Interface]
### private key VPN-Client ###
PrivateKey = kPUmK46jo2Tdue4IRB6fm2FZaFITAEF72KmV6lQY83k=
### IP address for VPN-Clinet
Address = 172.16.0.2/24
[Peer]


### public key VPN-Server ###
PublicKey = qV4joe2XTr7ea8S5Xy8QKsMMaaiKPpCXFj2gr93qYxU=
### allowed IPs
AllowedIPs = 172.16.0.1/24
### IP address and port of VPN -Server
Endpoint = 192.168.91.236:32937
PersistentKeepalive = 25

Теперь продолжим настройку VPN-сервера. В каталоге /etc/wireguard создадим новый конфигурационный файл wg0.conf, в который запишем следующие настройки для сервера.
Обратите внимание, что здесь в секции [Interface] настраиваются параметры VPN-сервера, а в секции [Peer] — параметры VPN-клиента

[Interface]
### IP address VPN-Server
Address = 172.16.0.1/24
SaveConfig = false
### listening port of the VPN-Server
ListenPort = 32937
### private key VPN-Server ###
PrivateKey = wIiOVqvrytSqHhCjM1tjtlBKyuopHA5URRovXoJS4XE=


[Peer]
### public key VPN-Client ###
PublicKey = H1/T/oKzyne2/QvEIXZ5SkjBjEP3fYNyLnbjr/pCqlI=
### IP address VPN-Client ###
AllowedIPs = 172.16.0.2/32

WireGuard VPN-Server использует для своей работы протокол UDP Выполнив на сервере команду netstat -ulpen, вы можете определить порт, на котором работает наш сервер, в нашем случае порт 32937

После того, как мы создали конфигурацию на сервере, нам необходимо создать VPN wg сервис с помощью команды systemctl enable wg-quick@wg0.service , чтобы после перезагрузки сервера сохранить наши настройки. Выполнив комаду wg мы видим, что наш VPN-сервер работает

Теперь нажимает в TunSafe клиенте кнопку Сonnect и видим, что VPN-соединение установлено

Теперь проверяем на сервере, всё работает!

Вам также может понравиться

Аватар

About the Author: alexey

Добавить комментарий