日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ssh反向连接

發布時間:2025/3/21 编程问答 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ssh反向连接 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

http://c20031776.blog.163.com/blog/static/68471625201121115051135/



知識淺薄,歡迎指正。?< xmlnamespace ? prefix ="v" ns ="urn:schemas-microsoft-com:vml" ?/> ?LYB ? 2008.11.23

最近想在家里登錄公司的機器查看代碼,期間碰到了一些問題,因為公司里的機器是沒有對外IP的,而且請網管
做個端口映射也比較麻煩,所以在家里不能直接連接到公司的機器上。在網上搜索了一下,找到了ssh反向連接這
個解決方法,成功解決了不能直接連接的問題,并對反向連接的實現感興趣,按照自己的想法,寫了一個簡單的示
例。

SSH
反向連接的使用

1
、什么是反向連接?
反向連接是指主機A(受控端)主動連接主機B(控制端),在主機A和主機B之間建立一個遠程連接,通過這個連
接主機B可以主動的向主機A發送一些請求。

2
、為什么需要主機A主動去連接主機B呢?
這是因為主機A在局域網內,如果沒有對主機A進行端口映射,對于主機B來說主機A是不可見的,如果在主機B
邊向主機A發送連接請求,這個請求是不可達的。而主機B有自己獨立的IP,對于主機A來說是可見的,可以直接向
主機B請求連接。

3
SSH反向連接的過程
方法就是主機A主動去連接主機B,主機B響應主機A的連接請求,它們之間就建立了一個遠程連接。然后主機B
本地再創建一個本地連接,重定向到主機A和主機B剛才建立的遠程連接上,之后對這個本地連接的操作都會反饋到
遠程連接上去。整個過程類似于文件的DUP,這就在主機A和主機B之間建立了連接通道,此時對于主機B來說,主
A已經是可見了。

連接流程如下:
3.1
、主機A ? ssh客戶端向主機B ? sshd服務端發送請求,建立遠程連接。
3.2
、主機B ? sshd服務端創建本地連接很遠程連接的映射(反向連接通道)。
3.3
、主機B ? ssh客戶端向主機B ? sshd服務端的連接通道發送請求,建立主機B ? ssh和主機A ? sshd的連接。

完成連接后,主機A對于主機B可見的形式就是存在于主機B的那個本地連接。

4
、為什么需要在主機B對遠程連接映射一個本地連接?
反向連接就是CS架構,不過是受控端主動向控制端請求連接,讓它們之間的連接建立。傳統的CS方式是可以解決
主機A和主機B之間的連接問題,但是那樣主機A和主機B的連接方式并不靈活,兩者之間能做的事情,只能是CS之際
協議規定的事情。在主機B上建立了主機A的連接映射后,對于主機B來說主機A已經不是局域網內那臺不可見的主
機,主機A已經是存在主機B的一臺可見主機,這樣就消除了局域網和廣域網的阻礙。主機A和主機B之間建立的那
個遠程連接就是主機A和主機B的通道-網線

5
SSH反向連接的使用
要建立反向連接,首先在主機A上運行:

代碼:?全選

ssh ? -f -N -R 10000:localhost:22 lyb@3322.org


10000
是主機B上的本地連接端口, ? 22是主機B上遠程連接的那個端口,?lyb@3322.org是主機B的地址
連接上后,會需要輸入密碼。連接成功后,SSH反向連接就建立起來了。要連接到主機A,在主機B上運行:

代碼:?全選

ssh ? lyb@localhost -p 10000

即可。

使用的過程中碰到一個問題,就是在主機A上發起請求的時候,需要輸入密碼。如果我在家里,不可能跑到公
司了去輸入密碼。于是用ssh ? public key的方法和寫一個腳本來解決。腳本如下:

代碼:?全選

#!/bin/bash
while true;do
RET=`ps ax | grep "ssh -f -N -R 10000:localhost:22" | grep -v ? "grep"`
if [ "$RET" = "" ]; then
echo "restart ssh server"
ssh -f -N -R 10000:localhost:22 lyb@hahalee.3322.org
fi
sleep 10
done


腳本的作用就是監控反向連接的服務,在被異常中斷的時候重啟,使用了SSH公鑰后,也不必跑到公司輸入密
碼了。?

6
、簡單的反向連接示例
預告

我堅信,勝利是屬于我們的!

????

轉載于:https://blog.51cto.com/tarstingo/1574520

總結

以上是生活随笔為你收集整理的ssh反向连接的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。