这篇文章上次修改于 1052 天前,可能其部分内容已经发生变化,如有疑问可询问作者。
有时候在外面需要用到自己内网中部署的一些服务,这时候就需要内网穿透了,比如上篇说到的共享文件夹,随时随地能够访问到自己的文件服务。又或者在内网中开了一个 Minecraft 服务器想要与小伙伴一起玩耍,都需要用到内网穿透功能,如果你有一台公网的服务器,那么比较好用的工具就是 Frp 了。
Frp 服务端部署
Docker 命令:
docker run -d \
--name frps \
-v /var/data/frp/frps.ini:/etc/frp/frps.ini \
--network host \
--restart unless-stopped \
snowdreamtech/frps
其中 -v
参数中左边的路径可以自定义。- network
参数如果不为 host
,就需要把所有对应端口都映射出来。
以下是 frps.ini
的最简配置,有需要可以查看官方文档:
[common]
#
bind_port = 7000 # 服务监听端口
token = 123456 # 身份验证令牌
身份验证令牌,只要服务端和客户端相同就可以通信,建议使用高强度密码。
Frp 客户端部署
Docker 命令:
docker run -d \
--name frpc \
-v /var/data/frp/frpc.ini:/etc/frp/frpc.ini \
--network host \
--restart unless-stopped \
snowdreamtech/frpc
以下是 frpc.ini
的最简示例配置:
[common]
#
server_addr = 0.0.0.0 # 服务器地址
server_port = 7000 # 服务器端口
token = 123456 # 与服务器相同
# SSH 配置示例
[SSH]
type = tcp # 可选tcp,udp,http,https,stcp,xtcp
local_ip = 127.0.0.1 # 本地服务地址
local_port = 22 # 本地服务端口
remote_port = 7001 # 需在服务端开启的端口
# Web 配置示例
[Web]
type = http # 可选tcp,udp,http,https,stcp,xtcp
local_ip = 127.0.0.1 # 本地服务地址
local_port = 80 # 本地服务端口
remote_port = 7002 # 需在服务端开启的端口
# Samba 配置示例
[Samba]
type = tcp # 可选tcp,udp,http,https,stcp,xtcp
local_ip = 127.0.0.1 # 本地服务地址
local_port = 445 # 本地服务端口
remote_port = 7003 # 需在服务端开启的端口
# MC 服务器配置示例
[MCServer]
type = tcp # 可选tcp,udp,http,https,stcp,xtcp
local_ip = 127.0.0.1 # 本地服务地址
local_port = 25565 # 本地服务端口
remote_port = 7004 # 需在服务端开启的端口
完成后就可以使用公网服务器的 IP + remote_port
端口号 就可以访问内网中的对应服务了。更多配置项可以查看官方文档。
没有评论