Oli*_*Oli 15 linux networking users routing iptables
我实际上有两个场景来应用这个:
Multiseat Desktop:两个网络连接都与互联网网关和两个帐户在每个网络上执行带宽密集型任务。我想把它们分开,这样一个帐户只使用 eth0,第二个帐户只使用 eth1。
服务器:我在服务器上有两个 IP,我想确保邮件用户只从第二个 IP(eth0:1 别名)发送电子邮件
第二个可能是 IPTabled(我只是不知道如何)通过该接口路由电子邮件流量,但第一个将处理各种流量,因此需要基于用户。如果有基于用户的解决方案,我可以在两个地方都应用它。
小智 6
您将需要使用 iptables所有者模块,也许还需要一些巧妙的数据包处理。
owner 此模块尝试为本地生成的数据包匹配数据包创建者的各种特征。它仅在 OUTPUT 链中有效,即便如此,某些数据包(例如 ICMP ping 响应)可能没有所有者,因此永远不会匹配。
--uid-owner userid 如果数据包是由具有给定有效(数字)用户 ID 的进程创建的,则匹配。
--gid-owner groupid 如果数据包是由具有给定有效(数字)组 ID 的进程创建的,则匹配。
--pid-owner processid 如果数据包是由具有给定进程 ID 的进程创建的,则匹配。
--sid-owner sessionid 如果数据包是由给定会话组中的进程创建的,则匹配。