如何強制客戶端連接的SSH通過特定的接口進行通信?通過特定接口的SSH客戶端
我有一個服務器與eth0和eth1即,我想強制所有SSH客戶端通過eth0。所以當我的服務器上有很多ssh客戶端時,我可以通過eth1更快地訪問我的服務器。
編輯:這是啓動ssh客戶端連接的服務器。
如何強制客戶端連接的SSH通過特定的接口進行通信?通過特定接口的SSH客戶端
我有一個服務器與eth0和eth1即,我想強制所有SSH客戶端通過eth0。所以當我的服務器上有很多ssh客戶端時,我可以通過eth1更快地訪問我的服務器。
編輯:這是啓動ssh客戶端連接的服務器。
只告訴其他用戶eth0的ip地址。
你需要添加一些規則到「iptables」來轉發你從盒子發起的ssh流量到遠程機器。
iptables -A FORWARD -i eth1 -o eth2 -p tcp --dport 22 -d [destination ip] -j ACCEPT
你有沒有得到它與上述技巧工作? –
wtf,這將轉發從eth1到eth2通過路由器的連接。它對路由器的連接沒有任何影響。 – Navin
更新OPs編輯要求服務器端解決方案 - 這是客戶端。 對於臨時使用,您可以將選項綁定到來自特定IP或以太網端口的SSH。 ssh target_IP -b source_IP
更長期的解決方案更改路由表。
我試圖從172.x.x.7(eth0)ssh到172.x.x.69,它有另一個以太網端口172.x.x.8(eth1),這恰好是默認網關。
失敗,如果我嘗試直接噓 - 因爲這個源IP默認爲xxx8 eth1的,這是不是在外部防火牆規則允許0.69
# ssh 172.29.179.69 -l root
ssh: connect to host 172.x.x.69 port 22: Connection timed out
#
成功,當我綁定SSH到xxx7 IP( eth0)使用-b開關 - 此IP允許在防火牆規則中連接到.69。
# ssh 172.x.x.69 -b 172.x.x.7 -l root
Last login: Wed Nov 19 14:27:44 2014 from 172.x.x.7
#
在172.xx7我有兩個以太網端口和十.7 X.8
# ifconfig
eth0 Link encap:Ethernet HWaddr xxxxx
inet addr:172.x.x.7 Bcast:172.x.x.31 Mask:255.255.255.224
inet6 addr: xxx Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:27678 errors:0 dropped:0 overruns:0 frame:0
TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1852058 (1.7 MiB) TX bytes:684 (684.0 b)
eth1 Link encap:Ethernet HWaddr xxx
inet addr:172.x.x.8 Bcast:172.x.x.31 Mask:255.255.255.224
inet6 addr: xxx Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:72022 errors:0 dropped:0 overruns:0 frame:0
TX packets:34734 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:40788643 (38.8 MiB) TX bytes:4441314 (4.2 MiB)
我需要這個技巧的原因是路由表默認的eth1的,而不是eth0
# route (@172.x.x.7)
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
172.x.x.0 * 255.255.255.224 U 0 0 0 eth1
172.x.x.0 * 255.255.255.224 U 0 0 0 eth0
192.168.1.0 * 255.255.255.0 U 0 0 0 eth2
link-local * 255.255.0.0 U 1002 0 0 eth0
link-local * 255.255.0.0 U 1003 0 0 eth1
link-local * 255.255.0.0 U 1004 0 0 eth2
default 172.x.x.1 0.0.0.0 UG 0 0 0 eth1 # eth0 OK
#
我看到這並沒有回答這個問題,因爲OP談到了服務器eth0,這是前面簡單評論的「不要泄露祕密O&M IP」 我的答案解決了我今天遇到的問題。 – xcxc
你陳述的理由可能是錯誤的。除非SSH客戶端使用dong文件傳輸或隧道技術,否則流量非常零星。 – EJP
如果你是問題解決了,然後張貼你的答案或接受這裏給出的列表中的一個。如果你不想進一步調試,最好關閉這個問題或者刪除這個問題,因爲它不能解決發佈問題以尋求答案的目的,然後將它留在 –
ooops之間只是注意到我浪費了一大堆試圖回答一個2歲的問題 - 並仍然錯誤 – xcxc