我的编程空间,编程开发者的网络收藏夹
学习永远不晚

教你如何『SSH』远程连接『内网』服务器

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

教你如何『SSH』远程连接『内网』服务器

前言

最近博主实验室要搬家,因为服务器只有连接内网才能使用,所以搬走之后就无法在公网连接使用服务器,确实是让人非常苦恼,所以本文将会主要讲解如何使用公网服务器 SSH 连接内网服务器

系统配置

  • 内网服务器:Ubuntu 18.04
  • 公网服务器:CentOS 7.9

方案

下面汇总公网访问内网服务的各种方式

使用 TeamViewer 等远程桌面。但是需要双方都要安装TeamViewer软件,且版本要一致。虽然可用,但是比较麻烦

使用花生壳软件进行DDNS解析。虽然可用,但免费版本有带宽限制,使用效果不理想。

搭建 frp 服务器进行内网穿透。可以达到不错的速度,且可以开放任何想要的端口,可以让处于内网或防火墙后的设备对外界提供服务,它支持HTTP、TCP、UDP等众多协议,推荐使用。

综上所述,本文将会在公网服务器搭建 frp 服务,进行内网穿透,达到 SSH 连接内网服务器的效果

image-20231009221113810

介绍

frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议,且支持 P2P 通信。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网

注:内网穿透,简单地说就是内网的数据让外网可以获取,可以映射到公共网络上,这样就可以在公共网络上访问内网的数据。

官网仓库:fatedier/frp: A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet. (github.com)

官方文档:文档 | frp (gofrp.org)

安装部署

本文对应官方文档:通过 SSH 访问内网机器 | frp (gofrp.org)

下载

我们需要分别在客户端和服务端下载 frp 安装包

wget https://github.com/fatedier/frp/releases/download/v0.51.3/frp_0.51.3_linux_amd64.tar.gz 

然后解压安装包

tar -zxvf frp_0.51.3_linux_amd64.tar.gz

展示文件内容

# ls -ltotal 30784-rw-r--r--. 1 1001 docker    11358 Aug 14 12:09 LICENSE-rwxr-xr-x. 1 1001 docker 14290944 Aug 14 12:04 frpc-rw-r--r--. 1 1001 docker      126 Aug 14 12:09 frpc.ini-rw-r--r--. 1 1001 docker    12669 Aug 14 12:09 frpc_full.ini-rwxr-xr-x. 1 1001 docker 17186816 Aug 14 12:04 frps-rw-r--r--. 1 1001 docker       26 Aug 14 12:09 frps.ini-rw-r--r--. 1 1001 docker     5933 Aug 14 12:09 frps_full.ini

其中 frpc 是内网服务器用的,frps 是公网服务器用的

配置

最后我们需要填写配置文件,首先我们修改公网服务器上的 frps.ini 文件

# frps[common]bind_port = 7000

然后在内网服务器上修改 frpc.ini 文件,假设 frps 所在服务器的公网 IP 为 x.x.x.x

# frpc[common]# tls_enable 防止启动报错 login to server failed: EOFtls_enable = trueserver_addr = x.x.x.xserver_port = 7000[ssh]type = tcplocal_ip = 127.0.0.1local_port = 22remote_port = 6000

注:公网服务器需要开启 6000 7000 端口防火墙和安全组配置

最后分别启动客户端和服务端

# 服务端./frps -c ./frps.ini# 客户端./frpc -c ./frpc.ini

然后我们在本地使用 SSH 访问内网机器,假设使用 test 用户连接

ssh -oPort=6000 test@x.x.x.x# 或是ssh test@x.x.x.x:6000

frp 会将请求 x.x.x.x:6000 的流量转发到内网机器的 22 端口

系统配置

最后我们可以通过 systemd 启动服务并且配置开机自启,方便后续操作

官方配置文档:使用 systemd | frp (gofrp.org)

服务端

首先我们可以在 frp 服务端创建并编辑 frps.service 文件

vim /etc/systemd/system/frps.service

写入内容

[Unit]# 服务名称,可自定义Description = frp serverAfter = network.target syslog.targetWants = network.target[Service]Type = simple# 启动frps的命令,需修改为您的frps的安装路径ExecStart=/usr/bin/frps -c /etc/frp/frps.ini[Install]WantedBy = multi-user.target

其中复制文件命令如下

cp ./frps /usr/bin/frpsmkdir /etc/frpcp ./frps.ini  /etc/frp/frps.ini

常用命令

# 启动frpsystemctl start frps# 停止frpsystemctl stop frps# 重启frpsystemctl restart frps# 查看frp状态systemctl status frps

配置 frps 开机自启

systemctl enable frps

客户端

此处与服务端配置基本类似,所以简单叙述

vim /etc/systemd/system/frpc.service
[Unit]Description = frp clientAfter = network.target syslog.targetWants = network.target[Service]Type = simpleExecStart=/usr/bin/frpc -c /etc/frp/frpc.ini[Install]WantedBy = multi-user.target
sudo cp ./frpc /usr/bin/frpcsudo mkdir /etc/frpsudo cp ./frpc.ini  /etc/frp/frpc.ini
sudo systemctl start frpcsudo systemctl enable frpc

