利用ssh建立網路轉發通道
這兩天由於遇到公司的vpn不能撥,只有一臺對外的windows伺服器。於是就想到了利用這個伺服器進行埠對映。
windows下就使用portmap這個埠對映工具就可以很方便的實現這個功能。而且容易理解。沒兩下就搞定了。然後想到了如果這臺是unix類的伺服器,那該如何實現這個埠的對映呢?
記得以前使用過haproxy這個工具來實現。採用配置檔案的方式,執行該命令,然後轉發埠即可。如果沒記錯的話當時是隻支援udp的,而不支援tcp。
以前也碰到過這個問題,也看到了ssh的這種實現方式,但是那時的技術基礎還理解不了這個概念。
ssh埠對映命令格式:
ssh -p [port] -f -N -g -L dst_port:tunnel_host:src_host
引數:
-p: 指定連線到src_host主機的埠(ssh埠);
-f: 後臺執行該對映命令;
-N: 不執行遠端命令,在只是轉發埠時很有用(如果不指定該引數,則將會登入到遠端主機);
-g: 允許遠端主機連線本地轉發埠;
-L: 將本地埠對映到遠端主機埠;
-C: 執行資料壓縮;
-R: 將遠端主機埠對映到本級埠。
假設,有主機A和B(均為unix系統,且ssh埠都為22),想要用A來對映B的1521埠,則有(假設當前在A上):
ssh -p 22 -f -N -g -L 15210:host_A:1521
這樣就實現了埠的轉發,即我從主機A上訪問15210埠就是訪問了B上的1521埠。也就是說主機A承擔了轉發的中間管道(第15210號管道)的作用。透過這個管道我們就直接訪問到了B。
與-L並行的還有-R和-D引數。
另外ssh在對映的之前,有個引數對是否可以開通對映做了限制:
AllowTcpForwarding yes/no
如果是yes就可以進行埠對映,反之則不行。
該引數在/etc/ssh/sshd_config這個檔案中設定。
這個引數我在solaris 10裡面發現了,在8裡面卻連/etc/ssh這個目錄都沒有,有的系統有這個配置檔案,但是沒有這個引數。不知道是不是ssh版本引起的。
兩個參考連結:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12932950/viewspace-573247/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 如何利用SSH通道來連線遠端的MysqlMySql
- 利用Win32的網路函式建立一個網路瀏覽器 (轉)Win32函式瀏覽器
- ssh埠轉發(ssh隧道)
- [SSH服務]——SSH埠轉發
- SSH 埠轉發
- SSH埠轉發
- 玩轉SSH埠轉發
- 利用回撥函式和CSocket建立網路程式 (轉)函式
- Hyperledger Fabric開發(二):建立網路
- 利用網路請求將網路圖片轉換成Bitmap格式
- Mac下利用SSH進行傳輸檔案(轉)Mac
- 容器網路流量轉發分析
- centos7配置網路及sshCentOS
- 1、實戰SSH埠轉發
- 什麼是SSH埠轉發(本地轉發、遠端轉發、動態轉發)?
- C/C++利用Boost::Asio網路庫建立自己的Socket伺服器C++伺服器
- 利用ssh傳輸檔案
- ssh埠轉發(之kettle ssh方式連線資料庫)資料庫
- 劫持SSH會話注入埠轉發會話
- 在 Fedora 上使用 SSH 埠轉發
- 8、SSH埠轉發情景模擬
- ssh埠轉發的深入例項
- 如何利用社交媒體建立關係網?
- 利用github pages建立簡單的網站Github網站
- Azure CDN 為靜態網站建立內容分發網路網站
- appium 是否有轉發 adb 命令的通道APP
- 警惕黑客利用“新冠肺炎”熱詞發起網路攻擊黑客
- Go 併發 -- 通道Go
- Hyperledger Fabric無系統通道啟動及通道的建立和刪除
- Windows XP 利用TC快速建立檔案列表(轉)Windows
- SSL數字證書為網際網路提供加密傳輸通道加密
- 建立防火牆的主動性網路安全體系(轉)防火牆
- 二層網路資料轉發模式模式
- 設定 SSH 隧道(埠轉發)實戰
- 建立OWA HTTP轉發HTTP
- [ssh訪問內網伺服器]使用Natapp來進行內網埠轉發內網伺服器APP
- 攜程App網路服務通道治理和效能優化APP優化
- 利用網際網路找工作簡單麼