Henry
发布于 2025-02-21 / 10 阅读
0
0

FRP - 服务安装

背景简介

本地作为一个测试用服务器,通过云端一个拥有公网IP的服务器进行内网穿透,供外网访问。

环境配置

  1. 系统:6.1.0-18-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.76-1 (2024-02-01) x86_64 GNU/Linux
  2. FRP: 0.56.0

官方参考文档

详细步骤

下载安装包

Github 下载页面

下载指令:wget -c (启用断点续传)

wget -c https://github.com/fatedier/frp/releases/download/v0.56.0/frp_0.56.0_linux_amd64.tar.gz

解压:tar -xvzf 

tar -C frp/ -xvzf frp_0.56.0_linux_amd64.tar.gz

移动至目标路劲:mv frps* /server/frps/ (假设目标路径为/server/frps)

mv frp/frp_0.56.0_linux_amd64/frps* /server/frps/

使用 systemd 模式管理服务

创建 frps.service 文件:vim 

vim /etc/systemd/system/frps.service

写入内容

[Unit]
# 服务名称,可自定义
Description = frp server
After = network.target syslog.target
Wants = network.target

[Service]
Type = simple
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /server/frps/frps -c /server/frps/frps.toml

[Install]
WantedBy = multi-user.target

激活服务:systemctl enable

systemctl enable frps

配置 frp 服务端 - frps

更新配置文件:vim /server/frps/frps.toml

配置服务端绑定端口

# 服务端口
bindPort = 7000

# 服务鉴权
auth.method = "token"
auth.token = "your_token"

# log settings
log.to = "/server/frps/log/frps.log"
log.level = "info"
log.maxDays = 14

# web dashbard configuration
webServer.addr = "127.0.0.1"
webServer.port = 7001
webServer.user = "frps_user"
webServer.password = "frps_password"
  • bindPort : 服务端监听的端口号
  • auth.method: 鉴权方式,这里使用“token”方式进行鉴权。
  • auth.token: 鉴权使用的token,需要替换为你的实际token。
  • log.to: 日志文件的存储路径,这里设置为服务器上的/server/frps/log/frps.log。
  • log.level: 日志级别,这里设置为“info”,表示记录信息级别的日志。
  • log.maxDays: 日志文件保留的最大天数,这里设置为14天。
  • webServer.addr: Web服务监听的地址,这里设置为本地地址127.0.0.1。
  • webServer.port: Web服务监听的端口号,这里设置为7001。
  • webServer.user: 访问Web服务的用户名,这里设置为frps_user。
  • webServer.password: 访问Web服务的密码,这里设置为frps_password。

重启 frps 服务使配置生效

systemctl restart frps

查看状态

root@frp-server:~# systemctl status frps
● frps.service - frp server
     Loaded: loaded (/etc/systemd/system/frps.service; enabled; preset: enabled)
     Active: active (running) since Fri 2024-03-29 16:58:12 CST; 10 months 24 days ago
   Main PID: 5384 (frps)
      Tasks: 7 (limit: 2025)
     Memory: 230.5M
        CPU: 5d 7h 28min 34.845s
     CGroup: /system.slice/frps.service
             └─5384 /server/frps/frps -c /server/frps/frps.toml

Mar 29 16:58:12 frp-server systemd[1]: Started frps.service - frp server.

配置 frp客户端 - frpc

下载方式同上,将客户端配置移动到自己需要的目录,例如

myserver@docker-main-server:~$ mv frp/frp_0.56.0_linux_amd64/frpc* /server/frpc/

基于frps的配置,更新 frpc.toml

myserver@docker-main-server:~$ sudo nano /server/frpc/frpc.toml
myserver@docker-main-server:~$ cat /server/frpc/frpc.toml
serverAddr = "your_address"
serverPort = 7000

# 服务鉴权
auth.method = "token"
auth.token = "your_token"

# log settings
log.to = "/server/frpc/log/frpc.log"
log.level = "info"
log.maxDays = 14


[[proxies]]
name = "server_ssh"
type = "tcp"
localIP = "127.0.0.1"
localPort = 22
remotePort = 20333

配置 frpc service,新建配置文件 /etc/systemd/system/frpc.service

myserver@docker-main-server:~$ sudo nano /etc/systemd/system/frpc.service
myserver@docker-main-server:~$ cat /etc/systemd/system/frpc.service
[Unit]
# 服务名称,可自定义
Description = frp client
After = network.target syslog.target
Wants = network.target

[Service]
Restart=always
RestartSec=30
StartLimitInterval=0
Type = simple
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /server/frpc/frpc -c /server/frpc/frpc.toml

[Install]
WantedBy = multi-user.target

启动 frpc 服务

myserver@docker-main-server:~$ sudo systemctl enable frpc --now

查看 frpc 服务

myserver@docker-main-server:~$ sudo systemctl status frpc
● frpc.service - frp client
     Loaded: loaded (/etc/systemd/system/frpc.service; enabled; preset: enabled)
     Active: active (running) since Tue 2025-02-11 10:20:47 HKT; 1 week 3 days ago
   Main PID: 87615 (frpc)
      Tasks: 6 (limit: 2307)
     Memory: 14.8M
        CPU: 2min 44.789s
     CGroup: /system.slice/frpc.service
             └─87615 /server/frpc/frpc -c /server/frpc/frpc.toml

Feb 11 10:20:47 docker-main-server systemd[1]: Started frpc.service - frp client.

以上便是本文的全部内容,感谢您的阅读。



评论