使用 Docker 安装并配置内网穿透工具 FRP
FRP(Fast Reverse Proxy)是一款高性能的内网穿透工具,支持多种协议(如 TCP、UDP、HTTP、HTTPS 等),能够方便地实现内网服务的对外访问。以下是使用 Docker 安装和配置 FRP 的详细步骤。
一、环境准备
-
Docker 环境
确保你的系统中已安装 Docker,并已启动 Docker 服务。 -
服务器
一台具有公网 IP 的服务器,用于运行 FRP 服务端。 -
客户端
内网中的设备,需要安装 FRP 客户端。
二、安装 FRP 服务端
1. 拉取 FRP 服务端镜像
从 Docker Hub 拉取 FRP 服务端镜像:
bash复制
docker pull fatedier/frp
2. 创建配置文件目录
在服务器上创建 FRP 配置文件目录:
bash复制
sudo mkdir -p /etc/frp
cd /etc/frp
3. 编写服务端配置文件(frps.ini
)
创建并编辑 frps.ini
文件,内容如下:
ini复制
[common]
bind_port = 7000
dashboard_port = 7500
dashboard_user = admin
dashboard_pwd = admin123
token = your_token
4. 运行 FRP 服务端容器
运行 FRP 服务端容器,将配置文件挂载到容器内部,并映射端口:
bash复制
sudo docker run -d
--name frps
-p 7000:7000
-p 7500:7500
-v /etc/frp/frps.ini:/etc/frp/frps.ini
--restart=always
fatedier/frp
5. 配置防火墙
确保服务器的防火墙允许 FRP 使用的端口:
bash复制
sudo ufw allow 7000
sudo ufw allow 7500
sudo ufw enable
三、安装 FRP 客户端
1. 拉取 FRP 客户端镜像
从 Docker Hub 拉取 FRP 客户端镜像:
bash复制
docker pull fatedier/frp
2. 创建客户端配置文件(frpc.ini
)
在客户端上创建 frpc.ini
文件,内容如下:
ini复制
[common]
server_addr =
server_port = 7000
token = your_token
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000
[web]
type = http
local_port = 80
custom_domains = your_domain.com
3. 运行 FRP 客户端容器
运行 FRP 客户端容器,将配置文件挂载到容器内部:
bash复制
docker run -d
--name frpc
-v /path/to/frpc.ini:/etc/frp/frpc.ini
--restart=always
fatedier/frp
四、验证内网穿透
-
访问 HTTP 服务
在浏览器中访问http://
,如果看到 FRP 的 Web 管理界面,说明 HTTP 服务穿透成功。:7500 -
访问 TCP 服务
使用telnet
或ping
命令测试 TCP 服务,例如:bash复制
telnet
6000
五、总结
通过上述步骤,你已经成功使用 Docker 安装并配置了 FRP,实现了内网穿透。FRP 是一款功能强大的内网穿透工具,可以方便地实现内网资源的对外访问,提高工作效率。在实际应用中,你可以根据需求调整 FRP 的配置,以满足不同的穿透场景。