autossh反向隧道
阿新 • • 發佈:2017-11-05
gen 端口 安裝 local ntp 代理 公網 auto ...
實驗目標
有兩臺主機: hostA: 阿裏雲公網主機 hostB: 本地內網主機 需求實現: 在hostB上使用autossh將hostB的80的端口映射到hostA的8080,使得其他機器訪問hostA的8080從而訪問到hostB的80
實施步驟
1、登錄內網hostB,生成密鑰,並上傳到hostA,實現hostB可以免密登錄 配置免密登錄 ssh-keygen -t rsa ssh-copy-id -i .ssh/id_rsa.pub user@hostA 運行80服務 yum install -y httpd systemctl start httpd 安裝autossh wget http://www.harding.motd.ca/autossh/autossh-1.4c.tgz tar -xf autossh-1.4c.tgz cd autossh-1.4c ./configure make install 端口映射 autossh -p 22 -M 20522 -NR 8080:localhost:80 root@hostA ctrl +z 回到bash 參數說明: -p 22 :表明hostA的sshd端口是22,22可以省去不寫 -M 20522 :通過20522端口監視連接狀態,連接有問題就會自動重連 8080:映射到hostA的端口 localhost:80: hostB的服務端口 2、登錄外網主機hostA 可以發現已經起來了端口20522和8080 # netstat -lntp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.0.1:20522 0.0.0.0:* LISTEN 8937/sshd: root tcp 0 0 127.0.0.1:8080 0.0.0.0:* LISTEN 8937/sshd: root .... 這種情況下,我們可以在hostA搭建一個nginx反向代理8080端口,就方便外網用戶訪問
autossh反向隧道