Ubuntu内网穿透

2023-05-16

本文借鉴 使用frp进行内网穿透 - 少数派

目录

1. 准备材料

2. 服务端部署

3. 服务端后台运行

4. 客户端部署


1. 准备材料

(1) 一台具有公网IP的实体机(服务端,也可以是vps)

(2) 一台网页部署内网的实体机 (客户端)

我当前的服务端与客户端都是 ubuntu 16.04 amd64

2. 服务端部署

首先需要下载putty.exe,可以在官网下载最新的,也可以在下面的百度云链接下载

putty下载百度云链接:

链接:https://pan.baidu.com/s/1cXyB-rjpW2vVldU_4WL97w 
提取码:neyv

下载之后双击打开,直接输入IP地址,端口不用改变,然后点击Open

点击后会弹出类似终端的东西,输入用户名和密码

进入后我们确认一下系统信息


这个时候我们为了区分之前做过的其他项目,我们创建一个新的文件夹test,之后我们输入ls查看一下

 进入新的文件夹后下载

我当前使用的是frp,版本为 frp_0.34.3_linux_amd64.tar.gz,现在我的服务端是不能使用图形化界面的,所以只能使用命令下载,到后面客户端的时候可以使用命令下载,下面是 frp_0.34.3_linux_amd64.tar.gz 的百度云链接

链接:https://pan.baidu.com/s/1MHmYyx7sZPeVvTzRoPsHFQ 
提取码:hr99

截至2021/7/22日frp已经更新到0.37,我们也可以使用新的版本,如果想使用其他老的版本可以在github上搜索frp,然后选择这个

  • 客户端的版本与服务端的版本不一定要对应,只要都是frp就行

进入后向下滚找到README,在README中点击这个

  • 上面这个图是后加的,加入图的时候已经更新到了v0.38.0,部署的时候最新版本是v0.37.0

进入这个页面后,向下滚动就可以看到之前的版本了

下面我简单说一下如何在linux使用命令行下载github上的文件,在github上进入frp后,点击这个

进入后向下滚,找到v0.34.3,然后点击v0.34.3 

进入后向下滚,找到这个

  •  这里要注意系统版本,我当前的两个系统都是amd64的,每个系统查看版本的方式不同,如果选错了版本会运行不了

这个时候右键这个链接,然后点击复制链接地址,这个时候我们会得到下载地址 https://github.com/fatedier/frp/releases/download/v0.34.3/frp_0.34.3_linux_amd64.tar.gz

然后我们在linux命令行中输入 wget https://github.com/fatedier/frp/releases/download/v0.34.3/frp_0.34.3_linux_amd64.tar.gz

这样就会在我们所在的目录将这个包下载下来

回到我们的部署上来,下载之后进行解压,解压命令是tar –zxvf frp_0.34.3_linux_amd64.tar.gz,解压之后进入文件夹下面有两个文件(由于我之前做过一次并把过程记录下来了,所以下面的文件夹名称为frp)

进入解压后的文件夹,里面除了下图的东西还有frpc和frpc.ini,那个是客户端用的,我把这两个删掉以免之后误操作,命令是

rm frpc

rm frpc.ini

删除之后的解压后文件夹会有以下文件

此时我们修改frps.ini文件,修改之后和下面这个图一样就行

这里面所有的值都是可以自定的,我们第一次弄和教程一样就行

修改之后保存并退出,然后输入下面的命令运行服务器

./frps -c frps.ini

然后这个时候就会出现这个

这个时候我们的服务端已经部署好了,我们此时可以打开服务器的表盘页面,浏览器输入服务器IP+:7500,之后会出现这个页面

为了让关掉putty后,服务端仍然工作,所以我们需要把frp改为后台运行

3. 服务端后台运行

同时按下ctrl + c退出,退出之后我们就访问不到我们的表盘了,然后此时输入nohup

再输入 nohup ./frps -c frps.ini &

此时再次访问我们的表盘,发现可以访问了

我们最后再确认一下,此时按 ctrl+c 退出,然后输入jobs 

 如果发现有第三条,说明确实已经在后台运行了,此时可以关掉putty,我们的服务端部署完毕

