简单使用FRP实现本地mysql的内网穿透
一、frp 是什么?
frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。
官方项目地址: 官方学习文档:
二、下载安装
官方下载地址: ps: 压缩包包括服务端和客户端,如果服务端是linux,客户端是windows则都需要下载。
(一) 服务端安装
我这里用的是frp_0.33.0_linux_amd64.tar.gz, 上传解压。
tar zxf ./frp_0.33.0_linux_amd64.tar.gz
解压后进入目录 服务端主要是frps开头的文件,配置需要在frps.ini中编辑。
(二)客户端安装
我这里客户端是windows,下载解压就行。配置需要在frpc.ini中编辑。
三、使用
举例本地mysql穿透到公网
服务端vim配置frps.ini
[common] # 服务器端监听客户端连接请求的端口 bind_port = 7000 # 服务器端监听http请求的端口 vhost_http_port = 8888 token = 123 # frp控制面板 dashboard_addr = 0.0.0.0 dashboard_port = 7500 dashboard_user = user dashboard_pwd = pwd log_file = ./frps.log log_level = info log_max_days = 3
linux启动服务端:
nohup ./frps -c ./frps.ini &
windows中的客户端使用默认编辑器打开编辑frpc.ini
[common] # 服务端所在的公网ip server_addr = 123.123.123.123 server_port = 7000 token = 123 [mysql] type = tcp local_ip = 127.0.0.1 local_port = 3306 remote_port = 13306
windows 使用cmd或者powershell进入当前frp目录启动客户端,执行
frpc.exe -c ./frpc.ini
现在,就可以使用http://公网ip:13306访问本地的mysql服务了。如果访问不到,请检查服务端是不是开启了对应的几个端口的防火墙。
使用http://公网ip:7500可以访问服务端的控制台。
