使用FRP安装包快速设置配置

使用FRP安装包快速设置配置

1、下载文件并解压文件

源码下载:https://github.com/fatedier/frp

下载最新版本frp 0.4.4,执行命令如下:

wget https://github.com/fatedier/frp/releases/download/v0.44.0/frp_0.44.0_linux_amd64.tar.gz
tar -zxvf frp_0.44.0_linux_amd64.tar.gz  #解压缩:tar xvf 文件名
mv frp_0.44.0_linux_amd64 /usr/local/frp_0.44.0   #解压后记得重命名文件夹并移动
cd /usr/local/frp_0.44.0     #进入解压目录

测试启动命令(需要在 /usr/local/frp_0.41.0 目录下操作)

nohup ./frps -c ./frps.ini 

2、添加服务frps.service

配置服务文件frps.service文件写成服务开机自启(以下示例内容仅在CentOS7上测试成功,CentOS8上没测试成功),在frp 0.42 版本中提供官方默认service文件,也可参考一下。

vim /usr/lib/systemd/system/frps.service

[Unit]
Description=frps service
After=network.target remote-fs.target nss-lookup.target
Wants=network.target

[Service]
Type=simple
ExecStart=/usr/local/frp_0.44.0/frps -c /usr/local/frp_0.44.0/frps.ini
KillSignal=SIGQUIT
TimeoutStopSec=5
KillMode=process
PrivateTmp=true
StandardOutput=syslog
StandardError=inherit

[Install]
WantedBy=multi-user.target

其中ExecStart=/usr/local/frp_0.44.0/frps -c /usr/local/frp_0.44.0/frps.ini

文件路径是根据解压文件存放的路径修改的

3、重新加载服务的配置文件

systemctl daemon-reload

4、服务端 frps.ini配置

注意:配置时需要删除注释内容,不然会导致配置内容不生效,或者程序显示乱码问题,以下有些是示例,仅供参考。

[common]        
bind_port = 7000    # 监听端口,客户端与服务端进行通信的端口,即frp服务端口,需与frp客户端server_port一致 
vhost_http_port = 80    # 当客户端配置type为http时使用这个端口访问 
vhost_https_port = 443   # 当客户端配置type为https时使用这个端口访问 
authentication_method = token       # 默认认证方式token
token = waterbeartoken    # 认证token,客户端配置对应相同的token 

dashboard_port = 7500    
#控制台端口 通过 Dashboard 可以方便的查看 FRP 的状态以及代理统计信息展示 通过 http://[server_addr]:7500 访问 Dashboard 界面。 
dashboard_user = waterbear   # dashboard的用户名 
dashboard_pwd = waterbear    # dashboard的密码 
tcp_mux=true    
#默认启用,开启客户端和服务器端之间的连接支持多路复用,不再需要为每一个用户请求创建一个连接,使连接建立的延迟降低,并且避免了大量文件描述符的占用,使 frp 可以承载更高的并发数。
max_pool_count =100    #设置每个代理可以创建的连接池上限,默认为5
log_file = ./frps.log     # 日志文件记录位置 
log_level = info      # 日志级别 
log_max_days = 7      # 记录日志天数

5、客户端 frps.ini配置

注意:配置时需要删除注释内容,不然会导致配置内容不生效,或者程序显示乱码问题,以下有些是示例,仅供参考。

[common]
server_addr = 1.1.1.1	#公网服务器IP,也就是你安装frp服务端的服务器IP
server_port = 7000      # 监听端口,客户端与服务端进行通信的端口,即frp服务端口,需与frp服务端server_port一致
token = waterbeartoken   # 认证token,服务端配置对应相同的token 

#ssh等TCP协议使用代理方法:
[ssh]	#中括号内的命名必须具有全局为一性,重复同名会导致报错
type = tcp                    #使用tcp方式
local_ip = 192.168.1.104    #内网服务器使用的ip
local_port = 22            #内网服务器ssh服务使用的本地端口22
remote_port = 2222            #公网使用的远程端口,也是是外网访问端口为

