wiki:wg-proxy
Это старая версия документа!
Настраиваем шлюз для маршрутизации по списку доступа.
маршрутизация с помощью Iptables, списки доступа ipset, получение ip поддоменов *.googlevideo.com или других из списка доступов - tshark (извлечение заголовков).
включаем шлюз:
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p
устанавливаем необходимые пакеты: iptables ipset tshark
на wire-in конфиг /etc/wireguard/wg0.conf
root@p621665:~# cat /etc/wireguard/wg0.conf
[Interface]
PrivateKey = [WG-IN privatekey]
Address = 10.0.0.1/24
ListenPort = 51820
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
[Peer]
PublicKey = [WG-OUT publickey]
AllowedIPs = 10.0.0.2/32, 192.168.31.5/32 # IP proxy-wireguard-gate в туннеле и локальный IP
PersistentKeepalive = 25
root@p621665:~#
Генерируем приватный ключ:
wg genkey > privatekey
Генерируем публичный ключ на основе приватного:
wg pubkey < privatekey > publickey
или
wg genkey | tee privatekey | wg pubkey > publickey
Конфиг шлюза:
[Interface]
PrivateKey = [host privatekey]
Address = 10.0.0.2/24
ListenPort = 51820
[Peer]
PublicKey = [peer public]
AllowedIPs = 0.0.0.0/0 # Весь трафик будет идти через туннель (пока iptables не вмешается)
Endpoint = 109.120.141.194:51820
PersistentKeepalive = 25
Тестируем туннель:
wg-quick down wg0
wg-quick up wg0
на обоих хостах
wg
чекаем latest handshake
Если всё работает, то:
systemctl enable wg-quick@wg0
systemctl start wg-quick@wg0
Настраиваем маршрутизацию для клиентов на шлюзе
echo "net.ipv4.ip_forward=1" > /etc/sysctl.d/99-forward.conf
iptables -t nat -A POSTROUTING -o wg0 -j MASQUERADE
(странно, не уверен, что это надо делать, проверить forward=1)
wiki/wg-proxy.1755112731.txt.gz · Последнее изменение: — admin
