frp内网穿透

什么是FRP?

frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发。

你需要掌握的知识:

  • 首先你需要知道一些网络知识,内网、外网、动态IP、域名等。
  • 你得有台挂在公网上的一台服务器,现在服务器都挺便宜的,阿里云、腾讯云等等。
  • 我说的这个frp是一个开源的项目,在GitHub上。可能会牵扯到别的东西。
  • 另外你需要会一些常用的linux系统命令。

这是frp的官方文档,上面有详细的介绍。
frp分为server端与client端。顾名思义,server端放到服务器上,client端放在你要穿透的机器上。

1先下载frp的软件,为了方便,我们直接下载人家打包好的。

打开这个网页,选择你需要的版本frp
frp版本
一般服务器都是用的64位系统,所以直接选择linux_amd64的就可以了,使用wget 命令下载。

wget https://github.com/fatedier/frp/releases/download/v0.20.0/frp_0.20.0_linux_amd64.tar.gz
tar -zxvf frp_0.20.0_linux_amd64.tar.gz
cd frp_0.20.0_linux_amd64
外网主机作为服务端,可以删掉不必要的客户端文件,使用rm指令删除文件。
rm -f frpc
rm -f frpc.ini

2下面是配置服务端

vim frps.ini

[common]
bind_port = 7000
#vhost_http_port = 8088
dashboard_port = 7500
#仪表板的用户名和密码都是可选的,如果未设置,则默认为admin。
dashboard_user = admin
dashboard_pwd = admin123
login_fail_exit = false

[common]部分是必须有的配置,其中bind_port是自己设定的frp服务端端口,vhost_http_port是自己设定的http访问端口。(这个地方比较坑,所以还是不要使用http协议了,我统一使用了tcp协议)

保存上面的配置后,使用以下指令启动frp服务端。(文章下面会附上后台运行frp)

./frps -c ./frps.ini

服务端到此就已经全部配置完毕。

3下面是配置客户端

客户端配置操作跟服务端配置差不多。

wget https://github.com/fatedier/frp/releases/download/v0.20.0/frp_0.20.0_linux_amd64.tar.gz
tar -zxvf frp_0.20.0_linux_amd64.tar.gz
cd frp_0.20.0_linux_amd64
rm -f frps
rm -f frps.ini
vim frpc.ini

以下是客户端配置:

[common]
server_addr = 你的服务器IP地址
server_port = 7000

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000

[web01]
type = tcp
local_port = 8080
remote_port = 8080

[common]中的server_addr填frp服务端的ip(也就是外网主机的IP),server_port填frp服务端的bind_prot。

[ssh]中的local_port填客户端的ssh端口,一般都是22。

[web01]是你要代理的web页面,我这里代理的是8080端口。

在这里需要说明一点,local_port是客户端的端口,remote_port是服务器端的端口。

然后使用 ./frpc -c ./frpc.ini 来运行

4查看成果

使用任意任意bash来连接你客户端的ssh。

ssh -oPort=6000 用户名@服务器ip

如果要访问网页,浏览器中输入 http://yourip:8080 ,即可查看到你代理的网页。

多说一句,当有域名的时候,你可以直接将服务器ip替换成域名即可。

访问http://yourip:7500 ,输入用户名密码,就可以查看到你的链接情况
这里写图片描述

这是frp自带的一个面板,可以查看端口的连接情况。

5如何让frp在后台运行。

使用nohup可以让程序在后台运行。命令如下。

nohup ./frpc -c ./frpc.ini &

这也不是最终的解决方法,具体设置在: frp后台启动的几个方法

6为什么配置了,却打不开网页,连接不上呢

  • 首先确保有网。
  • 其次服务器的安全组是不是没有放开端口。
  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值