OpenVPN permite que dos clientes se conecten entre sí sin usar globalmente de cliente a cliente

8

Estoy ejecutando OpenVPN 2.3.7 en CentOS 6. Estoy usando enrutamiento (tun) y tengo dos instancias de OpenVPN. En la segunda instancia, hay dos clientes que me gustaría que fueran visibles entre sí, es decir, ping, puertos de acceso, etc. Ambos están dentro de la misma subred, por lo que debería ser bastante sencillo, están configurados con direcciones estáticas a través de ccd.

Quiero que los dos clientes puedan verse entre sí a través de sus direcciones IP LAN de OpenVPN sin habilitar client-to-clienten el server.conf.

Estoy bastante seguro de que se puede hacer con iptables, que uso como mi firewall, aunque uso CSF, pero es un contenedor para iptables.

Estas son las direcciones IPv4 de los clientes:

OpenVPN Client #1: 10.8.2.14 
OpenVPN Client #2: 10.8.2.17

Necesito el cliente n. ° 1 para poder acceder a los servicios que se ejecutan en el cliente 2, y supongo que para el cliente de compatibilidad n. ° 2 ver el cliente n. ° 1 si se requiere una respuesta.

He intentado varias reglas de cadena FORWARD en el servidor OpenVPN, pero no puedo comunicarme entre los dos clientes. El servidor OpenVPN obviamente puede hacer ping a ambos clientes, los clientes pueden hacer ping a la puerta de enlace del servidor OpenVPN, los clientes obviamente no pueden verse.

Algunas reglas que ya he probado y no han funcionado:

iptables -A FORWARD -s 10.8.2.14 -d 10.8.2.17 -j ACCEPT
iptables -A FORWARD -s 10.8.2.17 -d 10.8.2.14 -j ACCEPT

Estoy buscando ayuda con iptables para que los dos clientes sean visibles entre sí, sin habilitar cliente a cliente, veo que este es un requisito especial para dos clientes y que no se necesita en ningún otro lugar.

La alternativa es exponer los servicios en el cliente VPN a través de NAT, pero prefiero evitar hacerlo por seguridad.

¡Cualquier idea sería útil!

Gracias,

James

James White
fuente
¿Puede publicar la salida ifconfigy la tabla de enrutamiento ( netstat -rn) de los dos nodos?
Oliver

Respuestas:

1

Le sugiero que haga lo contrario: habilite client-to-clienty luego use iptables para bloquear todos los clientes, excepto los dos que desea que se comuniquen entre sí.

pjz
fuente
1

Sé que esta pregunta es antigua, pero solo para aclarar eso a los nuevos usuarios que aún pueden estar visitando esta página:

si usa client-to-clientno puede usar el firewall, el servidor ni siquiera verá esos paquetes ya que nunca saldrán del servidor OpenVPN, por lo tanto, dado que no están llegando a la capa de host, no podrá usar el cortafuegos ya que no se alcanzará y sus reglas serían inútiles de esa manera.

Mateo
fuente