Как установить сервер WireGuard VPN на Ubuntu 20.04 | 18.04 

Как установить сервер WireGuard VPN на Ubuntu 20.04 | 18.04

 

Это краткое руководство показывает студентам и новым пользователям, как установить WireGuard VPN Server в Ubuntu 18.04 | 20.04.

WireGuard — это новая VPN (виртуальная частная сеть), работающая внутри ядра Linux. Его легко установить и настроить, и если вы ищете отличное программное обеспечение VPN с открытым исходным кодом для защиты вашего общения, WireGuard — отличное место для начала.

WireGuard использует одноранговый модуль VPN и, в зависимости от того, как вы его настраиваете, может выступать в качестве традиционного сервера или клиента VPN.

Если вы студент или новый пользователь, вы обнаружите, что проще всего начать изучение Linux с ОС Ubuntu Linux.

Это отличная операционная система Linux для начинающих.

Ubuntu — это операционная система Linux с открытым исходным кодом, которая работает на настольных компьютерах, ноутбуках, серверах и других устройствах.

Изучая Ubuntu, вы обнаружите, что Linux не так уж сильно отличается от Windows и других операционных систем во многих отношениях, особенно когда дело доходит до использования системы для выполнения работы.

Чтобы начать установку и настройку WireGuard, выполните следующие действия:

Шаг 1. Установите WireGuard Server

WireGuard имеет репозиторий PPA, который поддерживается в хорошем состоянии. Используйте этот репозиторий для установки WireGuard, чтобы ваша система могла установить их, когда будут доступны новые версии.

Чтобы добавить WireGuard PPA и установить оттуда, выполните приведенные ниже команды, чтобы получить обновление Ubuntu и установить некоторые базовые пакеты.

sudo apt update
sudo apt install software-properties-common

Затем добавьте репозиторий PPA и установите WireGuard. EnterПри появлении запроса нажмите . Это установит файл репозитория и обновит исходные коды пакетов системы.

Вторая команда устанавливает WireGuard.

sudo add-apt-repository ppa:wireguard/wireguard
sudo apt install wireguard

После установки WireGuard вы должны увидеть подобное сообщение, как показано ниже:

wireguard:
Running module version sanity check.
Original module
No original module exists within this kernel
Installation
Installing to /lib/modules/5.3.0-46-generic/updates/dkms/
depmod…
DKMS: install completed.

WireGuard установлен и готов к настройке.

Шаг 2. Настройте WireGuard

Теперь, когда вы установили WireGuard, выполните следующие действия, чтобы настроить его.

Во- первых, пойти и создать privateи publicключи. Эти ключи жизненно важны для работы VPN для безопасной связи.

Выполните следующие команды, чтобы создать общедоступный | пара закрытых ключей.

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

Эти ключевые файлы будут созданы и сохранены в /etc/wireguardкаталоге.

После создания пары ключей, указанной выше, вашей следующей задачей будет создание туннельного устройства, которое будет использоваться для маршрутизации трафика VPN.

Это можно сделать с помощью команды ip или wg .

Для упрощения управления вы можете создать файл туннеля и добавить в него его конфигурации.

Выполните приведенные ниже команды, чтобы создать файл туннеля с именем wg0.conf.

sudo nano /etc/wireguard/wg0.conf

Затем скопируйте и вставьте строки ниже в файл и сохраните.

[Interface]
Address = 10.0.2.8/24
SaveConfig = true
ListenPort = 51820
PrivateKey = paste server's private key here
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o enp0s3 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o enp0s3 -j MASQUERADE

Сохраните файл и выйдите.

Подробная информация о файле выше:

  • Адрес = сетевой интерфейс сервера, подключенный к Интернету. Это может быть IPv4 или IPv6
  • PrivateKey = закрытый ключ, созданный выше, хранящийся в файле / etc / wireguard / privatekey.
  • ListenPort = входящий порт, который WireGuard прослушивает
  • enp0s3 = должно соответствовать имени интерфейса на сервере. Некоторые системы будут иметь разные имена для своих интерфейсов.

Чтобы найти сведения о вашем сетевом интерфейсе, выполните следующие команды:

