使用Frp实现内网穿透详细步骤
在实现内网穿透时,若IPv6访问受限(例如公司网络未启用IPv6),Lucky等工具将无法正常工作。这时,我们可以使用Frp这样的内网穿透软件。Frp部署包括服务端(frps)和客户端(frpc),需要在拥有固定公网IP的云服务器上部署frps,在内网设备(如飞牛)上部署frpc。以下是详细步骤:
一、Frps部署(云服务器)
创建目录与文件
- 在云服务根目录下创建一个名为
docker
的文件夹,并在其中创建一个名为frps
的子文件夹。 - 在
frps
文件夹中,新建两个文件:docker-compose.yml
和frps.toml
。
1
2
3mkdir -p /docker/frps
touch /docker/frps/docker-compose.yml
touch /docker/frps/frps.toml- 在云服务根目录下创建一个名为
配置docker-compose.yml
1
2
3
4
5
6
7
8
9version: '3.3'
services:
frps:
restart: always
network_mode: host
volumes:
- '/docker/frps/frps.toml:/etc/frp/frps.toml'
container_name: frps
image: snowdreamtech/frps:0.60配置frps.toml
1
2
3
4
5
6
7
8
9
10bindAddr = "0.0.0.0"
bindPort = 7000
auth.method = "token"
auth.token = "password" # 自定义token
webServer.addr = "0.0.0.0"
webServer.port = 7100
webServer.user = "username" # 自定义用户名
webServer.password = "password" # 自定义密码启动frps
1
2cd /docker/frps
docker-compose up -d访问
云服务器ip:7100
,使用配置的用户名和密码登录Frp的Web UI。
二、Frpc部署(内网设备,如飞牛)
创建目录与文件
- 在文件管理器中找到docker存储路径下的
appshare
文件夹,新建一个名为frpc
的文件夹。 - 在
frpc
文件夹中,新建两个文件:docker-compose.yml
和frpc.toml
。
- 在文件管理器中找到docker存储路径下的
配置docker-compose.yml
1
2
3
4
5
6
7
8
9version: '3.3'
services:
frpc:
restart: always
network_mode: host
volumes:
- '/vol1/@appshare/frpc/frpc.toml:/etc/frp/frpc.toml'
container_name: frpc
image: snowdreamtech/frpc:0.60配置frpc.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24serverAddr = "云服务器ip"
serverPort = 7000
log.to = "console"
log.level = "trace"
log.maxDays = 3
log.disablePrintColor = true
auth.method = "token"
auth.token = "password" # 与frps配置中的token保持一致
[[proxies]]
name = "sunpanel"
type = "tcp"
localIP = "127.0.0.1"
localPort = 3002
remotePort = 3003
[[proxies]]
name = "项目X"
type = "tcp"
localIP = "127.0.0.1"
localPort = xxx # 替换为实际端口
remotePort = xxx # 替换为实际端口启动frpc
1
2cd /vol1/@appshare/frpc
docker-compose up -d
三、访问内网服务
部署成功后,访问服务器ip:3003
即可访问飞牛中部署的sunpanel
服务。若配置了其他服务,请确保访问对应的remotePort
。
按照以上步骤,您应该能够成功使用Frp实现内网穿透,从而在外网访问内网服务。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 飞鲤自留地!