#以下这种配置方式与frps.ini中配置的vhost_http_port与vhost_https_port相关联,使用了域名绑定,访问http://web1.l-t.top和https://web2.l-t.top进行访问,通过不同访问域名区分网站。
[web87]
type = http                   #http方式
local_ip = 192.168.1.104    #群晖在内网使用的ip
local_port = 87             #本地端口
custom_domains = web1.l-t.top   #如解析对应域名到公网IP这里填写解析域名,如无域名配置公网服务器ip
[web88]
type = https                   #https方式
local_ip = 192.168.1.104    #群晖在内网使用的ip
local_port = 88           #本地端口
custom_domains = web2.l-t.top   #如解析对应域名到公网IP这里填写解析域名,如无域名配置公网服务器ip

#以下这种配置方式与frps.ini中配置的vhost_http_port和vhost_https_port无关,没有绑定访问域名,没有域名使用119.29.29.29:80和119.29.29.29:443访问,通过不同端口号区分网站。
[web89]
type = tcp                    #tcp方式
local_ip = 192.168.1.104   #群晖在内网使用的ip
local_port = 89            #本地端口
remote_port = 80            #远程端口,也就是外网访问端口
custom_domains = 119.29.29.29  #绑定域名,无域名配置服务器ip
[web90]
type = tcp                    #tcp方式
local_ip = 192.168.1.104    #群晖在内网使用的ip
local_port = 90           #本地端口
remote_port = 443            #远程端口,也就是外网访问端口
custom_domains = 119.29.29.29  #绑定域名,无域名配置服务器ip

#使用范围端口映射,在 frpc 的配置文件中可以指定映射多个端口,目前只支持 tcp 和 udp 的类型。这一功能通过 `range:` 段落标记来实现,客户端会解析这个标记中的配置,将其拆分成多个 proxy,每一个 proxy 以数字为后缀命名。
#例如要映射本地 63875-63895 和 21 这22个端口,主要配置如下:
[range:FTP2121]
type = tcp
local_ip = 192.168.1.104
local_port = 21,63875-63895
remote_port = 21,63875-63895

6、自定义二级域名(可选设置)

在多人同时使用一个 frps 时,通过自定义二级域名的方式来使用会更加方便。

通过在 frps 的配置文件中配置 subdomain_host,就可以启用该特性。之后在 frpc 的 http、https 类型的代理中可以不配置 custom_domains,而是配置一个 subdomain 参数。

只需要将 *.{subdomain_host} 解析到 frps 所在服务器。之后用户可以通过 subdomain 自行指定自己的 web 服务所需要使用的二级域名,通过 {subdomain}.{subdomain_host} 来访问自己的 web 服务。

# frps.ini
[common]
subdomain_host = frps.com

将泛域名 *.frps.com 解析到 frps 所在服务器的 IP 地址。

# frpc.ini
[web]
type = http
local_port = 80
subdomain = test

frps 和 frpc 都启动成功后,通过 test.frps.com 就可以访问到内网的 web 服务。

注:如果 frps 配置了 subdomain_host,则 custom_domains 中不能是属于 subdomain_host 的子域名或者泛域名。

同一个 http 或 https 类型的代理中 custom_domainssubdomain 可以同时配置。

更多设置详情请参考:

https://gofrp.org

https://www.bookstack.cn/read/frp/README_zh.md

7、frps服务管理命令

systemctl start frps 
systemctl stop frps 
systemctl restart frps 
systemctl status frps 
systemctl enable frps 
systemctl disable frps

使用docker方式启动FRP

下载FRP镜像:

服务端:docker pull snowdreamtech/frps

客户端:docker pull snowdreamtech/frpc

启动FRP命令:

服务端启动:start frps

docker run --restart=always --network host -d -v /etc/frp/frps.ini:/etc/frp/frps.ini --name frps snowdreamtech/frps

客户端启动:start frpc

docker run --restart=always --network host -d -v /etc/frp/frpc.ini:/etc/frp/frpc.ini --name frpc snowdreamtech/frpc

 

版权声明:
作者:WaterBear
链接:https://l-t.top/2316.html
来源:雷霆运维
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>
文章目录
关闭
目 录