- 学习Linux之后,需要加强练习,不能让自己停留在图形界面中,会产生过度依赖,故提前适应实习,搭建该环境。
系统配置
控制面板–> 程序与功能–> 启动与关闭…—> 勾选适用于Linux的Windows的子系统 --> 重启
VSCode及插件安装
安装
- VSCode安装过于简单,不做陈述。下载链接
- 安装ssh插件(Remote - WSL)
配置config文件
安装完成后,多出一个选项
打开config文件
选择第二个
配置文件
Host Local_Ubuntu #登录名
HostName 192.168.1.101 #ip
user root #用户名
问题汇总
1. 无法连接
- 经过测试,ssh(XShell软件)也无法正常连接虚拟机
- 解决方式:
-
未下载ssh-server?
sudo apt-get install openssh-server
-
未启动ssh-server?
sudo /etc/init.d/ssh start
-
防火墙问题(本人依靠此法解决!!!)
本人从虚拟机无法ping通主机,主机可以ping通虚拟机
1)设置网络映射
(虚拟机)编辑 --> 虚拟网络编辑器 --> VMnet8 NAT模式 --> NAT设置
添加映射传入端口
注:虚拟机IP地址通过命令ifconfig
查询
这个步骤完成后,192.168.1.101:22
与192.168.1.103:22
就建立起了连接- 配置虚拟机SSH(已安装的可以省略这四步)
安装openssh-client:sudo apt-get install openssh-client
安装openssh-server:sudo apt-get install openssh-server
启动ssh-server:sudo /etc/init.d/ssh restart
确认ssh-server工作正常:netstat -tpl (看到ssh表示工作正常)
3)配置虚拟机防火墙(指令提示没有,按照提示安装即可)firewall-cmd --permanent --add-port=22/tcp firewall-cmd --reload
4)SSH连接成功
- 配置虚拟机SSH(已安装的可以省略这四步)
-
2. 密码正确,但提示错误(Access Denied)
- 如图
问题在于,配置文件ssh_config设置中使用了#PermitRootLogin prohibit-password
修改为#PermitRootLogin yes
即可
- 使用
!wq
保存退出时报错(权限不足)
采用::w !sudo tee % > /dev/null
来强制保存
注意:
ssh连接不能使用root账户,否则会一直提示密码错误,创建一个新用户即可
adduser username
创建用户
su username
切换用户(root用户不能切换)
建立成功
SSH连接成功
WSL连接成功