4. 客户端部署

客户端是我们实际访问的主机,我现在用的客户端也是ubuntu 16.04 arm64,我们把frp_0.34.3_linux_amd64.tar.gz也放在客户端中,我新建了一个文件夹,然后在新建的文件夹中解压

解压

解压之后会解压出这样一个文件夹

我们进去,看一下里面的文件

 由于现在是部署客户端,所以我们删掉服务端的文件(frps,frps.ini),避免误操作,删除之后现在文件夹中有这些文件

修改frpc.ini

按照这个格式修改

  •  [rdp]与[smb]只是穿透的名字,我们可以自定义,最好不要重复

然后我说一下每个都对应哪个

server_addr是服务端的IP,server_port是之前设置服务端的bind_port,token是之前服务端设置的token

Type不变,local_ip是要访问的IP,我当前的本机,所以我输入127.0.0.1就行,我本机要访问的端口是8081,remote_port是在服务器IP后输入的端口,我现在设置为7001

这个7001的目的是,我现在在浏览器上访问我们服务端的IP+:7001,它就会跳转到127.0.0.1:8081

这个是我们要穿透的另一个端口,我们给到7002

保存退出之后,输入./frpc –c frpc.ini

如果是上图这个情况就可以直接运行了,我测试了一下,在非局域网情况下输入我们服务端的IP+:7001确实可以访问到127.0.0.1:8081

如果此时在其他互联网内能访问到客户端的网页,说明已经穿透成功了,如果出现其他问题建议看一下客户端的部署文件有没有问题 

本文的例子是Ubuntu于Ubuntu之间进行穿透,如果使用别的系统也可以实现穿透,使用frp的不同系统即可

我们使用一个服务端可以有多个客户端,比如我下面这个就是在另一个机器上进行穿透的,服务端不用改,我们只需要操作客户端即可

server_addr的IP与上面相同,经测试使用两个机器穿透互相并不影响 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ubuntu内网穿透 的相关文章

