自建内网穿透服务器 | Coder 小站
内容提要
本文介绍了基于Docker的FRP内网穿透部署的步骤,包括准备云服务器和内网服务器、安装Docker、部署FRP服务端、配置连接信息、启动服务端和客户端。
延伸解读
Docker 部署的局限与备选方案
文章提到,在旧安卓手机上通过 AidLux 安装 Docker 时,个人版 AidLux 不支持 Docker,导致无法用 Docker 部署 frp 客户端。作者最终放弃 Docker,改为手动安装 frp。这提醒读者,在非标准环境(如手机上的 Linux)中,Docker 可能不可用,需准备手动部署的备选方案。
架构差异与安装包选择
云服务器通常是 amd64 架构,而内网服务器(如旧手机)可能是 arm64 架构。文章分别下载了 frp_0.38.0_linux_amd64 和 frp_0.38.0_linux_arm64 安装包。读者在部署时需确认设备架构,选择对应的 frp 版本,否则无法运行。
配置项的安全考量
frps.ini 中的 token 用于身份验证,防止未授权的客户端连接。文章示例中 token 为简单数字,实际部署时应设置为强密码。此外,dashboard 账号密码也需修改,避免管理面板被轻易访问。
systemd 管理服务的便利性
文章通过将 frpc.service 和 frps.service 文件复制到 /etc/systemd/system/ 目录,实现了用 systemctl 命令管理 frp 服务。这样可以方便地启动、停止、重启和设置开机自启,也便于查看状态日志,适合长期运行。
Q&A
如何准备云服务器和内网服务器进行FRP内网穿透?
需要购买一台具有公网IP的云服务器和一台内网服务器,内网服务器可以是旧电脑或手机。
如何在云服务器上安装Docker并配置FRP服务端?
在云服务器上安装Docker后,创建frps.ini配置文件并使用docker命令启动FRP服务端。
frps.ini配置文件中各项参数的作用是什么?
frps.ini中的参数包括监听端口、面板端口、身份验证等,决定FRP服务的运行方式和安全性。
如何在内网服务器上安装FRP客户端?
需要手动安装FRP客户端,配置frpc.ini文件,并通过systemctl管理其启动和运行。
如何通过公网访问内网服务器的服务?
成功启动FRP服务后,可以通过公网IP和配置的端口访问内网服务器的服务。
在安装Docker时遇到问题该如何解决?
可以尝试更换apt源,确保安装所需的依赖包,并确保Docker服务已启动。