El jueves, 21 de enero de 2021 05:05:44 -03 Imeneo Tirinto escribió: > Hola. > > A ver si me podeis ayudar. Tengo un servidor al que le he instalado una VPN > con Wireguard para poder utilizar en exclusiva los servicios instalados > (Apache, Emby, etc). Los servicios funcionan correctamente y puedo acceder > a ellos desde una IP pública (duckdns) abriendo los puertos > correspondientes en el router (80, 443, 8096...). Es decir, en el router > tiene definidas las reglas 192.168.1.100 -> TCP -> 80 por ejemplo. > > El problema es que cuando lanzo el Wireguard los servicios citados siguen > accesibles para cualquiera que tenga la dirección IP pública (duckdns). Yo > quiero restringir el acceso a los clientes definidos en Wireguard. > > Supongo que la solución es definir reglas con Iptables para redirigir el > tráfico desde el dispositivo eth0 a wg0. Es decir, por ejemplo, que todo el > tráfico del puerto 80 que entra a través de la ip 192.168.1.100 definida en > eth0, se redirija a wg0. > > El problema es que no sé cómo hacerlo. Agradecería alguna ayuda o > documentación. > > Gracias.
hola. si te he entendido bien. lo que puedes usar es con un Firewall. particularmente uso Firewalld, pero puedes usar ufw o directamente editando las reglas de iptables ó nftables segun sea el caso. ahora con firewalld es facil manejar zonas. agregas eth0 a la zona public, por defecto abre el puerto ssh(22) si quieres que accedan a algun puerto via ip publica lo agregas aca. ejemplo firewall-cmd --permanent --zone=public --add-interface=eth0 firewall-cmd --zone=public --permanent --add-service=http despues para dar libre acceso a la VPN firewall-cmd --permanent --zone=trusted --add-interface=wg0 firewall-cmd --reload con lo anterior con ip publica tendras acceso al puerto 80 y ssh y la vpn podra acceder a cualquier servicio. -- - | Walter Casanova | - - | Gnu / Linux - SysAdmin | -