基于SSH端口轉(zhuǎn)發(fā)的概述與實例

基于SSH端口轉(zhuǎn)發(fā)的概述與實例

ID:41724091

大小:246.79 KB

頁數(shù):16頁

時間:2019-08-30

基于SSH端口轉(zhuǎn)發(fā)的概述與實例_第1頁
基于SSH端口轉(zhuǎn)發(fā)的概述與實例_第2頁
基于SSH端口轉(zhuǎn)發(fā)的概述與實例_第3頁
基于SSH端口轉(zhuǎn)發(fā)的概述與實例_第4頁
基于SSH端口轉(zhuǎn)發(fā)的概述與實例_第5頁
資源描述:

《基于SSH端口轉(zhuǎn)發(fā)的概述與實例》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。

1、基于SSH端口轉(zhuǎn)發(fā)的概述與實例端口轉(zhuǎn)發(fā)概念讓我們先來了解一下端口轉(zhuǎn)發(fā)的概念吧。我們知道,SSH會白動加密和解密所有-SSH客戶端與服務(wù)端之間的網(wǎng)絡(luò)數(shù)據(jù)。但是,SSH還同時捉供了一個非常有用的功能,這就是端口轉(zhuǎn)發(fā)。它能夠?qū)⑵渌鸗CP端口的網(wǎng)絡(luò)數(shù)據(jù)通過SSH鏈接來轉(zhuǎn)發(fā),并且H動提供了相應(yīng)的加密及解密服務(wù)。這一過程冇時也被叫做“隧道”(tunneling),這是因為SSH為其他TCP鏈接提供了一個安全的通道來進行傳輸而得名。例如,Telnet,SMTP,LDAP這些TCP應(yīng)用均能夠從中得益,避免了用戶名,密

2、碼以及隱私信息的明文傳輸。而與此同時,如果您工作壞境屮的防火墻限制了一些網(wǎng)絡(luò)端口的使用,但是允許SSH的連接,那么也是能夠通過將TCP端口轉(zhuǎn)發(fā)來使用SSH進行通訊??偟膩碚fSSH端口轉(zhuǎn)發(fā)能夠提供兩人功能:1、加密SSHOient端至SSHServer端Z間的通訊數(shù)據(jù)。2、突破防火墻的限制完成一些Z前無法建立的TCP連接。如上圖所示,使用了端口轉(zhuǎn)發(fā)之示,TCP端口A與B之間現(xiàn)在并不宜接通訊,而是轉(zhuǎn)發(fā)到了SSH客八端及服務(wù)端來通訊,從而自動實現(xiàn)了數(shù)據(jù)加密并同時繞過了防火墻的限制。本地轉(zhuǎn)發(fā)我們先來看第一個例

3、子,在實驗室里有一臺LDAP服務(wù)器(LdapServerHost),但是限制了只有木機上部署的應(yīng)用才能肓接連接此LDAP服務(wù)器。如果我們由于調(diào)試或者測試的需要想臨吋從遠程機器(LdapQientHost)直接連接到這個LDAP服務(wù)器,有什么方法能夠?qū)崿F(xiàn)呢?答案無疑是本地端口轉(zhuǎn)發(fā)了,它的命令格式是:ssh-L::在LdapOientHost上執(zhí)行如下命令即可建立一個SSH的木地端口轉(zhuǎn)發(fā),例如:$ssh-L70

4、01:localhost:389LdapServerHostLDAPClientPort7001Port7001SSHClientSSHClientLDAPServer□□00LDAPPoit389SSHServer)這里需要注意的是本例中我們選擇了7001端口作為本地的監(jiān)聽端口,在選擇端口號時耍注意非管理員帳號是無權(quán)綁定「1023端口的,所以一般是選用一個1024-65535之間的并尚未使用的端口號即可。然后我們可以將遠程機器(LdapQientHost)上的應(yīng)用宜接配置到本機的7001端II上(而

5、不是LDAP服務(wù)器的389端口上)。之后的數(shù)據(jù)流將會是下面這個樣子:1、我們在LdapOientHost±的應(yīng)用將數(shù)據(jù)發(fā)送到本機的7001端口上;2、而木機的SSHOient會將7001端口收到的數(shù)據(jù)加密并轉(zhuǎn)發(fā)到LdapServertHost的SSHServer上。3、SSHServer會解密收到的數(shù)據(jù)并將Z轉(zhuǎn)發(fā)到監(jiān)聽的LDAP389端口上;4、最后再將從LDAP返回的數(shù)據(jù)原路返回以完成整個流程。我們可以看到,這整個流程應(yīng)用并沒有直接連接LDAP服務(wù)器,而是連接到了本地的一個監(jiān)聽端口,但是SSH端口轉(zhuǎn)

6、發(fā)完成了剩下的所有事情,加密,轉(zhuǎn)發(fā),解密,通訊。這里有幾個地方需要注意:1、SSH端口轉(zhuǎn)發(fā)是通過SSH連接建立起來的,我們必須保持這個SSH連接以使端口轉(zhuǎn)發(fā)保持生效。一口關(guān)閉了此連接,相應(yīng)的端口轉(zhuǎn)發(fā)也會隨之關(guān)閉。2、我們只能在建立SSH連接的同吋創(chuàng)建端口轉(zhuǎn)發(fā),而不能給一個已經(jīng)存在的SSH連接增加端口轉(zhuǎn)發(fā)。3、你可能會疑惑上面命令中的為什么用localhost,它指向的是哪臺機器呢?在本例中,它指向LdapServertHosto我們?yōu)槭裁从胠ocalhost而不是IP地址或者主

7、機名呢?其實這個取決于我們Z前是如何限制LDAP只冇木機才能訪問。如果只允許Iookback接口訪問的話,那么自然就只有l(wèi)ocalhost或者IP為127.0.0.1才能訪問了,而不能用真實IP或者主機名。4、命令屮的vremotehost>和必須是同一臺機器么?其實是不一定的,它們可以是兩臺不同的機器。5、好了,我們已經(jīng)在LdapOientHost建立了端口轉(zhuǎn)發(fā),那么這個端口轉(zhuǎn)發(fā)可以被其他機器使用么?比如能否新增加一臺LdapaientHost2來直接連接LdapOient

8、Host的7001端口?答案是不行的,在主流SSH實現(xiàn)中,本地端口轉(zhuǎn)發(fā)綁定的是lookback接口,這意味看只有l(wèi)ocalhost或者127.0.0.1才能使用本機的端口轉(zhuǎn)發(fā),具他機器發(fā)起的連接只會得到“connectionrefused.好在SSH同時提供了GatewayPorts關(guān)鍵字,我們可以通過指定它與其他機器共亨這個本地端口轉(zhuǎn)發(fā)。遠程轉(zhuǎn)發(fā)我們來看笫二個例子,這次假設(shè)由于網(wǎng)絡(luò)或防火墻的原因我們不能用SSH直接從LdapOientHost連接到LD

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。