【简介】
frp 是一种快速反向代理,可帮助我们将 NAT 或防火墙后面的本地内网服务器暴露给 Internet,让我们通过 Internet直接远程访问本地的内网服务器,本篇文章主要是向大家介绍了如何利用Azure Virtual Machines来实现内外网穿透,当我们在外边想要远程家里或者单位内网电脑及服务器时,即可通过这种步骤方式来实现我们的远程内网机器的目的
【操作步骤】
一.创建Azure Virtual Machines
1.1 创建资源组
①.Azure 资源组是在其中部署和管理 Azure 资源的逻辑容器。必须在创建虚拟机前创建资源组,通过如下命令执行创建名为myResourceGroupVM的资源组
az group create --name myResourceGroupVM --location eastus
②.执行结果如下图所示:
1.2.创建Linux虚拟机
①.使用 az vm create 命令创建虚拟机,在创建虚拟机时,可使用多个选项来调配适合自己业务场景的虚拟机配置,具体执行命令如下
az vm create \
--resource-group myResourceGroupVM \
--name myVM \
--image UbuntuLTS \
--admin-username why \
--generate-ssh-keys复制
注:执行命令完毕以后CLI命令行会发送命令到Auzre后台进行调用VM的虚拟资源池,在调用创建的过程可能需要几分钟的时间,当创建完毕以后,Azure CLI会回显输出如下已创建的信息
{
"fqdns": "",
"id": "/subscriptions/7fe09b4b-02fc-47c2-9d25-905e0da35c1a/resourceGroups/myResourceGroupVM/providers/Microsoft.Compute/virtualMachines/myVM",
"location": "East Asia",
"macAddress": "00-22-48-26-9E-05",
"powerState": "VM running",
"privateIpAddress": "10.0.0.4",
"publicIpAddress": "20.120.95.240",
"resourceGroup": "myResourceGroupVM",
"zones": ""
}复制
②.我们访问Azure门户找到VM虚拟机管理页面,点击名称进去查看详情
③.在此界面中就可以看到我们利用Azure CLI 命令创建出的VM虚拟机器
二.远程连接Azure Virtual Machines
2.1 利用连接VM
① .我们通过控制台或者Azure Cloud Shell返回的信息获取到了远程公网IP地址
ssh lighthouse@20.120.95.240

三.配置FRP服务端
① .通过Wget的方式下载FRP服务端
wget https://github.com/fatedier/frp/releases/download/v0.42.0/frp_0.42.0_linux_amd64.tar.gz
复制
②.通过Tar命令解压压缩包
tar -zxvf frp_0.42.0_linux_amd64.tar.gz
复制
③.将压缩包重命名为frp
mv frp_0.42.0_linux_amd64.tar.gz frp
复制

④.修改配置服务端配置文件
vim frps.ini
复制
Bind_port是frp监听的端口,默认7000 Dashboard_port frp管理端口 Token 授权码,类似于密码,客户端用到 Dashboard_user/dashboard_pwd 管理端口登陆时的账户密码
⑤.启动服务端frp
./frps -c frps.ini
复制

四.配置FRP客户端
① .客户端以windos7为例,通过如下地址将windows工具下载到win7系统中
https://github.com/fatedier/frp/releases/download/v0.42.0/frp_0.42.0_windows_amd64.zip
复制

②.下载解压后可以看到和服务器配置文件,因为是客户端我们需要配置frpc.ini③.我希望把能通过Azure Virtual Machines的6333端口能直接连接我们本地Windows客户端的远程服务,我们需要定义如下配置文件内容:
【Common】配置
Server_addr:为Azure Virtual Machines的公网IP地址 Server_port:与Azure Virtual Machines中配置的端口一致,这里使用默认的7000端口 Token:Azure Virtual Machines中配置的验证密文,与服务端一致即可
【RDP】配置
Type:指定TCP协议类型 local_ip:指定的IP地址,默认配置为:127.0.0.1 local_port:指定的转发的端口:3389 remote_port:该协议在服务端开放的端口,即能通过zure Virtual Machines中的这个端口访问win7的3389端口
配置完毕以后,如下图所示:④.配置完成之后保存并在cmd窗口启动服务端
frpc.exe -c frpc.ini
复制

五.通过Azure Virtual Machines IP 远程本地电脑
① .在本机中运行Mstsc远程连接工具
②.输入Azure Virtual Machines的公网 IP 以及 remote_port 远程端口,点击连接
③.再输入对应的账号密码即可对内网的机器进行连接
④.成功连接完毕以后,如下截图所示