Краткий гайд по настройке wireguard на своем сервере.
Обновляем пакеты на сервере
Устанавливаем wireguard
Генерируем ключи wireguard-сервера
Сгенерированные публичный и приватный ключи будут сохранены в соответствующих файлах
/etc/ wireguard/ privatekey publickey
Проверим, как называется сетевой интерфейс
Скорее всего сетевой интерфейс будет eth0.
Создаем конфиг для сетевого интерфейса
Выглядеть он будет так:
Файл с конфигурацией wireguard-сервера находится в этой же папке
/etc/ wireguard/ privatekey publickey wg0.conf
В примере в строках PostUp и PostDown использован сетевой интерфейс eth0 (у Вас может быть и другой). Вставляем вместо [privatekey] содержимое файла /etc/wireguard/privatekey.
Настраиваем ip форвардинг:
Включаем systemd демон с wireguard:
systemctl enable wg-quick@wg0.service systemctl start wg-quick@wg0.service systemctl status wg-quick@wg0.service
Создаем ключи клиента:
Они появляются в каталоге
/etc/ wireguard/ client_privatekey client_publickey privatekey publickey wg0.conf
Добавляем в конфиг сервера клиента:
Запись клиента
[Peer] PublicKey = [client_publickey] AllowedIPs = 10.0.0.2/32
Вставляем вместо [client_publickey] содержимое файла /etc/wireguard/client_publickey.
Выглядеть, в итоге, он будет так:
Перезагружаем systemctl сервис с wireguard
systemctl restart wg-quick@wg0 systemctl status wg-quick@wg0
На ЛОКАЛЬНОЙ машине (клиенте) создаем текстовый файл с конфигом клиента
[Interface] PrivateKey = [client_privatekey] Address = 10.0.0.2/32 DNS = 8.8.8.8 [Peer] PublicKey = [publickey] Endpoint = [server-ip]:51830 AllowedIPs = 0.0.0.0/0 PersistentKeepalive = 20
Вставляем вместо [client_privatekey] содержимое файла /etc/wireguard/client_privatekey, вместо [publickey] - /etc/wireguard/publickey, [server-ip] заменяем на ip сервера.
Этот конфигурационный файл открываем в wireguard-клиенте телефона или компьютера.
Например, в Ubuntu это выглядит так: Заходим в "Настройки", далее "Сеть". Нажимаем "+", чтобы добавить "VPN". Выбираем "Импортировать из файла".
Находим созданный ранее Вами файл с конфигурацией клиента и открываем его.
Можно включать и использовать.
Параметры конфигурации, подключенных пользователей, количество переданного трафика и т.п. моджно посмотреть с помощью команды: