欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用反向ssh從外網(wǎng)訪問(wèn)內(nèi)網(wǎng)主機(jī)的方法詳解

 更新時(shí)間:2017年04月29日 09:28:14   作者:Myths  
這篇文章主要給大家介紹了使用反向ssh從外網(wǎng)訪問(wèn)內(nèi)網(wǎng)主機(jī)的方法,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考價(jià)值,需要的朋友們下來(lái)要起看看吧。

前言

最近遇到一個(gè)問(wèn)題,就是過(guò)幾天我需要離開(kāi)學(xué)校,而且到時(shí)候仍然想登陸校園網(wǎng)里的一臺(tái)服務(wù)器進(jìn)行工作;但是我又沒(méi)有校園網(wǎng)網(wǎng)關(guān)的操作權(quán)限,不能做端口映射,也不能搞到校園網(wǎng)內(nèi)部主機(jī)的外網(wǎng)ip,而且學(xué)校自己提供的vpn又根本沒(méi)法用。研究了半天,總算找到了一個(gè)比較不錯(cuò)的利用反向ssh(reverse ssh tunnel)進(jìn)行內(nèi)網(wǎng)登陸的解決方案。

工作原理

之所以很多轉(zhuǎn)發(fā)的方法無(wú)法應(yīng)用在這里,就是因?yàn)閮?nèi)網(wǎng)主機(jī)對(duì)外網(wǎng)其實(shí)是不可見(jiàn)的,也就是說(shuō)外部主機(jī)不能用一般的方法訪問(wèn)到內(nèi)部主機(jī)。那么我們就想了,能不能用內(nèi)網(wǎng)主機(jī)找外網(wǎng)主機(jī),找到之后再把這條內(nèi)網(wǎng)主機(jī)登陸外網(wǎng)的信道轉(zhuǎn)換成外網(wǎng)主機(jī)登陸內(nèi)網(wǎng)的信道呢?辛運(yùn)的是,這個(gè)方法的確是可行的,這也就是所謂反向ssh最通俗的理解,這就像寄信一樣,”雖然我不知道你的地址,但是你知道我的地址,那么你就先給我寫(xiě)封信,告訴我你的地址,然后我不就可以回信給你了么?“。

操作步驟

由于我們自己使用的電腦未必有外網(wǎng)ip,因此我們需要一個(gè)有固定外網(wǎng)ip的服務(wù)器(隨便搞個(gè)騰訊云阿里云的小機(jī)子就行),然后用這臺(tái)服務(wù)器與內(nèi)網(wǎng)的機(jī)子進(jìn)行通信,我們到時(shí)候要先登陸自己的服務(wù)器,然后再利用這個(gè)服務(wù)器去訪問(wèn)內(nèi)網(wǎng)的主機(jī)。

1、準(zhǔn)備好有固定ip的服務(wù)器A,以及待訪問(wèn)的內(nèi)網(wǎng)機(jī)器B。兩者都開(kāi)著sshd服務(wù),端口號(hào)默認(rèn)都是22。順便做好ssh免密碼登陸。

2、內(nèi)網(wǎng)主機(jī)B主動(dòng)連接服務(wù)器A,執(zhí)行以下命令:

$ ssh -NfR 1111:localhost:22 username@servername -p 22

這條命令的意思是在后臺(tái)執(zhí)行(-f),不實(shí)際連接而是做port forwarding(-N),做反向ssh(-R),將遠(yuǎn)程服務(wù)器的1111端口映射成連接本機(jī)(B)與該服務(wù)器的反向ssh的端口。

附:這里有必要加強(qiáng)一下記憶,這個(gè)端口號(hào)一不小心就容易搞混。。man文檔中的參數(shù)命令是這樣的:

-R [bind_address:]port:host:hostport

bind_address以及其后面的port是指遠(yuǎn)程主機(jī)的ip以及端口,host以及其后的hostport是指本機(jī)的ip和端口。由于ssh命令本身需要遠(yuǎn)程主機(jī)的ip(上上條命令中的servername),因此這個(gè)bind_address原則上是可以省略的。

執(zhí)行完這條命令,我們可以在服務(wù)器A上看到他的1111端口已經(jīng)開(kāi)始監(jiān)聽(tīng):

$ ss -ant |grep 1111
LISTEN  0  128    127.0.0.1:1111      *:*

3、在上面的操作中,這個(gè)1111端口就已經(jīng)映射成了內(nèi)網(wǎng)主機(jī)B的22端口了,現(xiàn)在我們只要ssh到自己的這個(gè)端口就行了。在服務(wù)器A中執(zhí)行:

$ ssh username@localhost -p1111

這樣就成功的登陸了內(nèi)網(wǎng)的主機(jī)了。

功能優(yōu)化

上面的做法其實(shí)有一個(gè)問(wèn)題,就是反向ssh可能會(huì)不穩(wěn)定,主機(jī)B對(duì)服務(wù)器A的端口映射可能會(huì)斷掉,那么這時(shí)候就需要主機(jī)B重新鏈接,而顯然遠(yuǎn)在外地的我無(wú)法登陸B(tài)。。。這其實(shí)有一個(gè)非常簡(jiǎn)單的解決方案,就是用autossh替代步驟2中的ssh:

