前言
frp介绍
- 是一个内网穿透工具,通过具有公网IP节点的代理服务器将内网服务暴露公网
- 项目地址GitHub – fatedier/frp: A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet.
我将介绍如何在alpine服务器和群晖上安装frps(服务器端)和frpc(客户端)
服务器端安装
准备工作:
- 服务器(有公网ip)
- 放行端口
服务器篇
一、alpine服务器上安装frps服务器端
1.更新并安装依赖:首先,更新包管理器并安装一些必要的软件包,例如 wget 和 shadow,以便管理用户和下载软件
apk update
apk add wget shadow
下载并安装 FRP 服务端:FRP 是开源的,可以通过 GitHub 下载。我们将下载 frps 并解压到合适的目录。
cd /usr/local/bin
wget https://github.com/fatedier/frp/releases/download/v0.51.3/frp_0.51.3_linux_amd64.tar.gz
tar -xzf frp_0.51.3_linux_amd64.tar.gz
mv frp_0.51.3_linux_amd64/frps /usr/local/bin/
rm -rf frp_0.51.3_linux_amd64 frp_0.51.3_linux_amd64.tar.gz创建 FRP 的配置文件:创建一个配置文件,指定你所需要的 token 和其他配置
mkdir /etc/frp
nano /etc/frp/frps.ini
在文件中添加以下内容:bind_port 是 FRP 服务端监听的端口,token 用来保证客户端和服务端之间的通信安全。
[common]
bind_port = 7000
token = 123456
创建用户并设置密码:使用 useradd 创建用户 yusir,然后用 passwd 命令设置密码,这将创建用户 yusir 并将其密码设置为 123456
useradd -m yusir
echo "yusir:123456" | chpasswd设置 FRP 服务为系统服务:为了使 frps 在系统启动时自动运行,你需要创建一个服务文件,创建一个 systemd 服务文件
nano /etc/init.d/frps
添加以下内容:
#!/sbin/openrc-run
name="FRP Server"
description="FRP (Fast Reverse Proxy) Server"
command="/usr/local/bin/frps"
command_args="-c /etc/frp/frps.ini"
pidfile="/run/frps.pid"
保存并关闭文件,然后赋予执行权限:
chmod +x /etc/init.d/frps
rc-update add frps default
- 启动 FRP 服务
chmod +x /etc/init.d/frps - 验证 FRP 是否正常运行
netstat -tunlp | grep 7000
frpc ini配置模版
serverAddr = "8.130.69.238" //所要使用的服务器公网ip地址
serverPort = 7000 //通信端口
auth.method = "token" //验证方式:token
auth.token = "kfcvivo50" //通信密钥token
webServer.addr = "0.0.0.0" //客户端监视ip地址,一般为0.0.0.0,不作改变
webServer.port = 7400 //管理后台
webServer.user = "yusir" //后台账户
webServer.password = "yusir1234" //后台密码
webServer.pprofEnable = false
[[proxies]] //必须这个,第一个隧道
name = "test-tcp" //名称
type = "tcp" //连接方式
localIP = "172.20.122.116" //本地地址
localPort = 7800 //本地端口
remotePort = 7800 //转发端口
[[proxies]] //必须这个,第二个隧道
name = "test"
type = "tcp"
localIP = "172.20.122.116"
localPort = 7400
remotePort = 7400
# tls //开启tls等于https加上了证书
#transport.tls.certFile = "/etc/frp/ssl/client.crt"
#transport.tls.keyFile = "/etc/frp/ssl/client.key"
#transport.tls.trustedCaFile = "/etc/frp/ssl/ca.crt"
二、debian服务器docker compose安装frps
为什么要用 docker-compose 因为搬家很方便
第一步:
docker安装(默认最新版)
curl -fsSL https://get.docker.com | bash -s docker
第二步:
安装 docker-compose
curl -L "https://github.com/docker/compose/releases/download/v2.23.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
第三步:
chmod +x /usr/local/bin/docker-compose
给与权限
第四步:
在VPS 输入命令创建目录
mkdir -p /root/data/docker_data/frps
进入目录 cd /root/data/docker_data/frps
输入命令touch docker-compose.yml
创建配置文件。复制下面代码到配置文件里。
services:
frps:
restart: always
network_mode: host
volumes:
- '/root/data/docker_data/frps/frps.toml:/etc/frp/frps.toml'
container_name: frps
image: snowdreamtech/frps:0.56.0
第五步:
输入命令 touch frps.toml
创建配置文件。复制下面代码到配置文件里。
# frps.toml
bindPort = 7000 # 服务端与客户端通信端口
transport.tls.force = false # 服务端将只接受 TLS链接
auth.token = "12345678" # 身份验证令牌,frpc要与frps一致
# Server Dashboard,可以查看frp服务状态以及统计信息
webServer.addr = "0.0.0.0" # 后台管理地址 这里不需要改动
webServer.port = 7500 # 后台管理端口
webServer.user = "admin" # 后台登录用户名
webServer.password = "admin" # 后台登录密码
最后 docker-compose up -d
安装即可
到这里我们的服务端FRPS搭建完成
三、群晖安装frps
1.安装矿神源
套件中心-社群-右上角设置-添加套件来源
名称:我不是矿神
位置:https://spk7.imnks.com/
2.社群中安装Frps服务端
3.打开Frps服务端配置,替换为下面的模版配置
bindPort = 7000
transport.tls.force = false
auth.token = "12345678"
webServer.addr = "1.1.1.1" #替换为你的ip地址,可为域名
webServer.port = 7500 #管理后台端口
webServer.user = "admin"
webServer.password = "admin"
至此三种安装frps服务端方法介绍完毕