windows 11启用ssh远程登录需四步:1. 安装openssh服务器组件;2. 启动sshd服务并设为开机自启;3. 防火墙放行tcp 22端口;4. 创建并初始化本地账户,用其用户名和密码通过局域网ip(如192.168.1.105)ssh登录。

让Windows 11电脑在局域网内被其他设备(如Mac、Linux笔记本或另一台Win电脑)通过SSH远程登录,核心是启用系统内置的OpenSSH服务器并确保网络可达。这不需要额外安装第三方软件,但必须正确配置服务、防火墙和账户权限——漏掉任意一环都会导致连接被拒绝或超时。
确认并安装OpenSSH服务器组件
Windows 11自带OpenSSH服务端,但默认不启用。先检查是否已安装:
以管理员身份运行Windows Terminal或PowerShell → 执行:Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH.Server*'
若返回结果中State为NotPresent,说明服务端未安装,需立即执行:Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
安装过程依赖微软在线更新源,国内网络可能出现卡顿或失败。若命令长时间无响应,【请改用手动安装方式:访问 https://github.com/PowerShell/Win32-OpenSSH/releases 下载 OpenSSH-Win64.zip,解压后以管理员身份运行其中的 install-sshd.ps1 脚本】。
启动SSH服务并设为开机自启
安装完成后,服务不会自动运行。必须手动启动并持久化:
执行:Start-Service sshd
执行:Set-Service -Name sshd -StartupType Automatic
验证服务状态:Get-Service sshd → 确保输出中Status为Running。如果显示Stopped,说明前一步启动失败,常见原因是依赖服务(如WinRM)未就绪,此时重启电脑再试一次往往能解决。
放行防火墙的TCP 22端口
Windows防火墙默认拦截所有入站连接,SSH使用22端口,必须显式放行:
方法一(推荐,命令行一键):在管理员PowerShell中执行New-NetFirewallRule -Name "OpenSSH-Server" -DisplayName "OpenSSH Server (sshd)" -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
通过 SSH 隧道从 Android 设备在互联网上对 Windows PC 实现完整远程控制的设置与使用指南,适用于远程桌面访问、安全 RDP 等。
方法二(图形界面):控制面板 → Windows Defender 防火墙 → 高级设置 → 入站规则 → 新建规则 → 端口 → TCP → 特定本地端口 22 → 允许连接 → 勾选“域”“专用”“公用” → 完成
【注意:若只勾选“专用”,而你的Wi-Fi网络被系统识别为“公用”,则SSH仍无法连入】
准备用于SSH登录的本地账户
SSH登录凭据必须是Windows本地账户,Microsoft账号无法直接用于密码认证:
第一步:打开“设置”→“账户”→“您的信息”→点击“改为使用本地账户登录”→按向导创建用户名(如devuser)和强密码
第二步:登录一次该本地账户,确保其用户配置文件已初始化(否则SSH会因缺失%USERPROFILE%路径而报错)
第三步:确认当前用户名 → 在PowerShell中执行:$env:USERNAME → 记下输出的纯用户名(不含计算机名前缀)
获取本机局域网IP并测试连接
客户端要连进来,必须知道这台Win11机器在局域网中的真实IP地址:
在PowerShell中执行:ipconfig → 找到“无线局域网适配器 WLAN”或“以太网适配器 以太网”下的IPv4地址(形如192.168.1.105)
从局域网内另一台设备(如Mac终端或Ubuntu的Terminal)执行:ssh devuser@192.168.1.105(将devuser替换为你设置的用户名,IP替换为实际地址)
首次连接会提示“是否继续连接”,输入yes → 接着输入该本地账户密码 → 登录成功即看到Windows命令行提示符










