免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
Linux SSH反向連接(內(nèi)網(wǎng)穿透)
userphoto

2022.06.16 上海

關(guān)注

場景


對于外網(wǎng)來說,公司內(nèi)部的是內(nèi)網(wǎng),中間隔了個(gè)防火墻,如果想從外網(wǎng)去訪問公司內(nèi)部網(wǎng)絡(luò),正常情況下是不可行的,也無法做到端口轉(zhuǎn)發(fā)(除非在公司防火墻上打個(gè)洞),一般場景有外網(wǎng)訪問公司內(nèi)網(wǎng),外網(wǎng)訪問學(xué)校的內(nèi)網(wǎng)。

理論


外網(wǎng)無法訪問到內(nèi)網(wǎng),歸根結(jié)底就是因?yàn)閮?nèi)網(wǎng)對于外網(wǎng)不可見,一般要實(shí)現(xiàn)外網(wǎng)訪問到內(nèi)網(wǎng),有兩種方法:一種是端口映射,就相當(dāng)于將內(nèi)網(wǎng)主機(jī)的某個(gè)端口在防火墻上開放出來,這樣一來就相當(dāng)于是兩臺外網(wǎng)主機(jī)的通信了;另一種就是SSH反向連接,就是內(nèi)網(wǎng)是可以訪問到外網(wǎng)的,那么內(nèi)網(wǎng)主機(jī)先主動(dòng)連接外網(wǎng)主機(jī),這樣一來就建立了連接,然后外網(wǎng)主機(jī)就可以ssh登錄到內(nèi)網(wǎng)主機(jī)了,這就是所謂的反向連接。但是這種連接是不穩(wěn)定的,可能會(huì)斷掉,但也有方法解決。

操作


  1. 首先做以下假設(shè),A要連接B
    A-外網(wǎng)服務(wù)器172.16.32.11 ssh端口為88
    B-內(nèi)網(wǎng)主機(jī)192.168.137.110 ssh端口為22
  2. B先主動(dòng)連接A
    ssh -NfR 1234:localhost:22 user1@172.16.32.11 -p 88
    -f 后臺執(zhí)行ssh指令
    -N 不執(zhí)行遠(yuǎn)程指令
    -R 將遠(yuǎn)程主機(jī)(服務(wù)器)的某個(gè)端口轉(zhuǎn)發(fā)到本地端指定機(jī)器的指定端口
    -p 指定遠(yuǎn)程主機(jī)的端口
    1234是遠(yuǎn)程主機(jī)A的端口,就是外網(wǎng)服務(wù)器A的1234端口與內(nèi)網(wǎng)B的22端口綁定,相當(dāng)于是端口映射。
  3. 查看服務(wù)器A的1234端口
    執(zhí)行完步驟2后,這時(shí)候可以在遠(yuǎn)程服務(wù)器A上查看端口1234
    ss -ant |grep 1234
    輸出為:
    LISTEN 0 128 127.0.0.1:1234 *:*
    這是1234端口已經(jīng)和22端口綁定了,A上監(jiān)聽著
  4. 在遠(yuǎn)程服務(wù)器A上ssh登錄內(nèi)網(wǎng)主機(jī)B
    ssh username@localhost -p 1234
    記得要指定端口為1234,這樣子就能訪問到內(nèi)網(wǎng)了,實(shí)現(xiàn)了ssh反向連接。

解決斷開連接


前面說過這種反向連接不穩(wěn)定,可能隨時(shí)會(huì)斷開,這時(shí)候又得重復(fù)上面步驟去打通,而當(dāng)你無法登陸上內(nèi)網(wǎng)主機(jī)去操作以上的步驟時(shí)候,那就沒法玩了。
這時(shí)可以使用autossh來解決這個(gè)隨時(shí)斷開的問題。
具體指令為:
autossh -M 2000 -NfR 1234:localhost:22 user1@172.16.32.11 -p 88
解釋:

  1. autossh和ssh在指令上的區(qū)別就是多了一個(gè)-M參數(shù),這個(gè)參數(shù)指定一個(gè)端口,這個(gè)端口是外網(wǎng)的A用來接收內(nèi)網(wǎng)主機(jī)B的信息,如果隧道不正常則返回給內(nèi)網(wǎng)主機(jī)B讓他實(shí)現(xiàn)重新連接
  2. 簡單來說就是多指定了一個(gè)端口,用于監(jiān)聽ssh反向連接是否斷開。

開機(jī)自動(dòng)啟動(dòng)autossh


ubuntu下設(shè)置autossh開機(jī)自動(dòng)啟動(dòng)

  1. 編寫service文件
    vi /lib/systemd/system/autossh.service
    寫入以下內(nèi)容
[Unit]
Description=Robust SSH Reverse Tunnel and Port Forward
After=network.target
[Service]
User=ubuntu
ExecStart=/usr/bin/autossh -M 2000 -fNR 1234:localhost:22 -i /home/ubuntu/.ssh/id_rsa  172.16.32.11
KillMode=process
[Install]
WantedBy=multi-user.target
Alias=autossh.service

然后執(zhí)行

sudo systemctl daemon-reload
sudo systemctl start autossh.service
sudo systemctl enable autossh.service

注意:

ssh的配置文件中要把GatewayPorts修改為yes

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
使用 AutoSSH 實(shí)現(xiàn)自動(dòng)化跨網(wǎng)絡(luò)訪問
SSH反向連接及Autossh
關(guān)于ssh端口轉(zhuǎn)發(fā)的深入實(shí)例
Xshell本地轉(zhuǎn)移規(guī)則你了解多少
SSH端口轉(zhuǎn)發(fā)實(shí)現(xiàn)內(nèi)網(wǎng)穿透
從外網(wǎng) SSH 進(jìn)局域網(wǎng),反向代理+正向代理解決方案
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服