Ssh
如何將所有流量從特定埠路由到特定網路介面?
我有以下設置:
具有連接到兩個不同路由器的兩個網卡的電腦。第一個路由器將來自埠 5122 的所有外部流量重定向到埠 22。這樣我就可以使用 ssh 連接到機器。
我希望僅將第一個路由器用於 ssh 連接。沒有其他的。所以我希望通過第二個路由器引導所有其他流量。
我怎樣才能做到這一點?
像這樣:
1.標記數據包
在每個前往埠 5122 的數據包上設置一個標記。
iptables -A PREROUTING -t mangle -p tcp --dport 5122 \ -j MARK --set-mark 1
如果您想將其限制為目標 ip 為 10.10.10.10 的數據包,或者像這樣:
iptables -A PREROUTING -t mangle -p tcp -d 10.10.10.10/32 --dport 5122 \ -j MARK --set-mark 1
2.創建路由表/規則
使用規則創建路由表,以將其用於標記的數據包。
echo 201 ssh5122.out >> /etc/iproute2/rt_tables ip rule add fwmark 1 table ssh5122.out
3.添加路線
添加路由表對應的路由。
ip route add default via $ssh_router_ip dev $ssh_router_interface \ dev table ssh5122.out
那應該行得通。