折腾了好久,终于能够远程连上了,开心的记录一下哈哈( •̀ ω •́ )✧
1.Ubuntu端
- 先把虚拟机网络适配器改为桥接模式。
- 通过ifconfig命令查看虚拟机的IP地址,如果没有该命令则先安装net-tools,记录当前的IP地址。
root@RobotMan:/opt/Workspace/Toolkits# sudo apt install net-tools
root@RobotMan:/opt/Workspace/Toolkits# ifconfig
3. 安装openssh-server
root@RobotMan:/opt/Workspace/Toolkits# apt install openssh-server
- 进入当前用户的.ssh目录下,没有则创建该目录,进入该目录后执行ssh-keygen用来生成ssh公钥认证所需的公钥和私钥文件,可以通过man ssh-keygen了解命令参数。
root@RobotMan:/opt/Workspace/Toolkits# cd ~/.ssh
bash: cd: /home/root/.ssh: 没有那个文件或目录
root@RobotMan:/opt/Workspace/Toolkits# mkdir ~/.ssh
root@RobotMan:/opt/Workspace/Toolkits# cd ~/.ssh
root@RobotMan:~/.ssh$ ls
root@RobotMan:~/.ssh$ ssh-keygen -t rsa -C "xxx@163.com" -f keynames
- 之后会生成keynames和keynames.pub文件,前面是私钥,后面是公钥,此时再将公钥加入到可信任列表里。
root@RobotMan:~/.ssh$ ls
keynames keynames.pub
root@RobotMan:~/.ssh$ cat keynames.pub >> ~/.ssh/authorized_key
2.Win上vscode端
- 在插件商城安装Remote-SSH插件,安装好后打开config文件
- 配置好的参数如下,Host相当于起个别名;HostName是Ubuntu的IP地址;User是登录Ubuntu的用户;IdentityFile是用来存放私钥的路径。
- 打开vscode的终端,在终端里输入如下后回车,此时会提示是否继续和验证登录密码,正常输入即可。
PS C:\Users\YanBo> scp root@192.168.1.100:~/.ssh/keynames "C:\Users\YanBo\.ssh\keynames"
- 此时点击左下角绿色图标,在上方输入框选择connect to host, 连接成功后左下角如下图:
- 此时点击左上角菜单,文件->打开文件夹即可选择ubuntu的目录。