frp分为两个部分 服务端、客户端
frp需要有一台公网服务器运行服务端 如没有请选择其他商业版软件
服务端(frps):一般部署在公网服务器上 例如:阿里云、腾讯云 等
客户端(frpc):部署在需要穿透的客户端 例如:本地主机、NAS、软路由 等
1. Frps 服务端部署(公网服务器)
下载 Frps 文件,执行如下命令下载并解压 FRP 文件
PS:本文中的 frp 文件路径为 /opt/frp
解压后文件说明:
frps 服务端
frps.toml 服务端配置文件
frpc 客户端
frpc.toml 客户端配置文件
wget -O frp.tar.gz 'https://alist.hret.dev/d/%E6%8A%80%E6%9C%AF%E6%96%87%E4%BB%B6/Frp/frp_0.62.1_linux_amd64.tar.gz?sign=hnEktw7t_2aPDzBY8FAd05-HUPj38wikIVkla1i4DHA=:0' && \
tar -xzf frp.tar.gz && \
dir=$(tar -tzf frp.tar.gz | head -1 | cut -f1 -d"/") && \
sudo mv "$dir" frp && \
sudo mv frp /opt/frp && \
rm frp.tar.gz && \
cd /opt/frp
执行下方命令修改 Frps 配置文件 frps.toml
以下配置仅基本用法 高级用法请自行查看配置文件说明根据需求调整
frps配置文件说明:https://gofrp.org/zh-cn/docs/reference/server-configures/
sudo tee /opt/frp/frps.toml > /dev/null << 'EOF'
bindPort = 7000 # 服务端端口
auth.method = "token" # 使用令牌进行身份验证
auth.token = "hret1234" # 令牌,客户端与服务端一致才能连接成功 推荐配置复杂一点
EOF
启动 Frps
配置好后执行如下命令启动即可, 出现如下图所示内容则代表启动成功
./frps -c frps.toml #启动frps
(可选)配置系统守护进程(仅限基于 systemd 的Linux发行版)
使用 systemd
管理 frps
根据方便易管理并且可以自动重启
1. 创建 systemd 服务文件
使用以下命令创建服务文件:
sudo nano /etc/systemd/system/frps.service
2. 写入以下内容:
[Unit]
Description=FRP Server Service
After=network.target
[Service]
Type=simple
User=nobody
Restart=on-failure
ExecStart=/opt/frp/frps -c /opt/frp/frps.toml
ExecReload=/bin/kill -HUP $MAINPID
RestartSec=5s
[Install]
WantedBy=multi-user.target
3. 启用并启动服务
运行如下命令,最后一个命令运行出现下图内容 active(running)
则代表成功
# 重新加载 systemd 配置
sudo systemctl daemon-reload
# 启用 frps 开机启动
sudo systemctl enable frps
# 启动 frps 服务
sudo systemctl start frps
# 查看状态
sudo systemctl status frps
2. Frpc 客户端运行(本地服务器、NAS 等等)
客户端运行方式有很多种 本文中使用的则是 frpc-desktop 客户端
下载 frpc-desktop
下载安装frp-desktop后,点击左侧菜单下载frp。请避免与frps(服务端) 版本偏差过大
服务端配置
点击左侧菜单进入设置界面,按照之前设置的信息配置服务器信息后点击保存即可
添加代理
代理的配置根据自己的详细需求决定 本文中使用 tcp 示例
PS: 例如公网 IP 为 1.1.1.1 图中的外网端口为 8888 那么就可以通过 1.1.1.1:8888 访问到本地的 127.0.0.1:8088
内网地址:你需要内网穿透的本地地址
内网端口:你需要内网穿透的服务端口
外网端口:你需要暴露到公网 IP 对应的端口
评论区