当你懒得下床,电脑在床下的桌上,却想用手机来coding,或者你需要在实验室远程连接在寝室的电>脑的时候,你可以阅读这篇文章,试试把你的电脑武装成一台远程服务器~
这篇文章我将以WSL(Windows下的linux子系统)为例演示一遍工作流程。
你需要提前了解的知识
- 知道啥是ssh、Linux
- 知道怎么用ssh连接服务器(不知道的话网上有很多教程可供学习)
- 会简单使用linux系统
步骤
- 开启WSL的ssh服务(linux系统也是)
- 设置防火墙以允许ssh端口的连接
- 找到你的公网ip(知道了这个ip才能在互联网上找到你的电脑)
- 用ssh连接你的电脑
开启WSL的ssh服务
进入WSL的命令行界面
键入命令vi /etc/ssh/sshd_config
来修改ssh的配置文件
如果这个文件不存在就要安装openssh-server
1 | apt-get install openssh-server |
安装完后继续上一步修改配置。找到配置文件里的下列属性进行修改(记得把这些属性前面的#号删去,不然会被注释掉)
1 | Port = 22 # 默认是22端口,如果和windows端口冲突或你想换成其他的否则不用动 |
更改完上述属性后键入
service ssh start
启用ssh服务如果提示
sshd error: could not load host key
则重新生成密钥,然后再次启动:1 | dpkg-reconfigure openssh-server |
查看服务状态
1 | service ssh status |
设置一下root用户的密码
1 | passwd root |
跟着提示设置好密码就进入到下一步设置防火墙。
设置防火墙以允许ssh端口的连接
打开Windows Defender 安全中心(可以在windows左下角搜索)进行如下设置:
名称和描述自己设置
找到你的公网ip(知道了这个ip才能在互联网上找到你的电脑)
博主在读学校分配了公网ip,因此只需要上网查自己的ip就能得到自己的公网ip。
如果你也有公网ip那么打开https://link.zhihu.com/?target=http%3A//www.net.cn/static/customercare/yourip.asp 、http://www.ip138.com 两者中的一个网站可以查看你的ip。
用ssh连接你的电脑
有了公网IP就可以通过ssh在局域网连接你的电脑了
1 | ssh root@hostname |
如果你在lunux系统上操作就键入上面的命令(把上面命令里的hostname改成你的ip),然后会询问是否接受这次连接,选接受后会提示你输入root用户的密码,输入以后就连接成功了。
其他ssh工具只要确定连接方式是ssh、端口是你设置的数字(默认22)、ip是你的公网ip就可以。
这样就完成了远程连接个人电脑的操作,如果你不是wsl系统用户,那么防火墙设置只需要按照网上的开启ssh服务里的防火墙相关设置进行就可以了。上网搜索
Linux ssh防火墙设置
就会有很多可用的结果。