frp内网穿透搭建

1、准备条件

一台具有公网IP的服务器,比如阿里云服务器

2、frp下载 下载地址:https://github.com/fatedier/frp/releases image

3、解压安装

1、解压服务端文件

将下载的linux压缩包上传到服务器上,然后解压tar -xvf frp_0.45.0_linux_amd64.tar.gz 解压后的目录如下

image

其中frps的都是服务端文件,frpc的都是客户端文件,在这里我们只用得到服务端文件 可以删除用不到的客户端文件rm -f frpc*

2、解压客户端文件

windows安装包解压到本地

image

可以删除用不到的frps文件

4、配置文件

1、配置服务端

编辑frps.ini可以看到默认存在的配置

[common]
bind_port = 7000

这是客户端和服务端之间通信的端口,可以不用修改,下面添加其他的配置

[common]
#默认端口7000,客户端和服务端通信的端口,可以不用修改
bind_port = 7000 
#http服务监听的端口,即frp服务端向外部暴露出去的端口
vhost_http_port = 9988

#frp的web管理控制台的用户名和密码,7500是默认端口,可以通过服务端ip+7500端口登录
dashboard_port = 7500 
#frp管理页面的账密,随意设置
dashboard_user = admin
dashboard_pwd = U93@$Iig!T2$IK^l

#日志
log_file = ./frps.log
#log_level = info
log_max_days = 3

2、配置客户端frpc.ini

[common]
server_addr = 云服务器公网IP
#与服务端通信的端口,与frps.ini文件中的bind_port一致,默认不变
server_port = 7000

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

#自定义内网穿透通道,名称必须唯一
[http-test]
#连接类型
type = http
#本地地址
local_ip = 127.0.0.1
#需要穿透的本地内网的端口号
local_port = 18880
#请求时映射的域名,如果没有域名,填云服务器公网的IP地址
custom_domains = 云服务器公网IP

注:服务端的bind_port和客户端的server_port可以任意设置可用端口,但这两个值必须一致,vhost_http_port、dashboard_port可设置任意端口

5、开放云服务器端口

以阿里云服务器举例,登录控制台,选择安全组,进入配置规则 image 将bind_port、vhost_http_port、dashboard_port配置的端口开放 image

6、启动

1、启动服务端

执行后台启动命令./frps -c ./frps.ini & 启动成功如图所示image 如果配置了log_file日志文件,会把打印信息记录到日志里

2、启动客户端

在客户端目录里打开cmd窗口,执行启动命令.\frpc.exe -c frpc.ini image 启动成功 frp穿透服务已经成功,接下来可以登录frp面板web页面,浏览器地址输入:服务器公网IP:7500
image 可以看到设置生效了

7.设置frp开启自启动

使用systemd管理frp:

1.服务端

# 需要先 cd 到 frp 解压目录.
# 复制文件
cp frps /usr/local/bin/frps
mkdir /etc/frp
cp frps.ini /etc/frp/frps.ini
# 编写 frp service 文件,以 ubuntu 为例
vim /usr/lib/systemd/system/frps.service # 有时候需要手动创建system文件夹


# frps.service内容如下
[Unit]
Description=frps
After=network.target
 
[Service]
TimeoutStartSec=30
ExecStart=/usr/local/bin/frps -c /etc/frp/frps.ini
ExecStop=/bin/kill $MAINPID
 
[Install]
WantedBy=multi-user.target


# 启动 frp 并设置开机启动
systemctl enable frps
systemctl start frps
systemctl status frps

# 部分服务器上,可能需要加 .service 后缀来操作,即:
systemctl enable frps.service
systemctl start frps.service
systemctl status frps.service

2.客户端

# 需要先 cd frp 解压目录.
# 复制文件
cp frpc /usr/local/bin/frpc
mkdir /etc/frp
cp frpc.ini /etc/frp/frpc.ini
# 编写 frp service 文件,以 centos7 为例
vim /usr/lib/systemd/system/frpc.service  # 有时候需要手动创建system文件夹


# frpc.service内容如下
[Unit]
Description=frpc
After=network.target
 
[Service]
TimeoutStartSec=30
ExecStart=/usr/local/bin/frpc -c /etc/frp/frpc.ini
ExecStop=/bin/kill $MAINPID
 
[Install]
WantedBy=multi-user.target



# 启动 frp 并设置开机启动
systemctl enable frpc
systemctl start frpc
systemctl status frpc

# 部分服务器上,可以需要加 .service 后缀来操作,即:
systemctl enable frpc.service
systemctl start frpc.service
systemctl status frpc.service
posted @ 2025-06-03 17:33  俗愿·  阅读(157)  评论(0)    收藏  举报