参考链接

本文由博客一文多发平台 OpenWrite 发布!

来源地址:https://blog.csdn.net/m0_63748493/article/details/133718748

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

教你如何『SSH』远程连接『内网』服务器

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

VsCode SSH远程连接服务器【内网穿透公网连接】

文章目录 1.前言2.VS code的安装和设置2.1 VS code的下载安装2.2 OpenSSH的启用2.3 为VS code配置ssh2.4 局域网内测试VS code的ssh连接2.5 Cpolar下载安装 3.C
2023-08-18

外网SSH远程连接linux服务器「cpolar内网穿透」

文章目录 视频教程1. Linux CentOS安装cpolar2. 创建TCP隧道3. 随机地址公网远程连接4. 固定TCP地址5. 使用固定公网TCP地址SSH远程 转载自内网穿透工具的文章:无公网IP,SSH远程连接L
2023-08-19

ssh远程连接服务器

文章目录 第三章 远程连接服务器1.1 远程连接服务器简介1.2 连接加密技术简介1.3 ssh远程连接服务简介1.4 sftp用法介绍1.5 实验 作业:第一题:两台机器:第一台机器作为客户端,第二台机器作为服务器,在第一台
2023-08-19

【vscode远程开发】使用SSH远程连接服务器 「内网穿透」

文章目录 前言视频教程1、安装OpenSSH2、vscode配置ssh3. 局域网测试连接远程服务器4. 公网远程连接4.1 ubuntu安装cpolar内网穿透4.2 创建隧道映射4.3 测试公网远程连接 5. 配置固定TCP
2023-08-20

在外SSH远程连接macOS服务器【cpolar内网穿透】

文章目录 前言1. macOS打开远程登录2. 局域网内测试ssh远程3. 公网ssh远程连接macOS3.1 macOS安装配置cpolar3.2 获取ssh隧道公网地址3.3 测试公网ssh远程连接macOS 4. 配置公网
2023-08-20

【VsCode远程开发】Windows SSH远程连接Linux服务器 - 无公网IP内网穿透

文章目录 前言视频教程1、安装OpenSSH2、vscode配置ssh3. 局域网测试连接远程服务器4. 公网远程连接4.1 ubuntu安装cpolar内网穿透4.2 创建隧道映射4.3 测试公网远程连接 5. 配置固定TCP
2023-08-21

云服务器如何远程连接电脑上网教程

首先,需要先准备好一台云服务器,并且确保它已经安装好了网络连接软件,如WebClient或NAT等。接下来,将准备好的文件复制到云服务器的安装目录下,并将其中的文件夹移动到另一个路径中,以便进行远程连接。在需要远程连接的电脑中,可以通过WindowsLiveMessenger或MicrosoftTransferWizard等工具来连接云服务器,并且可以将文件传输到云服务器的共享文件夹中。在
2023-10-26

vscode远程开发使用SSH远程连接服务器的方法「内网穿透」

目录1、安装OpenSSH2、vscode配置ssh3. 局域网测试连接远程服务器4. 公网远程连接4.1 Ubuntu安装cpolar4.2 创建隧道映射4.3 测试公网远程连接5. 配置固定TCP端口地址5.1 保留一个固定TCP端口地
2023-02-16

无需公网IP,在家SSH远程连接公司内网服务器「cpolar内网穿透」

文章目录 视频教程1. Linux CentOS安装cpolar2. 创建TCP隧道3. 随机地址公网远程连接4. 固定TCP地址5. 使用固定公网TCP地址SSH远程 转载自cpolar内网穿透的文章:无公网IP,SSH远
2023-08-18

阿里云服务器如何建站内网连接教程

首先,在本地安装好阿里云服务器,可以在阿里云官网上查看相关教程来安装。打开阿里云服务器控制台,点击登录。点击“创建新的阿里云服务器(ApsaraServer)”。在弹出窗口中,点击“创建新的主机(ApsaraServer)”来创建一个新的主机(ApsaraServer)。在弹出的窗口中,输入主机(ApsaraServer)的IP地址和主机(ApsaraServer)的管理员用户名和密码,
2023-10-26

阿里云服务器ssh连接教程

阿里云服务器SSH连接是在使用云服务器进行远程连接时需要进行的基本操作。下面是一些常用的SSH连接教程:准备连接配置文件。阿里云服务器SSH连接的配置文件通常是.conf,其中应该包含以下内容:Servername:服务器名(例如,AmazonMicrosoftAzure等)SecurityID:加密身份验证标识符(例如Auth2.0)Port:端口号(例如8080)Termin
2023-10-26

云服务器如何远程连接电脑上网络教程

如果您想远程连接电脑上网络,通常可以使用以下步骤:打开云服务器应用程序,并按照屏幕上的指示进行操作:选择需要远程连接的设备(例如:计算机或手机)输入要连接的IP地址和端口号,如:192.168.1.100;输入要连接的网络账号和密码,如:yum.cloudserver.com/admin/username/password点击连接按钮,即可在电脑上远程连接云服务器上的应用程序。需要注意的是,云服务器上的应用程序和服务会在不同的设备上运行,因此需要确保您的电脑已经安装了...
2023-10-27

编程热搜

目录