开发者

linux之SSH连接WSL2本地环境的操作方式

目录
  • 安装WSL
  • SSH 连接 WSL2 本地环境的完整步骤
    • 1. 安装openssh-server 和 net-tools
    • 2. 配置 sshd
    • 3. 启动 SSH 服务
    • 4. 免密登录
    • 5. 配置 Windows SSH 客户端
  • 总结

    安装WSL

    wsl --install -d <发行PeGbr版>

    SSH 连接 WSL2 本地环境的完整步骤

    要在 Windows 的 WSL2 环境中启用 SSH 服务,并允许本地或局域网设备连接,需完成以下步骤:

    1. 安装openssh-server 和 net-tools

    sudo apt update
    sudo apt install openssh-server -y
    sudo apt install net-tools

    2. 配置 sshd

    修改配置文件

    sudo vim /etc/ssh/sshd_config

    确保以下关键配置:

    Port 22                   # 默认端口
    ListenAddress 0.0.0.0     # 允许所有 IP 连接
    PasswordAuthentication yes # 启用密码登录
    PermitRootLogin yes       # 允许 root 登录(按需调整)

    3. 启动 SSH 服务

    sudo service ssh start  # 或手动启动:sudo /usr/sbin/sshd

    验证服务状态:

    ps -e | grep sshd
    显示:
    1689 ?        00:00:00 sshd

    4. 免密登录

    要实现 Windows 免密 SSH 访问 WSL2,本质上是配置 SSH 公钥认证,步骤如下:

    1. 在 Windows 上生成 SSH 密钥对

    • PowerShellGit Bash 中运行:
    ssh-keygen -t ed25519 -C http://www.devze.com"wsl-ssh-key"  # 推荐使用 ed25519 算法
    • 默认保存路径:C:\Users\你的用户名\.ssh\id_ed25519(私钥)和 id_ed25519.pub(公钥)。
    • 不要设置密码(直接回车跳过),否则仍需交互输入。

    2. 将windows上的公钥复制到 WSL2 的 authoPeGbrrized_keys

    pythonWindows 查看公钥内容:

    cat ~\.ssh\id_ed25519.pub

    复制输出的内容(以 ssh-ed25519 开头的一行)。

    在 WSL2 中粘贴到 ~/.ssh/authorized_keys

    mkdir ~/.ssh
    echo "粘贴的公钥内容" >> ~/.ssh/authorized_keys
    chmod 600 ~/.ssh/authorized_keys  # 必须限制权限

    5. 配置 Windows SSH 客户端

    确保私钥被自动加载

    编辑 C:\Users\你的用户名\.ssh\config(没有则新建):

    Host wsl2
        HostName localhost
        User 你的WSL2用户名
        Port 22
        IdentityFile ~/.ssh/id_ed25519
        IdentitiesOnly yes

    修复 WSL2 的 ~/.ssh 权限

    chmod 700 ~/.ssh
    chmod 600 ~/js.ssh/authorized_keys

    测试连接:

    ssh wsl2  # 直接使用配置的别名

    若无提示输入密码,则配置成功!

    成以上步骤后,即可通过 SSH 稳定访问 WSL2 环境。

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。

    0

    上一篇:

    下一篇:

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    最新运维

    运维排行榜