自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

三條命令助你快速實現 SSH 內網穿透

系統(tǒng) Linux
最近小白在遠程操作一個私有化的項目時正好用到了這個,簡單總結了下便有了此文章。

ssh 反向隧道相信大多數同學都比較了解,就算不了解也一定在日常工作中聽說過,其實拋開那些專業(yè)的術語,通常我們借助 ssh 的反向隧道來實現兩個網絡隔離的主機間通信。最近小白在遠程操作一個私有化的項目時正好用到了這個,簡單總結了下便有了此文章。

在操作之前,我先將需要的資源列出一個表格,大家在操作前可以先按照如下準備資源:

代號

角色

機器位置

地址

賬戶

ssh 端口

sshd

A

中轉機器

公網

121.41.218.68

root

22

啟用

B

客戶機器

客戶內網

10.155.0.0/24

root

22

啟用

C

我的機器

公司/家中

127.0.0.1

root

22

不需要

  •  這里為了操作方便機器全部用的 root 賬號,大家不要學我??

我的需求很簡單,即客戶內網 B 中有一批剛裝完操作系統(tǒng)的服務器,我需要在公司或者家中的電腦上通過 Ansible Playbook 批量對這些機器進行初始化。

第一步:開啟 ssh server 代理功能

在位于公網服務器上打開 sshd 的GatewayPorts開關,并重啟sshd

sed -i "s/#GatewayPorts no/GatewayPorts yes/g" /etc/ssh/sshd_config
systemctl restart ssh

打開代理功能意味著,當我們在建立 ssh 反向隧道后,監(jiān)聽的地址會從默認的 127.0.0.1更換成 0.0.0.0,方便 ssh 客戶端遠程登錄。

第二步:建立 ssh 反向隧道

在客戶內網B中找一臺能訪問 121.41.218.68 地址的服務器,登錄上去,并在終端內執(zhí)行下述命令:

ssh -lroot -p22 -qngfNTR 8822:localhost:22 121.41.218.68 -o ServerAliveInterval=10

這一步的關鍵信息其實就是在主機 B 和主機 A 之間建立一條 SSH 隧道,隧道端口的映射關系是主機B:22 <--> 主機A:8822

之所以加上 ServerAliveInterval=10,是讓客戶端每 10s 發(fā)送一個心跳保持隧道的鏈接,否則這條連接很容易被重置。

第三步:本地 ssh client 代理

目前有了 ssh 的隧道也只能滿足我本地主機 C 能通過 121.41.218.68 的 8822 端口 ssh登錄到客戶內網的 B 主機,還不能滿足我進行批量運行任務的需求。

此時,我們就需要在自己電腦上配置 ssh 客戶端的 socket 代理來滿足需求,配置位于~/.ssh/config

host hosta
HostName 121.41.218.68
Port 8822
User root
host 10.155.0.*
User root
Port 22
ProxyCommand ssh hosta -W %h:%p

至此,我就可以在本地用 ansible-playbook 無縫的進行操作了。

總結

上述 3 步是整個 ssh 內網穿透的核心流程,如果要做得更加的優(yōu)雅的話,我們還需要考慮幾點優(yōu)化:

  •  為三臺機器上的 ssh 客戶端分別配置公私鑰
  •  為主機 B 上的 ssh 方向隧道創(chuàng)建服務進程,避免重啟后隧道丟失
  •  盡量保證公網主機 A 的網絡安全,可單獨為隧道端口配置防火墻策略

當然,ssh 反向隧道除了能代理 ssh 服務外,它也能對內網的其他服務做 socket 轉發(fā),這里本文就不再展開??傊?SSH 反向隧道這種事情大多數情況都是迫于無奈的臨時選擇,我們在用完后要及時釋放連接,避免長期閑置被不法分子盯上后帶來的損失。

責任編輯:龐桂玉 來源: 奇妙的Linux世界
相關推薦

2021-08-25 14:58:47

MacOSGreenplumDocker

2012-10-22 10:04:11

AMD微型服務器嵌入式

2013-04-22 10:07:08

2022-02-17 13:46:15

SSH命令內網

2009-04-22 17:14:11

LinuxSAMBA服務

2009-04-17 16:20:26

職場迷茫期對策

2020-10-13 14:03:50

搭建ngrok服務

2018-07-27 15:20:50

企業(yè)新興技術

2019-12-04 11:16:23

區(qū)塊鏈數字貨幣

2009-06-10 10:33:33

華為離職員工定律

2015-11-24 15:22:53

HTTP2 WEB 內網穿透

2023-11-13 14:43:47

API接口

2021-09-24 09:00:00

MySQL數據庫SQL

2025-01-02 10:51:27

Ubuntu系統(tǒng)版本

2022-03-29 07:33:21

內網穿透工具

2024-11-25 16:25:23

內網穿透網絡協(xié)議

2024-10-12 20:56:19

ProxyChain

2017-12-08 20:32:39

2014-11-27 10:49:50

AWS re:Inve亞馬遜EC2亞馬遜

2023-06-06 07:17:44

云變化管理策略
點贊
收藏

51CTO技術棧公眾號