WireGuard

https://youtu.be/03RCvhwcoN0 - WireGuard. Настраиваем быстрый VPN (Johe News)
https://youtu.be/_hiYI7ABnQI - Свой VPN на WireGuard за 5 минут - инструкция как установить на виртуальный сервер (Александр Богданов)
https://youtu.be/tpKCndNFEOU - Когда отключат интернет и что будет с YouTube в России / Настройка VPN WireGuard на OpenWrt роутере (Александр Богданов)
https://youtu.be/XvbY-xY5dWY - Свой WireGuard VPN сервер. Настройка VPN для windows 10 и Android. Подробная инструкция. С помощью PiVPM (Виталий Кулиев)
https://youtu.be/5Aql0V-ta8A - WireGuard VPN — лучше платных сервисов и проще OpenVPN. Полная настройка WireGuard! Про iptables (Диджитализируй!)
https://youtu.be/D7Zp2yjjzV4 - Wireguard. Настройка топологий Point to Point, Star, Mesh. Маршрутизация через Wireguard. Тесты. Про разные топологии. (Иван Глазков)
https://youtu.be/Cr2PQGswf6Q - Wireguard. Маршрутизация за сервер и KeepAlive пакеты. Про маршрутизацию через WireGuard. (Иван Глазков)
https://habr.com/ru/company/inDrive/blog/586006/ - WireGuard. How it was

WIREGUARD ALLOWEDIPS CALCULATOR
есть способы управления маршрутизацией через PreUp и PostDown.


https://www.cyberciti.biz/faq/debian-10-set-up-wireguard-vpn-server/ mht - Debian 10 set up WireGuard VPN server
https://andreyex.ru/debian/kak-ustanovit-vpn-server-i-klient-wireguard-na-kompyuter-s-debian-linux/ mht - Как установить VPN-сервер и клиент Wireguard на компьютер с Debian Linux


Установка Wireguard на Linux
Установка Wireguard на Linux с помощью ansible


sudo systemctl enable wg-quick@wg0 - активировать
systemctl start wg-quick@wg0 - старт сервера
wg show - показать статистику
wg syncconf wg0 <(wg-quick strip wg0) - перегрузить конфигурацию без перегрузки сервиса

Генерация клиента

wg genkey | tee /etc/wireguard/client_name_privatekey | wg pubkey | tee /etc/wireguard/client_name_publickey
client_name.conf
[Interface]
PrivateKey = <client private key>
Address = <client_ip>/32
DNS = 8.8.8.8
 
[Peer]
PublicKey = <server public key>
Endpoint = <server_ip>:<server_port>
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 20
qrencode -t ansiutf8 < client_name.conf
qrencode -t png -d 120 -o clientqr.png < client_name.conf
wg0.conf
....
# --- client_name
[Peer]
PublicKey = <client_publickey>
AllowedIPs = <client_ip>/32

sudo tcpdump -i wg0 host 192.168.77.1