一、需求描述
系统部署在本地,也就是公司内网,然后在家里或者其他地方无法访问该数据库或系统,这样可以使用 FRP 实现内外网穿透,从而实现任何设备都可以访问内外系统或者数据库。本质上,你的需求是让本地 SQL Server 可以被外网访问,而阿里云服务器起到“中转/跳板”的作用
二、FRP简介
FRP (Fast Reverse Proxy) 是一款开源的反向代理软件,主要用于内网穿透,即通过一个公共服务器将内网的服务暴露到公网上,实现远程访问。
三、准备环境
1、FRP软件
2、外网云服务器
这里使用的阿里云服务器,轻量应用服务器就可以,服务器安装Windows server系统,复制云服务器公网IP、防火墙/安全组开启7000端口、SqlServer数据库端口1466
3、内外服务器记住SqlServer数据库端口1466
四、下载穿透软件 FRP
下载内外网穿透软件 FRP:扫码关注“简忆工作室”公众号,回复关键词“frp”获取下载链接
五、云服务器端配置
1、将frp软件上传到云服务器,解压FRP压缩包
2、配置云服务器端frps.ini
打开frps.ini,加入如下配置,并保存
[common] bind_port = 7000
说明:
[common] 表示frp的通用配置。
bind_port 表示server端frps与client端frpc绑定的端口号。
3、新建开机启动脚本,名称命名为“run.bat”,复制一下脚本代码,并保存
C: cd C:\software\frp_0.46.1_windows_amd64 frps.exe -c ./frps.ini
设置云服务器端frps开机启动,将run.bat文件复制到:C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup下,并重命名为“frp内网穿透开机自启.bat”。 这样以后,只要云服务器开机之后就会自动运行frps.exe文件。
4、删除多余的内网端文件,只保留如下文件
5、启动run.bat脚本,如下图所示,说明启动成功
六、内网端配置
1、将frp软件上传到内网系统服务器上,解压FRP压缩包
2、配置云服务器端frps.ini
打开frpc.ini,加入如下配置,并保存
[common] server_addr = 47.20.15.111<这里填写阿里云云服务ip> server_port = 7000<这里填写阿里云云服务端口> [sqlserver] type = tcp local_ip = 127.0.0.1 local_port = 1466<这里填写内网服务器端口> remote_port = 1466
说明:
[common] 表示frp的通用配置;
server_addr 表示server端的公网ip地址;
server_port 表示server端frps绑定的端口;
[sqlserver] 这里的[sqlserver]表示一个网站的名称,可以自定义;
type表示请求的类型,http请求都是tcp;
local_ip 表示本地服务器的局域网ip;
local_port 表示本机端口,也就是数据库sqlserver在本机绑定的端口号;
remote_port 表示用户通过访问数据库sqlserver的端口号;
3、新建开机启动脚本,名称命名为“run.bat”,复制一下脚本代码,并保存
D: cd D:\software\frp_0.46.1_windows_amd64 frpc.exe -c ./frpc.ini
设置云服务器端frps开机启动,将run.bat文件复制到:C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup下,并重命名为“frpc内网穿透开机自启.bat”。 这样以后,只要云服务器开机之后就会自动运行frpc.exe文件。
4、删除多余的内网端文件,只保留如下文件
5、启动run.bat脚本,如下图所示,说明启动成功
七、使用数据库连接
访问本地 SQL Server 在任何机器上通过阿里云公网 IP 和端口 1466连接:
服务器地址:阿里云公网IP
端口:1466
用户名/密码:SQL Server 的登录信息
八、完成内外网穿透
到此就完成了实现异地访问内网SqlServer数据库,想访问系统网站页面也可以按照这一去部署。有伙伴可能会遇到失败的问题,失败的原因可能是服务器安全组、防火墙设置问题,开放对应的端口即可解决该问题。
文章评论(0)