Win10企业版远程桌面结合frp实现公网远程
Win10企业版远程桌面结合frp实现公网远程
前言
由于经常下班后还要处理问题,但是又没有运维那么频繁,就不想天天背着电脑来回跑,刚开始用的teamviewer,后来被商业劝退了(就是不让用了,让买序列号),刚开始想到的替代品是RealVNC,以前见运维提供winServer服务器远程桌面的时候用过,用了之后发现局域网挺好,一点都不卡,但是已经过公网,就基本动弹不得了,网上又发现向日葵,anyDesk等工具,向日葵说是有黑历史,不敢用,anyDesk使用了之后发现卡顿明显,心里多少有些不爽,在不懈的搜寻中,发现win企业版只带远程桌面,开启即可,但是只能公网使用,不过网上有很多内网穿透工具,收费是一方面,安全也不好说。后来看到有人用frp结合云服务器自己搭建内网穿透链路。自己注册了个云服务,有个新用户试用30天,正好验证frp+云服务器+win远程桌面的效果,试了之后发现比teamviewer还刘畅。既然第三方远程桌面收费,内网穿透链路也收费,不如租个云服务器,自己搭个链路,用起来也安全了,没事了还可以自己弄个网站玩玩,特此记录。
frp介绍
frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 https 应用协议提供了额外的能力,且尝试性支持了点对点穿透。
服务端搭建
frp程序地址:
https://github.com/fatedier/frp/releases
服务端配置
1、我在华为云服务器上linux18.04上搭建,配置参数如下
mkdir frpTools
cd frpTools
wget https://github.com/fatedier/frp/releases/download/v0.33.0/frp_0.33.0_linux_amd64.tar.gz
tar -zxvf frp_0.33.0_linux_amd64.tar.gz
cd frp_0.33.0_linux_amd64
2、这里有区分服务端和客户端,frpc就是客户端,frps就是服务端
frps.ini配置
[common]
bind_port = 7100
dashboard_port = 7500
dashboard_user = xx
dashboard_pwd = xx
3、服务端增加安全组规则
3.1、指定端口,源地址,描述随意写
4、dashboard是可视化的观察页面
启动服务
./frps -c frps.ini
服务端增加frps开机启动
1、 创建服务文件
sudo vim /lib/systemd/system/frps.service
2、 写入以下配置:(红色字体需要根据自己的环境修改)
#!/bin/sh
[Unit]
Description=Frp Server Service
After=network.target
[Service]
Type=simple
User=yourUserName
Restart=on-failure
RestartSec=5s
ExecStart=/usr/frp/frps -c /usr/frp/frps.ini
[Install]
WantedBy=multi-user.target
3、 启动Frps
sudo systemctl start frps
4、 查看Frps运行日志
5、 设置开机自启
sudo systemctl enable frps
注意:
Frps配置完成,需要将对应的端口放行,不然无法连接。
6、 Frps重启:
sudo systemctl restart frps
7、 Frps停止:
sudo systemctl stop frps
客户端搭建
需要远程的哪个电脑经常不关机,我就直接在windows上搭建客户端了。
1、下载win版frp
2、解压到自己理想的盘符,我用的E盘
frpc.ini配置客户端,将本地的3389(win远程桌面默认关口,可自行修改)端口映射到外网的7200端口上
[common]
server_addr = xxx
server_port = 7100
[RDP] ;这个是反向代理的名称,可以随意设置
type = tcp ;RDP是TCP协议
local_ip = 127.0.0.1 ;本机IP
local_port = 3389 ;远程桌面的默认端口
remote_port = 7200 ;外网访问的端口
custom_domains = www.yourdomain.com ;如果有域名可以绑定域名
3、启动客户端
进入到frp的加压目录执行一下命令启动
frpc.exe –c frpc.init
win10增加frpc开机启动
windows系统经常自己更新系统并自动重启,以免它自作主场重启后不能远程,要设置一下frpc的开机启动
8、 创建启动脚本
右键创建记事本修改文件名及扩展名为frpStart.bat,在里面输入如下内容
@echo off
:home
frpc.exe -c frpc.ini
goto home
这样的话 Frp 在崩溃、异常退出进程后,将会自动重新启动。
9、 将建好的frpStart.bat文件放到frp根目录下(其实跟bat文件中的frpc.exe这一行的路径,如果是绝对路径放哪也就无所谓了)
10、 利用任务计划程序,开机启动frpc
a) 在win10小娜中,输入 “任务计划程序” 将会自动搜索,接着打开它。
b) 3.2、点击右侧的 “创建任务”,开始创建
c) 设置
1、名称随意填写,安全选项选择 “不管用户是否登录都要运行”,当然你也可以选择 “只在用户登录时运行”。
2、选择 “不管用户是否登录都要运行” 可以让你的电脑在断电自动启动后自动运行 frp,你就可以远程桌面连接电脑了。
3、“使用最高权限运行” 也是可选的,根据个人需要可以选上。
4、最后勾选 “隐藏”,就不会在启动时弹出命令行窗口了。
d) 接着转到 “触发器” 页,点击新建,选择 “启动时”
e) 接着转到 “操作” 页,点击新建,选择 “启动程序”
在程序或脚本一栏选择第一步创建的 start.bat,下面的 “起始于” 填写 start.bat 的路径(不要包含 start.bat)
例如你的 start.bat 在 E:\frp\start.bat,那么你只需要在 “起始于” 填写 E:\frp\
f) 接着返回 “常规” 页,点击确定,
此时会要求输入密码,输入你的电脑密码,然后点击确定即可。
以后就会开机自动启动 frp 了,并且不会弹出命令提示符窗口
11、 到此云服务器搭建frps完成,需要远程的电脑上安装frpc也已经完成,接下来就是测试
a) 登录云服务后台拿到云服务器的公网ip
b) 手机上安装microsoft远程桌面
c) 安装完成之后,应用的名字叫RDClient
打开APP在电脑名称哪里输入公网IP和端口号
d) 存储之后就可以连接电脑了。
4.5、手机上验证
使用手机验证远程桌面能否公网使用很方便,改成4G就行,主要还是在电脑上使用,毕竟屏幕大小,键盘,鼠标等都方便。win+r输入mstsc打开远程桌面窗口,输入ip:port即可使用(注意这里要带上端口号),相应速度绝对在teamviewer之上。
tips:
如果电脑用的是无线网,连接无线网时记得勾选自动连接,不然电脑自动重启后网络不能自动连接,会无法连接远程桌面。