it-swarm-es.com

¿Puedo limitar un usuario (y sus aplicaciones) a una interfaz de red?

En realidad, tengo dos escenarios para aplicar esto:

  1. MultiSeat Desktop: Dos conexiones de red, tanto con pasarelas de acceso a Internet como con dos cuentas que realizan tareas intensivas en ancho de banda en cada una. Quiero dividirlos, por lo que una cuenta solo usa ETH0 y la segunda cuenta solo usa eth1.

  2. Servidor: Tengo dos IPs en un servidor y quiero asegurarme de que el usuario de correo solo envíe un correo electrónico desde el segundo IP (eth0: 1 alias)

El segundo probablemente puede estar despedido (simplemente no sé cómo) enrutar el tráfico de correo electrónico a través de esa interfaz, pero la primera se ocupará de todo tipo de tráfico, por lo que debe ser basado en el usuario. Si hay una solución basada en el usuario, podría aplicar esto en ambos lugares.

15
Oli

Querrá utilizar el módulo IPTables propietario y quizás un paquete inteligente de paquete.

propietario Este módulo intenta igualar varias características del Creador de paquetes, para paquetes generados localmente. Solo es válido en la cadena de salida, e incluso entonces algunos paquetes (como las respuestas de Ping de ICMP) pueden no tener propietario, y por lo tanto, nunca coinciden.

- El propietario de la unidad de usuario coincide si el paquete fue creado por un proceso con el ID de usuario efectivo (numérico) dado.

- GROUPID GROUPID GIDIET Si el paquete fue creado por un proceso con el ID de grupo efectivo (numérico) dado.

- Los procesos del propietario de PID coinciden si el paquete fue creado por un proceso con el ID de proceso dado.

- La sesión de la sesión del propietario de SID, se coincide si el paquete fue creado por un proceso en el grupo de la sesión dado.

6
Li Lo

Puede configurar dos máquinas virtuales en la máquina física, y configurar la interfaz de red de puente para que uno VM usa eth0 y el otro VM usa eth1. Consulte la sección de documentación de la caja virtual en la red puente .

7
Wim Coenen

No estoy seguro de que sea posible para el primer punto. Desea hacer una manipulación de enrutamiento según el usuario del usuario. La última vez que comprobo, no vi esta posibilidad.

Para el segundo punto, eso no es IPTables que desea usar, sino IPRUTE2 (http://larc.org/howto/ y http://www.policyrouting.org/iproute2.doc.html para el documento completo). Es el reemplazo de los comandos de IFCONFIG/RUTA, ya que se consideran obsoletos. iPrUtee2 Permitir que ruya los paquetes de acuerdo a su origen. Eso es lo que quieres

1
Luc Stepniewski