windows10安装WSL(Ubantu18.04)后无法实现ssh远程链接的解决办法


此文章针对于一开始完全没有安装过windows10中的子系统wsl,方便自己用于记录。

一、安装Ubantu18.04并打开wsl权限

1. 在程序与功能中勾选并开放wsl的权限,并重启电脑进行加载wsl的配置文件

在这里插入图片描述
在这里插入图片描述
如果之前没有勾选,勾选之后会需要你进行重启电脑加载配置文件。

2、打开Microsoft Store 应用商店下载Ubantu18.04

在这里插入图片描述
直接安装并配置对应的用户账号和密码
在这里插入图片描述
上述这样证明已经安装成功Ubantu系统

二、配置并启动ssh服务

1. 正确配置并启动ssh服务整体流程(亲测有效)

  1. 判断ssh服务是否已经启动
    sudo service ssh status
  2. 尝试进行开启ssh服务
    sudo service ssh start
    发现启动有三个文件没有加载到,这里是无法进行ssh远程链接的
    在这里插入图片描述
  3. 需要修改/etc/ssh/sshd_config文件
    改三个参数
    Port 22 将前面 的#去掉:说明开启22端口
    LinstenAddress 0.0.0.0 将前面 的#去掉: 监听所有的 ip
    PasswordAuthentication no 中no改成yes:可以使用账号密码进行登录在这里插入图片描述
    在这里插入图片描述
  4. 创建 对应的密钥文件
    ssh-keygen -t ras -b 2048 -f /etc/ssh/ssh_root_rsa_key
    ssh-keygen -t ecdsa -b 256 -f /etc/ssh/ssh_host_ecdsa_key
    ssh-keygen -t ed25519 -b 256 -f /etc/ssh/ssh_host_ed25519_key

    在这里插入图片描述
  5. 重启整个ssh服务即可显示客户端ssh远程访问
    sudo service ssh restart

2. 可能遇到的问题

2.1 出现ssh文件加载load失败

在这里插入图片描述
解决办法:
通过ssh-keygen进行生成对应的密钥文件

ssh-keygen -t ras -b 2048 -f /etc/ssh/ssh_root_rsa_key
ssh-keygen -t ecdsa -b 256 -f /etc/ssh/ssh_host_ecdsa_key
ssh-keygen -t ed25519 -b 256 -f /etc/ssh/ssh_host_ed25519_key

执行完上诉的代码

sudo service ssh restart
-重启下ssh服务即可解决问题

2.2 进行创建密钥文件 的时候 出现权限不足

在这里插入图片描述
解决办法 :
加上 sudo即可或者进入到root超级管理员用户中
在这里插入图片描述

三、使用ssh远程工具进行测试访问(Xshell7)

首先通过ifconfig查看自己的局域网ip地址
输入对应的相关信息
在这里插入图片描述
在这里插入图片描述
这里说明测试成功,已经可以通过ssh客户端进行远程访问Ubantu服务器

总结:

  1. 熟悉windows10的子系统WSL中的Ubantu18.04
  2. 熟悉ssh如何开启以及配置对应的权限
  3. 可以使用ssh远程链接工具通过局域网ip进行远程连接
  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Windows Subsystem for Linux 2(WSL2)是Windows 10操作系统中的一个功能,它允许用户在Windows中运行Linux操作系统。对于那些熟悉Linux的开发人员来说,WSL2是一种非常方便的方式来使用他们所熟悉的命令行界面和工具。 在WSL2中,用户可以使用多种方法进行远程访问。其中,其中之一是通过ssh远程登录。 SSH(Secure Shell)是一种安全的网络协议,允许用户在不安全的网络上进行加密通信。通过ssh远程登录WSL2,用户可以像在本地一样使用WSL2,同时还可以利用Windows的GUI界面。 要使用ssh远程登录WSL2,用户需要先启用ssh服务器。在Windows PowerShell或命令提示符中,可以使用以下命令来启动ssh服务器: ``` sudo apt update sudo apt install openssh-server sudo service ssh start ``` 安装和启动过程完成后,可以使用ssh客户端连接WSL2。在本地电脑上,打开一个终端窗口并输入以下命令: ``` ssh [username]@[IP address of WSL2] ``` 其中,[username]是WSL2中的用户名,[IP address of WSL2]是WSL2的IP地址。默认情况下,WSL2会动态分配IP地址,可以使用以下命令在WSL2中查找其IP地址: ``` ip addr show eth0 | grep inet | awk '{print $2}' | cut -d / -f 1 ``` 使用这种方法进行远程访问,需要确保WSL2和Windows的防火墙设置正确。在Windows防火墙中,需要允许ssh流量通过。在WSL2中,需要允许ssh服务器通过WSL2的防火墙。可以使用以下命令配置WSL2防火墙: ``` sudo ufw allow ssh ``` 使用ssh远程登录WSL2时,还需要注意ssh客户端和服务端之间的证书问题。如果出现证书错误,需要检查证书是否正确配置。 总之,使用ssh远程登录WSL2是一种方便的方式,可让用户像在本地一样使用WSL2。通过配置Windows和WSL2的防火墙,并确保证书正确配置,用户可以安全、可靠地进行远程访问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值