Ubuntu内网穿透

本文借鉴 使用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与上面相同,经测试使用两个机器穿透互相并不影响 

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Suyuoa

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值