WireGuard VPN Server: как настроить самому
Содержание
Как самому установить и настроить VPN-сервер WireGuard? В качестве примера будем настраивать Ubuntu 20.04 в качестве VPN-сервера WireGuard.
WireGuard — это бесплатный, современный и быстрый VPN с открытым исходным кодом и ультрасовременной криптографией. Он быстрее и проще по сравнению с IPSec и OpenVPN. Первоначально он был выпущен для ядра Linux, но получил кроссплатформенную поддержку и для других операционных систем. В этой статье объясняется, как установить и настроить WireGuard VPN на сервере Ubuntu 20.04 LTS Linux.
Настройка VPN-сервера WireGuard
Наш пример настройки включает простое подключение между облачным сервером, на котором работает сервер Ubuntu 20.04 LTS, и настольным клиентом.
Обновите свою систему
Запустите команды, чтобы установить обновления безопасности Ubuntu 20.04:
sudo apt update
sudo apt upgrade
Установка VPN-сервера WireGuard на Ubuntu 20.04 LTS
Теперь, когда мы обновили пакеты на нашем сервере с последними исправлениями безопасности, пришло время настроить VPN-сервер WireGuard на сервере Ubuntu 20.04 устанавливается командой:
sudo apt install wireguard
Настройка сервера WireGuard
Сначала нам нужно создать пару: закрытый и открытый ключ для сервера WireGuard. Перейдем в /etc/wireguard с помощью команды cd. Для просмотра созданных ключей используйте команду cat и команду ls:
sudo -i
mkdir -m 0700 /etc/wireguard/
cd /etc/wireguard/
umask 077; wg genkey | tee privatekey | wg pubkey > publickey
ls -l privatekey publickey
cat privatekey
Настройки WireGuard VPN на Ubuntu через редактирование wg0.conf
Измените или создайте файл /etc/wireguard/wg0.conf и добавьте следующие директивы конфигурации:
sudo nano /etc/wireguard/wg0.conf
[Interface] ## My VPN server private IP address ## Address = 192.168.6.1/24 ## My VPN server port ## ListenPort = 41194 ## VPN server's private key i.e. /etc/wireguard/privatekey ## PrivateKey = eEvqkSJVw/7cGUEcJXmeHiNFDLBGOz8GpScshecvNHU=
Открыть порт в фаерволле UFW
Если у вас уже настроен UFW, то необходимо лишь открыть порт UDP 41194 с помощью команды ufw следующим образом:
sudo ufw allow 41194/udp
sudo ufw status
Включить и запустить службу WireGuard
Включите службу WireGuard во время загрузки с помощью команды systemctl, выполните: Запустите службу, выполните:
sudo systemctl enable wg-quick@wg0
sudo systemctl start wg-quick@wg0
Получите статус службы, выполните:
sudo systemctl status wg-quick@wg0
Убедитесь, что интерфейс с именем wg0 запущен и работает на сервере Ubuntu с помощью команды:
sudo wg
sudo ip a show wg0
Настройка клиента Wireguard VPN
Процедура установки и настройки VPN-клиента аналогична настройке сервера. Давайте установим клиент на рабочий стол Ubuntu Linux 20.04 LTS:
sudo apt install wireguard
Далее нам нужно создать конфигурацию VPN-клиента:
sudo sh -c 'umask 077; touch /etc/wireguard/wg0.conf'
sudo -i
cd /etc/wireguard/
umask 077; wg genkey | tee privatekey | wg pubkey > publickey
ls -l publickey privatekey
cat privatekey
Отредактируйте файл /etc/wireguard/wg0.conf: добавьте следующие директивы:
sudo nano /etc/wireguard/wg0.conf
[Interface] ## This Desktop/client's private key ## PrivateKey = uJPzgCQ6WNlAUp3s5rabE/EVt1qYh3Ym01sx6oJI0V4= ## Client ip address ## Address = 192.168.6.2/24 [Peer] ## Ubuntu 20.04 server public key ## PublicKey = qdjdqh2+N3DEMDUDRob8K3b+9BZFJbT59f+rBrl99zM ## set ACL ## AllowedIPs = 192.168.6.0/24 ## Your Ubuntu 20.04 LTS server's public IPv4/IPv6 address and port ## Endpoint = 172.105.112.120:41194 ## Key connection alive ## PersistentKeepalive = 15
Включите и запустите VPN-клиент/одноранговое соединение, запустите:
sudo systemctl enable wg-quick@wg0
sudo systemctl start wg-quick@wg0
Разрешить клиенту и серверу Ubuntu подключение через VPN
Нам нужно разрешить соединение между клиентским компьютером и сервером. Давайте вернемся к нашему серверу Ubuntu 20.04 LTS и отредактируем файл wg0.conf, чтобы добавить информацию [Peer] (клиент) следующим образом:
sudo systemctl stop wg-quick@wg0
sudo nano /etc/wireguard/wg0.conf
Добавьте следующую конфигурацию:
[Peer] ## Desktop/client VPN public key ## PublicKey = u2ao8GNNUWAirtjq0eL1UpHVkMep5/EUalbZcdH0imc= ## client VPN IP address (note the /32 subnet) ## AllowedIPs = 192.168.6.2/32
Сохраните и закройте файл. Затем снова запустите службу:
sudo systemctl start wg-quick@wg0
Проверка
Вот и все, ребята. К настоящему времени и серверы, и клиенты Ubuntu должны быть безопасно подключены с использованием одноранговой VPN под названием WireGuard. Проверим соединение. Введите следующую команду ping на клиентском компьютере/настольном компьютере:
ping -c 4 192.168.6.1
sudo wg
Вывод
Поздравляем! Вы только что узнали о настройке VPN-сервера WireGuard на сервере Ubuntu 20.04 LTS и пире (клиентской машине) на рабочем столе Убунту. Я настоятельно рекомендую вам ознакомиться с документацией проекта WireGuard здесь.