====== Wireguard ======
===== Создание VPN подключения =====
**Сервер:** Debian (orange pi/raspberry pi)
**Клиент:** мобильный телефон Android
1. Получить белый IP-адрес у провайдера
2. Открыть порт 51830 или любой другой на роутере, который будет использован при поднятии сервера WireGuard
3. Зайти на *PI и обновить пакеты
apt update && apt upgrade -y
4. Установить WG
apt install -y wireguard
5. Перейти в директори ''/etc/wireguard'' и сгенерировать публичный и приватный ключ WG
wg genkey | tee /etc/wireguard/privatekey | wg pubkey | tee /etc/wireguard/publickey
6. Проверить сетевой интерфейс и использовать его в дальнейшей настройки
ip a (eth0 / wlan0 / etc.)
7. Создать файл конфигурацию командой ''vi /etc/wireguard/wg0.conf'' и указать настройки
[Interface]
PrivateKey =
Address = 10.0.0.1/24
ListenPort = 51830
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o -j MASQUERADE
8. Настраиваем IP форвардинг:
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p
9. Настраиваем IP форвардинг:
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p
10.Создаём ключи клиента:
wg genkey | tee /etc/wireguard/user_privatekey | wg pubkey | tee /etc/wireguard/user_publickey
11. Добавляем в конфиг сервера клиента ''vi /etc/wireguard/wg0.conf'':
[Peer]
PublicKey =
AllowedIPs = 10.0.0.2/32
Вместо — заменяем на содержимое файла /etc/wireguard/user_publickey
12. Перезагружаем systemd сервис с wireguard:
systemctl enable wg-quick@wg0
systemctl restart wg-quick@wg0
systemctl status wg-quick@wg0
13. На локальной машине (например, на ноутбуке) создаём текстовый файл с конфигом клиента ''vi user_wb.conf'':
[Interface]
PrivateKey =
Address = 10.0.0.2/32
DNS = 8.8.8.8 (192.168.1.1)
[Peer]
PublicKey =
Endpoint = :51830
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 20
Здесь '''' заменяем на приватный ключ клиента, то есть содержимое файла ''/etc/wireguard/user_privatekey'' на сервере. '''' заменяем на публичный ключ сервера, то есть на содержимое файла ''/etc/wireguard/publickey'' на сервере. '''' заменяем на IP сервера.
Полезные ссылки:
* https://mikkel.hoegh.org/2019/11/01/home-vpn-server-wireguard/
* https://t.me/t0digital/32
* https://profitserver.ru/knowledge-base/nastroyka-wireguard-vpn-na-svoem-servere
* https://4pda.to/forum/index.php?showtopic=1041048&st=980#entry119948787