自建FRP内网穿透节点,让你的服务更稳定
之前一直用别人的免费FRP内网穿透,速度不稳定,还时不时断连。后来买了一台VPS,本着“不折腾会死”的原则,干脆在上面自建了一个FRP服务端。
现在家里的盒子、测试服务,都能通过自己的节点稳稳穿透出去,速度和稳定性都有保障。记一篇备忘,下次重装不用再满世界找命令。
一句话原理
在公网VPS上跑 frps(服务端),家里盒子上跑 frpc(客户端),两边一握手,公网就能直接访问内网服务。
优势:直连VPS速度更快,数据加密只有自己知道密钥,还支持 HTTP/HTTPS/TCP,想穿啥穿啥。
准备工作
- 一台公网VPS,Debian 12 或 Ubuntu 22.04+。
- 内网设备,比如海思盒子(你都要搭建FRP了,肯定是有要穿透的设备)。
- 一个域名(可有可无,国内机器需要备案域名)。
一、服务端 frps 一键部署
SSH 连上 VPS,执行:
wget https://raw.githubusercontent.com/MvsCode/frps-onekey/master/install-frps.sh -O ./install-frps.sh
chmod 700 ./install-frps.sh
./install-frps.sh install国内机器换 Gitee:
wget https://gitee.com/mvscode/frps-onekey/raw/master/install-frps.sh -O ./install-frps.sh安装过程会依次询问:
bind_port:服务端监听端口,客户端连接时用,默认 5443。vhost_http_port:HTTP 穿透统一入口,默认 80。vhost_https_port:HTTPS 统一入口,默认 443。dashboard_port:管理界面端口,默认 6443。token:客户端验证密码,脚本会随机生成一个,记下来。
不想折腾的直接回车用默认值。
二、放行防火墙端口
根据你设置的端口放行,以默认值为例:
sudo ufw allow 5443/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 6443/tcp
sudo ufw reload如果云服务商有安全组也要同步放行,不然客户端连不上。
三、服务管理
脚本会自动注册服务,日常管理用下面这些命令:
/etc/init.d/frps start # 启动
/etc/init.d/frps stop # 停止
/etc/init.d/frps restart # 重启
/etc/init.d/frps status # 查看状态
/etc/init.d/frps config # 修改配置
/etc/init.d/frps version # 查看版本四、客户端 frpc 配置
在内网设备上同样用一键脚本装 frpc:
wget https://raw.githubusercontent.com/MvsCode/frps-onekey/master/install-frpc.sh -O ./install-frpc.sh
chmod 700 ./install-frpc.sh
./install-frpc.sh install编辑配置:
frpc config填入服务器 IP、端口和你记下的 token,再添加需要穿透的本地服务。比如把内网 8090 端口的博客透出去:
serverAddr = "你的VPS公网IP"
serverPort = 5443
auth.token = "你记下的那个token"
[[proxies]]
name = "blog"
type = "http"
localIP = "127.0.0.1"
localPort = 8090
customDomains = ["你的域名"]保存后重启客户端:
frpc restart五、卸载
./install-frps.sh uninstall看着好怪install脚本运行uninstall
总结
自建FRP之后,再也不用看免费节点炸了还是没炸。速度和稳定性都有保障,想穿透几个服务就穿透几个。关键是,服务器在自己手里,不怕被删隧道。
如果你也要部署FRP,或者在折腾过程中遇到了什么怪问题,欢迎各位朋友留言交流。
当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »