SSH隧道與端口轉發及內網穿透

如果你遇到了以下問題,那麼你應該閱讀這篇文章
我聽說過這種技術,我對它很感興趣
我想在家裏訪問我在公司的機器(寫程序,查數據,下電影)。
公司爲了防止我們用XX軟件封鎖了它的端口或者服務器地址。
公司不讓我們上XX網站,限制了網址甚至IP。
公司不讓我們看關於XX的信息,甚至花血本買了XX設備,能夠對內容進行過濾。一看XX內容,鏈接就中斷了。
我爸是搞電腦的,他在家裏的路由器上動了手腳,我不能看XXX了。
帶着這些問題,我們先從什麼是ssh隧道開始。
什麼是SSH隧道
首先看下面這張圖,我們所面臨的大部分情況都和它類似。我們的電腦在右上角,通過公司帶有防火牆功能的路由器接入互聯網(當然可能還有交換機什麼的在中間連接着你和路由器,但是在我們的問題中交換機並不起到什麼關鍵性的作用)。右下腳的部分是一個網站的服務器,它是我們公司防火牆策略的一部分,也就是說公司不希望我們訪問這個服務器。在右上角還有一臺機器,它也是屬於我們的。但是這臺機器並不在我們公司裏面,換句話說他不受到公司防火牆的限制。最後也是最重要的一點是,我們能夠在公司通過互聯網直接訪問這臺機器。或者說這臺位於公司防火牆外面的機器需要擁有一個獨立的互聯網IP,同時公司的防火牆規則不會屏蔽這臺機器,並且這臺機器運行着一個OpenSSH服務器。

現在,我們清楚地知道了自己所處的網絡環境。並且不難理解我們在公司無法訪問那個服務器的原因是:線路A-B-C上A-B之間的防火牆屏蔽了對那個服務器的訪問。與此同時,我們也很快注意到,線路A-B-D之間、D-C之間是不受阻礙的。相信你已經想到了,在A-B之間的防火牆不會屏蔽對機器d的訪問。因此我們可以通過機器d建立一個通道A-B-D-C,從而訪問到機器c上的數據。
這條通道可以用很多技術來建立,這裏我們僅僅介紹如何使用SSH服務器來建立這樣一個通道-他被稱爲SSH隧道。
如何建立本地SSH隧道
在我們計劃建立一個本地SSH隧道之前,我們必須清楚下面這些數據:
中間服務器d的IP地址
要訪問服務器c的IP地址
要訪問服務器c的端口
現在,我們把上面這張圖變得具體一些,給這些機器加上IP地址。並且根據下面這張圖列出我們的計劃:

需要訪問234.234.234.234的FTP服務,也就是端口21
中間服務器是123.123.123.123
現在我們使用下面這條命令來達成我們的目的          
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章