
Tengo 2 máquinas ejecutando ubuntu 22.04, las llamaremos servidor y proxy. El proxy es un vps con una IP pública estática y el servidor se ejecuta detrás de un nat. Quiero enrutar todo el tráfico en algunos puertos del proxy al servidor.
He configurado un VPN Wireguard entre los 2 y ambos pueden hacer ping entre sí, si enrosco la dirección VPN del servidor desde el proxy obtengo la respuesta html correcta y configuro nginx en el proxy (que no es el final previsto). solución porque me gustaría enrutar otros servicios que no son http/https) me permite pasar proxy a la IP vpn y una vez más obtener la respuesta HTML correcta.
Pero no he podido configurar el reenvío usando iptables/ufw. Esta es mi configuración de Wiregaurd que incluye las reglas de enrutamiento de iptables en la interfaz activa.
Apoderado:
[Interface]
# Proxy with static ip
Address = 10.250.0.1/32
ListenPort = 23456
PrivateKey = {private key}
# packet forwarding
PreUp = sysctl -w net.ipv4.ip_forward=1
# port forwarding
PreUp = iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 10.250.0.2
PostDown = iptables -t nat -D PREROUTING -p tcp --dport 80 -j DNAT --to-destination 10.250.0.2
PreUp = iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to-destination 10.250.0.2
PostDown = iptables -t nat -D PREROUTING -p tcp --dport 443 -j DNAT --to-destination 10.250.0.2
[Peer]
# main_server behind nat
PublicKey = {pub key}
AllowedIPs = 10.250.0.2/32
Servidor:
[Interface]
Address = 10.250.0.2/32
ListenPort = 23456
PrivateKey = {priv key}
[Peer]
PublicKey = {pub key}
Endpoint = {proxy server ip}:23456
AllowedIPs = 10.250.0.0/16
PersistentKeepalive = 25
Al ejecutar sudo iptables-save -c
se devuelve lo siguiente
# Completed on Wed Aug 24 17:01:57 2022
# Generated by iptables-save v1.8.7 on Wed Aug 24 17:01:57 2022
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
[0:0] -A PREROUTING -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.250.0.2
[4:208] -A PREROUTING -p tcp -m tcp --dport 443 -j DNAT --to-destination 10.250.0.2
COMMIT
La cantidad de paquetes y bytes [4:208]
aumenta cada vez que intento acceder al proxy a través del navegador web.