随机推荐

  • huggingface.transformers安装教程

    诸神缄默不语 个人CSDN博文目录 本文属于huggingface transformers全部文档学习笔记博文的一部分 全文链接 xff1a huggingface transformers包 文档学习笔记 xff08 持续更新ing x
  • 什么是ablation study(消融实验)?

    诸神缄默不语 个人CSDN博文目录 本文是对学术概念 ablation study xff08 消融实验 xff09 一词的介绍 在深度学习论文中 xff0c ablation study往往是在论文最终提出的模型上 xff0c 减少一些改
  • TensorFlow安装教程

    诸神缄默不语 个人CSDN博文目录 TensorFlow是学习深度学习时常用的Python神经网络框架 xff0c 本文将介绍其部分版本在Linux系统使用pip进行安装的方法 xff08 注 xff1a TensorFlow官方推荐使用p
  • 各种同质图神经网络模型的理论和节点表征学习任务的集合包rgb_experiment

    诸神缄默不语 个人CSDN博文目录 最近更新时间 xff1a 2023 5 10 最早更新时间 xff1a 2023 5 10 本文仅考虑同质图setting下的模型 对于异质图场景 xff0c 可以参考我写的另一篇博文 xff1a 异质图
  • Re 40:读论文 GL-GIN: Fast and Accurate Non-Autoregressive Model for Joint Multiple Intent Detection and

    诸神缄默不语 个人CSDN博文目录 论文名称 xff1a GL GIN Fast and Accurate Non Autoregressive Model for Joint Multiple Intent Detection and S
  • 用huggingface.transformers.AutoModelForTokenClassification实现命名实体识别任务

    诸神缄默不语 个人CSDN博文目录 huggingface transformers包 文档学习笔记 xff08 持续更新ing xff09 本文主要介绍使用AutoModelForTokenClassification在典型序列识别任务
  • 各种预训练模型的理论和调用方式大全

    诸神缄默不语 个人CSDN博文目录 本文主要以模型被提出的时间为顺序 xff0c 系统性介绍各种预训练模型的理论 xff08 尤其是相比之前工作的创新点 xff09 调用方法和表现效果 最近更新时间 xff1a 2023 5 10 最早更新
  • 对天乙社区bbscs8实现的详细分析三

    经过前面的分析 我们已经理清楚了业务层 接下来的部分将是web层部分 首先我们从web xml开始 我们知 道任何一个java web应用系统都是从WEB INF web xml启动的 根据servlet2 4规范filter执行是按照 w
  • linux下安装node和npm

    linux下安装node和npm 1 打开linux的命令窗口 xff0c 进入根目录 cd 2 使用wget命令下载node包 注 xff1a 这里作者下载的是16 14版本的node xff0c 如果有需要可以直接更换制定版本的node
  • FreeRTOS小知识点

    61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 FreeRTOS 中实现临界区的两种途径 61 61 61 61 61 61 61 61 61 61 61 61 61 61
  • 51单片机连接ESP8266串口WiFi模块

    烧录固件 引脚连接 WiFi51单片机VCC3 3V xff08 5V连接时间过长可能会烧坏WiFi模块 xff09 GNDGNDCH PD3 3VGPIO0GNDUTXDTXDURXDRXD 烧录固件 打开烧录软件 xff0c 选择配置选
  • linux 远程可视化

    实验linux是vmware上的rhel6 0 xff0c 安装的是centos社区桌面 xff0c ip 192 168 31 223 xff0c win设置的固定ip 192 168 31 166 xff0c 且远程ssh软件用的是Se
  • 【七夕节】浪漫七夕,代码传情。将爱意变成绚烂的立体场景,给她(他)一个惊喜!(送代码)

    浪漫七夕 xff0c 代码传情 将爱意变成绚烂的立体场景 xff0c 给她 xff08 他 xff09 一个惊喜 xff01 一 python代码 xff08 情话转二进制编码 xff09 二 js代码部分 xff08 二进制编码生成立体场
  • 【可信执行环境】Keystone 简介

    当下 xff0c 安全挑战是一个非常突出的问题 可行执行环境TEE Trusted Execution Environment 成为必须满足的特性 1 安全挑战与TEE 1 1 安全挑战的来源 xff1a 1 1 1 被抄板 导致研发投入的
  • 超长docker笔记

    docker ce 和docker ee docker操作容器只需要id前4位就可以 docker编译安装 https blog csdn net lwyeluo article details 51765309 删除命令 docker r
  • 第1课【寄存器开发到库开发】寄存器 库 位操作 封装 分层 GPIO

    目录 基本知识框架课堂笔记什么是寄存器开发什么是库开发寄存器开发和库开发的关联寄存器开发的基本流程寄存器开发的优缺点 库开发的基本流程库开发的优缺点 结论 如何从寄存器开发实现库开发 xff08 GPIO口为例 xff0c 通过操作其寄存器
  • python str基本用法

    目录 1 没什么用的 1 1 调用实例属性后自动执行 getattribute 1 2 实例化后自动调用 new 1 3 将其他变量转变为字符串 repr 1 4 反向替代占位符 格式化 rmod 1 5 字符串反向做乘法 rmul 1 6
  • 32.QButtonGroup

    目录 1 创建和添加按钮 1 1 创建按钮组 1 2 添加按钮 addButton 2 查看按钮 2 3 获取当前选中的按钮 CheckedButton 3 从按钮组中移除按钮 removeButton 4 ID操作 4 1 设置 setI
  • Windows下的Win32串口编程

    在工业控制中 xff0c 工控机 xff08 一般都基于Windows平台 xff09 经常需要与智能仪表通过串口进行通信 串口通信方便易行 xff0c 应用广泛 一般情况下 xff0c 工控机和各智能仪表通过RS485总线进行通信 RS4
  • Ubuntu内网穿透

    本文借鉴 使用frp进行内网穿透 少数派 目录 1 准备材料 2 服务端部署 3 服务端后台运行 4 客户端部署 1 准备材料 1 一台具有公网IP的实体机 xff08 服务端 xff0c 也可以是vps 2 一台网页部署内网的实体机 客户