Administrator
发布于 2025-04-18 / 2 阅读
0
0

Frp配置内网穿透tcp/http

引言

内网穿透(Port Forwarding)是一种网络技术,允许你将外部网络中的请求转发到内部网络中的特定计算机或设备。

内网穿透通常需要一种中间代理或服务器,它位于内部网络和外部网络之间,将外部请求路由到内部目标。这可以通过各种工具和服务来实现,包括专用的内网穿透工具、虚拟专用网络(VPN)和云服务。

其中,frp(Fast Remote Port Forwarding)是一款流行的内网穿透工具。本文手把手教你如何用frp搭建内网穿透服务,使得公网IP的流量穿透你家里内网环境的服务端口。

环境准备

1、一台家用内网主机,安装了Linux等虚拟机(参见上一篇文章https://www.yekunlee.com/archives/linux-redhat9.3xu-ni-ji-an-zhuang,已安装Linux虚拟机);

2、个人电脑,可以使用终端ssh登录Linux虚拟机;

如下图,使用xshell工具ssh登录Linux虚拟机:

3、任意云厂商服务器1台、公网IP 1个;

作者本人是阿里云的服务器,2C2G,公网IP:120.79.121.211

4、frp server和client安装包;

官网自行下载:https://github.com/fatedier/frp/releases

整个原理不复杂,如下图:

将下载的包,上传到阿里云服务器和本地的redhat9.3虚拟机,本地虚拟机配置如下

阿里云服务器:

修改配置

server端修改配置:

服务端放通防火墙端口,即在阿里云配置防火墙放通端口:

client端修改配置:

启动服务

启动后登录frp web服务器,查看客户端

TCP成果检验

如下图,可以看到阿里云服务器的20213端口已经穿透到node3的内网22端口了

进行验证,全部失败,原因是阿里云的防火墙限制

阿里云添加防火墙规则,放通20213端口

至此,内网穿透配置实现完成。

https配置

在阿里云平台添加域名主机记录,比如作者的博客域名blog.yekunlee.com,frp的web域名frp.yekunlee.com

安装caddy

安装参考上一篇文章:

https://blog.yekunlee.com/archives/caddypei-zhi-httpsbing-zi-dong-guan-li-sslzheng-shu

如下图,接下来我们要配置/etc/caddy/Caddyfile

配置好后,启动caddy。

配置frp 服务端

如下图

配置完成后启动frps。

nohup ./frps -c frps.ini > /dev/null 2>&1 &

成果检验

如下图,访问https://frp.yekunlee.com/static/#/成功进入frp的web页面


评论