用便携电脑远程连接家里高性能电脑windows系统的详细步骤记录 - aierlma/git_instructions GitHub Wiki
本文参考知乎文章
首先确保被连接的,家里的,高性能电脑是Windows专业版(百度搜索win10专业版即可。一般来讲可以断网输入序列号升级,然后再用工具激活)。开启远程桌面连接功能。
此外需要拥有一台Linux的云服务器。微软(https://www.microsoftazuresponsorships.com从这个网址查看学生剩余额度)或者腾讯云学生、GitHub学生包给的DigitalOcean都可以拥有一台。详细配置微软云服务器可以参考这个链接
当然,我首先推荐你试一下parsec。
如果你想在局域网内连接两台电脑,只需要在被连接电脑的powershell中输入ipconfig查看ipv4地址。再用另一台windows电脑搜索远程桌面填入这个地址就可以。
对于任意苹果设备,使用rd client 即可。
以下步骤可以从公网访问家里的电脑,原理是云服务器转发。
具体教程省去。关于连接服务器的方法,使用ssh连接远程服务器。输入以下命令
ssh-keygen
然后你可以选择一个位置保存这个ssh密钥对,并且推荐设置一个密码访问私钥(passphrase)
将公钥,也就是***.pub文件上传到服务器中
ssh-copy-id <服务器用户名>@<服务器IP>
# 例如
ssh-copy-id [email protected]
或者手动把本地***.pub文件的所有内容复制到服务器的~/.ssh/authorized_keys
最后即可
最后也可以先本地运行 scp ~/.ssh/id_rsa.pub <服务器用户名>@<服务器IP>:~/
然后服务器执行
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
rm ~/id_rsa.pub
就可以不用密码登录服务器了。
3389端口是远程连接的默认端口,可以在被连接Windows电脑设置里搜索远程连接,底下有个高级设置查询如何更改。一般不推荐更改。
打开云服务器的3389端口。
例如以下是腾讯云服务器的打开方式。
详细设置可以参考这篇文章
以下是微软Azure虚拟机的打开方式
编辑服务器的/etc/ssh/sshd_config
文件,需要root权限
追加一行GatewayPorts yes
在最后。运行重启sshd服务命令
sudo systemctl restart sshd
使用如下命令
ssh -NfR <服务器IP>:<服务器Port>:<本地IP>:<本地Port> <服务器用户名>@<服务器IP>
# 例如
ssh -NfR 127.0.0.1:3389:localhost:3389 [email protected]
- 服务器IP为你的云服务器的公网IP
- 服务器Port为之前在防火墙中打开的端口,默认为3389
- 本地IP一般填写localhost
- 本地Port为启用远程桌面的高级设置中指定的端口,默认为3389
- 服务器用户名为你登陆云服务器的用户名
- -R表示远程端口转发
- -N表示不执行命令,只进行端口转发
- -f表示将ssh放到后台执行
至此,理论上可以从任何地方访问家里的电脑了。只需要在外带的电脑中用rdp输入服务器IP即可。
使用Windows自带的任务计划程序,右上角创建任务。参考知乎文章
如果遇到以下问题
Warning: remote port forwarding failed for listen port 3389
是因为端口被占用,可以用以下命令解决。登录服务器
sudo netstat -anp | grep 3389
# 记住进程id($pid)
sudo kill $pid