更新日志
20241210-更新新版toml配置文件,增加systemctl文件。
介绍
frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 https 应用协议提供了额外的能力,且尝试性支持了点对点穿透。
Github项目地址:
下载frp
根据自己的系统选择下载。
查看架构命令:arch
如果输出x86_64则需要下载带linux_amd64的那个压缩包,如果输出的是其他的,则在文件列表中找 linux 的对应架构的压缩包。
例:
centos7就下载frp_0.25.3_linux_amd64.tar.gz。
手机arm架构的就下载frp_0.25.3_linux_arm64.tar.gz。
Github下载地址:https://github.com/fatedier/frp/releases
安装frps
1.在有公网ip的服务器安装frps
2.解压压缩包
tar -xzvf frp_0.25.3_linux_amd64.tar.gz
3.修改文件夹名改成 frp
mv frp_0.25.3_linux_amd64 frp
4.进入frp目录
cd frp
5.确保frps程序具有可执行权限
chmod +x frps
6.测试frp
执行如下命令看看是否能正常运行。正常情况下会输出一串帮助信息,那么就说明你下载了正确架构的版本。
./frps --help
如果提示-bash: ./frps: cannot execute binary file: Exec format error就说明你下错版本了。
7.打开frps配置并文件
vi frps.toml
配置参考:
# 绑定ip
bindPort = 8888
# quic协议到端口
quicBindPort = 8888
# 控制台到配置参数
webServer.addr = "127.0.0.1"
webServer.port = 8889
webServer.user = "xiaozhu"
webServer.password = "123456"
# 连接到token
auth.token = "123456"
# 是否开启健康检查
auth.additionalScopes = ["HeartBeats"]
# 允许映射的端口
allowPorts = [
{ start = 12000, end = 12100 },
{ single = 8900 }
]
# 最大连接池数量
transport.maxPoolCount = 50
完整配置信息参考案例配置:https://github.com/fatedier/frp/blob/dev/conf/frps_full_example.toml
8.尝试启动frps
./frps -c frps.toml
如果没有出现错误提示就说明配置没有问题,可以正常使用。
9.使frps在后台持续运行。
先进入目录然后执行如下命令:
nohup frps -c frps.ini &
10.停止frps的话。
ps -ef|grep frps
根据查询到的PID进行关闭:
kill -9 PID
11.systemctl管理
vi /usr/lib/systemd/system/frps.service
[Unit]
Description=frpc-server
After=network.target
[Service]
Type=simple
WorkingDirectory=/root/frp/frp_0.61.0_linux_amd64
ExecStart=/root/frp/frp_0.61.0_linux_amd64/frps -c /root/frp/frp_0.61.0_linux_amd64/frps.toml
[Install]
WantedBy=multi-user.target
配置frpc
1.和上文一样下载文件解压
2.配置文件
vi frpc.toml
# 服务器ip
serverAddr = "127.0.0.1"
# 服务器端口
serverPort = 8888
# 采用协议 稳定可选tcp
#transport.protocol = "quic"
# 每个代理连接数量
transport.poolCount = 3
# 连接token
auth.token = "123456"
# 是否开启健康检查
auth.additionalScopes = ["HeartBeats"]
[[proxies]]
# 代理名称
name = "wiki"
# 代理类型
type = "tcp"
# 代理ip
localIP = "192.168.10.1"
# 代理本地端口
localPort = 12013
# 远程端口
remotePort = 12013
[[proxies]]
# 代理名称
name = "wiki2"
# 代理类型
type = "tcp"
# 代理ip
localIP = "192.168.10.1"
# 代理本地端口
localPort = 12014
# 远程端口
remotePort = 12014
更多配置信息参考案例配置:https://github.com/fatedier/frp/blob/dev/conf/frpc_full_example.toml
3.启动frpc
./frpc -c frpc.toml
4.使frpc在后台持续运行
先进入目录然后执行如下命令:
nohup frpc -c frpc.ini &
5.停止frps的话
ps -ef|grep frpc
根据查询到的PID进行关闭:
kill -9 PID
6.systemctl管理
vi /usr/lib/systemd/system/frpc.service
[Unit]
Description=frpc-server
After=network.target
[Service]
Type=simple
WorkingDirectory=/root/frp/frp_0.61.0_linux_amd64
ExecStart=/root/frp/frp_0.61.0_linux_amd64/frpc -c /root/frp/frp_0.61.0_linux_amd64/frpc.toml
[Install]
WantedBy=multi-user.target
评论