$ autossh -M 2222 -NfR 1111:localhost:22 username@servername -p 22

后面的參數(shù)跟ssh都一樣,只是多了一個(gè)-M參數(shù),這個(gè)參數(shù)的意思就是用本機(jī)的2222端口來(lái)監(jiān)聽(tīng)ssh,每當(dāng)他斷了就重新把他連起來(lái)。。。不過(guò)man文檔中也說(shuō)了,這個(gè)端口又叫echo port,他其實(shí)是有一對(duì)端口的形式出現(xiàn),第二個(gè)端口就是這個(gè)端口號(hào)加一。因此我們要保證這個(gè)端口號(hào)和這個(gè)端口號(hào)加一的端口號(hào)不被占用。

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • CentOS6.9下NFS服務(wù)安裝配置教程

    CentOS6.9下NFS服務(wù)安裝配置教程

    這篇文章主要為大家詳細(xì)介紹了CentOS6.9下NFS服務(wù)安裝配置教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • 使用PXE自動(dòng)安裝CentOS7.6的教程詳解

    使用PXE自動(dòng)安裝CentOS7.6的教程詳解

    最近小編遇到這樣的需求:基地新到300臺(tái)服務(wù)器,需要自實(shí)施安裝CentOS7.6版本操作系統(tǒng),選擇使用PXE進(jìn)行批量安裝。這個(gè)需求該如何處理呢,下面腳本之家小編給大家?guī)?lái)了使用PXE自動(dòng)安裝CentOS7.6的教程,感興趣的朋友一起看看吧
    2019-10-10
  • CentOS 7.x下的LEMP環(huán)境搭建詳細(xì)教程

    CentOS 7.x下的LEMP環(huán)境搭建詳細(xì)教程

    我們常說(shuō)的LNMP環(huán)境是指Linux/nginx/MySQL/PHP組合,LEMP包是由Linux、nginx、MariaDB/MySQL和PHP組成的,那么看來(lái)LEMP和LNMP是一樣的,而現(xiàn)在業(yè)內(nèi)習(xí)慣性的稱作LEMP。這篇文章主要介紹了CentOS 7.x下的LEMP環(huán)境搭建詳細(xì)教程,需要的朋友可以參考下
    2016-10-10
  • ubuntu中python調(diào)用C/C++方法之動(dòng)態(tài)鏈接庫(kù)詳解

    ubuntu中python調(diào)用C/C++方法之動(dòng)態(tài)鏈接庫(kù)詳解

    這篇文章主要給大家介紹了關(guān)于如何在ubuntu中python調(diào)用C/C++方法之動(dòng)態(tài)鏈接庫(kù)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起看看吧
    2018-11-11
  • Apache mod_rewrite中的REQUEST_URI使用實(shí)例

    Apache mod_rewrite中的REQUEST_URI使用實(shí)例

    這篇文章主要介紹了Apache mod_rewrite中的REQUEST_URI使用實(shí)例,本文使用一個(gè)實(shí)例講解如何使用REQUEST_URI,需要的朋友可以參考下
    2015-01-01
  • 解讀Linux下ip命令展示的網(wǎng)絡(luò)連接信息

    解讀Linux下ip命令展示的網(wǎng)絡(luò)連接信息

    這篇文章主要給大家介紹了關(guān)于Linux下解讀ip命令展示的網(wǎng)絡(luò)連接信息的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起看看吧。
    2018-03-03
  • vim的一些常用簡(jiǎn)單操作小結(jié)

    vim的一些常用簡(jiǎn)單操作小結(jié)

    大家都知道vim在Linux下使用很多,但是習(xí)慣了在Windows下的文本操作,在vim中進(jìn)行文本操作會(huì)覺(jué)得很不方便,但是vim是一個(gè)很強(qiáng)大的工具,只是還不熟練去使用它,下面是一些常用的vim文本操作方法。
    2016-09-09
  • linux下SVN配置實(shí)現(xiàn)項(xiàng)目目錄自動(dòng)更新以及源碼安裝的操作方法

    linux下SVN配置實(shí)現(xiàn)項(xiàng)目目錄自動(dòng)更新以及源碼安裝的操作方法

    下面小編就為大家分享一篇linux下SVN配置實(shí)現(xiàn)項(xiàng)目目錄自動(dòng)更新以及源碼安裝的操作方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2017-12-12
  • Linux文件和文件夾權(quán)限操作方法

    Linux文件和文件夾權(quán)限操作方法

    這篇文章主要介紹了Linux文件和文件夾權(quán)限操作方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Centos7下Samba服務(wù)器配置(實(shí)戰(zhàn))

    Centos7下Samba服務(wù)器配置(實(shí)戰(zhàn))

    這篇文章主要介紹了Centos7下Samba服務(wù)器配置(實(shí)戰(zhàn)),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11

最新評(píng)論