最近有远程办公的需要,同时工作通勤距离较远,而且工作的笔记本必须用Windows系统,于是决定搭一个RDP工作站,能够随时连接远程桌面
准备RDP 在一切开始前,建议先了解关于OS中用户和会话的关系。在新版Windwos中,也支持多用户多会话的使用计算机,因此要先考虑好自己搭建远程桌面的目标是单会话还是多会话的,选择合适的RDP服务端
主要需要注意,在我的Windows10企业版中,自带的RDP只支持单会话操作,而大部分RDP服务端都是可以自行设置的
本文章只是本人的技术总结,仅供参考,务必根据自身情况选择合适的技术方案。
Linux 使用xrdp
Windows 先查看Windows版本,在专业版及以上的Windows自带RDP服务器,在设置里打开即可
而家庭版的RDP服务是被毙掉的,因此就又到了和微软勾心斗角的环节。可以使用RDPwrap来绕过限制
RDPwrap安装比较简单,下最新release脚本一键装即可,之后开RDPConf.exe调设置,如果Listener state一直不是Listening,大概率是配置文件要更新(毕竟本体很多年没维护了)
在RDPwrap.ini中下载合适的版本然后替换掉原本的,Windows中默认位置为C:\Program Files\RDP Warp,注意每次Windows更新后,尽量检查是否仍然起效
无法替换?service.msc中暂停rdp服务
内网解析 有在内网远程访问主机的需要,但是主机可能随时启停,ip不固定,所以为其分配一个动态dns域名来随时解析至主机
使用ddns-go
ddns-go在Windows上的部署很方便,能够单命令安装服务,有web端的配置界面,基本属于傻瓜操作
如何操作在ddns-go的文档中写的非常详细了,在此简单带过,不再赘述
在dns服务商注册apikey,保存好填入配置
我们需要拿到内网地址,获取ip的方式选通过网卡获取,找到对应内网ip的网关。域名填写apikey对应账号可以操控的域名,如果你的DNS服务商api不支持新注册域名解析,就先创建一个域名解析让ddns修改
也可直接编辑yaml。可以在有图形化配置的地方保存后导入。下给出一例:
dnsconf: - name: "" ipv4: enable: true gettype: netInterface url: https://myip.ipip.net, https://ddns.oray.com/checkip, https://ip.3322.net, https://4.ipw.cn, https://v4.yinghualuo.cn/bejson netinterface: 以太网 cmd: "" domains: - omen.dedfaf.tech ipv6: enable: false gettype: netInterface url: https://speed.neu6.edu.cn/getIP.php, https://v6.ident.me, https://6.ipw.cn, https://v6.yinghualuo.cn/bejson netinterface: "" cmd: "" ipv6reg: "" domains: - "" dns: name: alidns id: secret: ttl: "" user: username: password: webhook: webhookurl: "" webhookrequestbody: "" webhookheaders: "" notallowwanaccess: true lang: zh 内网穿透 有外网远程访问主机的需要,使用frp将3389端口暴露至公网
...