由于多個員工都需要通過外網訪問辦公室內網里的電腦,而路由可配置的端口轉發規則數量有限,規則條數很可能不夠用。要給每一個員工電腦都配置一條端口轉發規則,又該如何處理呢?
P.S. 本文較偏技術向,具備一定的IT或運維經驗會更容易上手哦
1、解決思路
路由的端口轉發有一個非常棒的特性,可以在一條規則里,指定一個范圍的多個外網端口,轉發到一定范圍的多個內網端口。如下圖所示:
“虛擬服務器” 規則設置——1對多
然后我們需要做的是,在內網中自己實現端口分發,即把從不同外網端口進來的數據,轉發給不同的內網電腦。而,這個分發的工作也有一個非常成熟的工具可以完成,那就是Linux系統里的ssh隧道技術。(隧道技術的原理就不在這里贅述,感興趣可以網上搜一下相關資料)
2、效果實現
跟隨以下6個步驟就可以完成配置了:
1、在內網找一臺電腦安裝Linux操作系統,常見的比如Centos,Ubuntu等。
2、獲取這臺Linux電腦的內網IP。
3、按照前面的圖示,在路由里將Linux電腦的內網IP設置為“內網服務器IP”。
4、接下來是配置ssh隧道的示例。
▶ 假設路由上配置的外網端口是20000-21000,內網端口是30000-31000。那么外網端口20000的數據會被路由轉發至Linux電腦的30000端口上。
▶ 假設我們要分配外網端口20000給內網的某臺Windows電腦,這臺Windows電腦的內網IP是192.168.1.100。
▶ 打開Linux電腦的終端(樣子跟Windows的命令提示符很像),輸入下面的指令,然后回車:
ssh -f -N -L 0.0.0.0:30000:192.168.1.100:3389 root@127.0.0.1.1
▶ 回車后,會要求輸入一次root密碼。輸入密碼后回車,如無報錯,即成功。
▶ 簡單解釋一下,這條命令的作用是:在Linux電腦里,將來自30000端口的數據轉發到IP為192.168.1.100的電腦的3389端口上。
5、確認一下Linux電腦上的防火墻是否已經為內網端口(示例里的:30000-31000)開放了訪問權限,沒有就加一下。
6、按照第4步的示例,繼續為其他內網電腦分配端口。將各自的參數替換隧道命令的相應數字即可。下面再展示一下隧道命令的格式:
ssh -f -N -L 0.0.0.0:
最后,在家里的電腦上發起遠程桌面,請求的對象是辦公室的公網IP(或者動態域名)+端口20000。這個請求會被辦公室的Linux電腦轉發給內網IP為192.168.1.100的Windows電腦的遠程桌面監聽端口3389。一路狂點,即可完成遠程桌面連接。
希望技術大大的這篇分享能在各位配置Windows遠程桌面時派上用場。
推薦閱讀:
深圳電信寬帶、重慶電信寬帶、昆明電信寬帶、貴陽電信寬帶、長沙電信寬帶、成都電信寬帶、廈門電信寬帶、上海電信寬帶、北京電信寬帶、呼和浩特電信寬帶、拉薩電信寬帶、石家莊電信寬帶、沈陽電信寬帶、長春電信寬帶、哈爾濱電信寬帶、濟南電信寬帶、合肥電信寬帶、杭州電信寬帶、武漢電信寬帶、福州電信寬帶、南昌電信寬帶、?陔娦艑拵、南京電信寬帶、南寧電信寬帶、貴陽電信寬帶、烏魯木齊電信寬帶、蘭州電信寬帶