ip addr

Он должен выводить похожие строки, как показано ниже:

enp0s3: mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 08:00:27:af:cf:6b brd ff:ff:ff:ff:ff:ff
inet 10.0.2.8/24 brd 10.0.2.255 scope global dynamic noprefixroute enp0s3
valid_lft 932sec preferred_lft 932sec
inet6 fe80::4b36:b8a6:fdc9:ee72/64 scope link noprefixroute
valid_lft forever preferred_lft forever

После этого запустите приведенную ниже команду, чтобы активировать интерфейс туннеля и вызвать его.

sudo wg-quick up wg0
sudo systemctl enable wg-quick@wg0

Это должно вывести аналогичные строки, как показано ниже:

[#] ip link add wg0 type wireguard
[#] wg setconf wg0 /dev/fd/63
[#] ip -4 address add 10.0.2.8/24 dev wg0
[#] ip link set mtu 1420 up dev wg0
[#] iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o enp0s3 -j MASQUERADE

Чтобы убедиться, что туннельный интерфейс работает, выполните следующие команды:

sudo wg show wg0

Вы должны увидеть аналогичный результат, как показано ниже:

interface: wg0
public key: vGzuXr0nETkqGLg6abrVSCDe4C6tO5eWcIE8gdpRMAk=
private key: (hidden)
listening port: 51820

Поскольку VPN необходимо пересылать трафик, вам необходимо включить переадресацию IP.

Для этого выполните приведенные ниже команды, чтобы открыть указанный ниже файл конфигурации.

sudo nano /etc/sysctl.conf

Затем раскомментируйте строку ниже и сохраните..

#net.ipv4.tcp_syncookies=1

# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1
# Uncomment the next line to enable packet forwarding for IPv6
#  Enabling this option disables Stateless Address Autoconfiguration
#  based on Router Advertisements for this host
#net.ipv6.conf.all.forwarding=1

После этого выполните приведенные ниже команды, чтобы завершить настройку сервера. Это сохранит изменения в файле /etc/sysctl.conf и включит порт udp через брандмауэр.

sudo sysctl -p
sudo ufw allow 51820/udp

Это должно завершить настройку сервера WireGuard VPN.

Шаг 3. Настройка VPN-клиента

Теперь, когда сервер настроен выше, просто скачайте клиентское программное обеспечение VPN и подключитесь к серверу.

Загрузите клиентское программное обеспечение по ссылке ниже:

https://wireguard.com/install/

Запустите установку и откройте WireGuard для Windows.

Щелкните Добавить туннель -> Добавить пустой туннель

Затем должна открыться панель конфигурации, где вы настраиваете свой профиль подключения.

У моего клиента есть аналогичные предложения, как показано ниже:

[Interface]
PrivateKey = yDs+/sM7kA/IidaBmddJDTOGA/OtchTrfKI+LqKauFs=
Address = 10.0.2.15/24

[Peer]
PublicKey = 4OulabDoiELVCOuxDoQUVxtvSs7RZILspoI879TQTEE=
Endpoint = 10.0.2.8:51820
AllowedIPs = 0.0.0.0/0

Когда вы закончите, нажмите Сохранить.

Шаг 4: Добавьте клиентский ключ и IP-адрес на сервер

Последний шаг — добавить на сервер открытый ключ и IP-адрес клиента. Вы можете сделать это, выполнив следующие команды:

sudo wg set wg0 peer BzOkSfTUifmTAxlvqdi33E5Hv3EwGiG97efKNThnX3k= allowed-ips 10.0.2.15

Теперь, когда на сервер добавлен профиль клиента, вы можете подключиться.

Чтобы удалить профиль клиента с сервера, запустите комментарий ниже:

sudo wg set wg0 peer BzOkSfTUifmTAxlvqdi33E5Hv3EwGiG97efKNThnX3k= allowed-ips 10.0.2.15 remove

Вывод:

В этом посте показано, как установить WireGuard на Ubuntu 18.04 | 20.04. Если вы обнаружите какую-либо ошибку выше, пожалуйста, используйте форму комментария ниже, чтобы сообщить.

Спасибо!