@@ -42,7 +42,9 @@ Ambos deben cargar módulos dinámicamente desde modules sin conocer de antemano
4242│ │ ├─ ip_05_loopback.sh
4343│ │ ├─ ip_10_whitelist.sh
4444│ │ ├─ ip_20_allowlist_ports.sh
45- │ │ ├─ ip_30_openvpn.sh
45+ │ │ ├─ ip_22_docker_dns_egress.sh
46+ │ │ ├─ ip_30_openvpn_server.sh
47+ │ │ ├─ ip_31_openvpn_sitetosite.sh
4648│ │ ├─ ip_35_tcpfilter_chain.sh
4749│ │ ├─ ip_40_tcp_ssh.sh
4850│ │ ├─ ip_42_l4d2_tcp_protect.sh
@@ -54,7 +56,9 @@ Ambos deben cargar módulos dinámicamente desde modules sin conocer de antemano
5456│ ├─ nf_35_l4d2_tcpfilter_chain.sh
5557│ ├─ nf_10_whitelist.sh
5658│ ├─ nf_20_allowlist_ports.sh
57- │ ├─ nf_30_openvpn.sh
59+ │ ├─ nf_22_docker_dns_egress.sh
60+ │ ├─ nf_30_openvpn_server.sh
61+ │ ├─ nf_31_openvpn_sitetosite.sh
5862│ ├─ nf_40_tcp_ssh.sh
5963│ ├─ nf_42_l4d2_tcp_protect.sh
6064│ ├─ nf_45_http_https_protect.sh
@@ -77,17 +81,17 @@ Notas:
7781
7882Cada módulo debe implementar funciones con namespace del módulo para evitar colisiones.
7983
80- Ejemplo para modules/ip/ip_30_openvpn .sh:
84+ Ejemplo para modules/ip/ip_30_openvpn_server .sh:
8185
82- - ip_30_openvpn_metadata
83- - ip_30_openvpn_validate
84- - ip_30_openvpn_apply
86+ - ip_30_openvpn_server_metadata
87+ - ip_30_openvpn_server_validate
88+ - ip_30_openvpn_server_apply
8589
86- Ejemplo para modules/nf/nf_30_openvpn .sh:
90+ Ejemplo para modules/nf/nf_30_openvpn_server .sh:
8791
88- - nf_30_openvpn_metadata
89- - nf_30_openvpn_validate
90- - nf_30_openvpn_apply
92+ - nf_30_openvpn_server_metadata
93+ - nf_30_openvpn_server_validate
94+ - nf_30_openvpn_server_apply
9195
9296### Formato de metadata (salida KEY=VALUE)
9397
@@ -236,10 +240,10 @@ Recomendaciones:
236240
2372411 . iptables.rules.sh invoca preload.
2382422 . Descubre ` ip_*.sh ` en ` modules/ip ` + ` modules/ ` .
239- 3 . Carga ip_30_openvpn .sh.
243+ 3 . Carga ip_30_openvpn_server .sh.
2402444 . Lee metadata y resuelve VPN_PORT por CLI/.env/default.
241- 5 . Ejecuta ip_30_openvpn_validate .
242- 6 . Ejecuta ip_30_openvpn_apply .
245+ 5 . Ejecuta ip_30_openvpn_server_validate .
246+ 6 . Ejecuta ip_30_openvpn_server_apply .
2432477 . Repite con el resto de módulos.
2442488 . Ejecuta postload con resumen final.
245249
@@ -286,7 +290,9 @@ sudo ./nftables.rules.sh --set TYPECHAIN=2 --set VPN_PORT=1194
286290| Loopback | ` ip_05_loopback ` | Integrado en ` nf_chain_setup ` | ✅ Equivalente funcional |
287291| Whitelist IP | ` ip_10_whitelist ` | ` nf_10_whitelist ` | ✅ Implementado |
288292| Allowlist de puertos | ` ip_20_allowlist_ports ` | ` nf_20_allowlist_ports ` | ✅ Implementado |
289- | OpenVPN base | ` ip_30_openvpn ` | ` nf_30_openvpn ` | ✅ Implementado |
293+ | DNS egress Docker | ` ip_22_docker_dns_egress ` | ` nf_22_docker_dns_egress ` | ✅ Implementado |
294+ | OpenVPN server | ` ip_30_openvpn_server ` | ` nf_30_openvpn_server ` | ✅ Implementado |
295+ | OpenVPN site-to-site | ` ip_31_openvpn_sitetosite ` | ` nf_31_openvpn_sitetosite ` | ✅ Implementado |
290296| Cadena TCP anti-spam | ` ip_l4d2_tcpfilter_chain ` | ` nf_l4d2_tcpfilter_chain ` (compat/no-op) | ✅ Implementado |
291297| SSH base | ` ip_40_tcp_ssh ` | ` nf_40_tcp_ssh ` | ✅ Implementado |
292298| Protección TCP L4D2 | ` ip_l4d2_tcp_protect ` | ` nf_l4d2_tcp_protect ` | ✅ Implementado |
0 commit comments