在Windows上配置SSH服务
以下使用的 Windows 是 Windows 11;命令都是在 PowerShell 中执行(管理员权限)
通过SSH连接到Windows默认是使用cmd.exe,如果需要使用PowerShell需要单独配置
参考资料:https://gist.github.com/teocci/5a96568ab9bf93a592d7a1a237ebb6ea
安装SSH服务器
方法1:使用图形界面安装:
Settings > Apps > Optional features(如果找不到请直接搜索)
Click View Features
Select OpenSSH Server from the list and click Next > Install
方法2:使用命令安装(TODO)
安装完成后可以检查:
安装位置:C:\Windows\System32\OpenSSH\
检查服务状态:Get-Service -Name *ssh*
设定服务器自动启动(这里命令执行的顺序貌似很重要,顺序错误可能会报错)
Set-Service -Name sshd -StartupType 'Automatic'
Start-Service sshd
Set-Service -Name 'ssh-agent' -StartupType 'Automatic'
Start-Service 'ssh-agent'
允许22端口的网络通信
方法1:增加一条防火墙规则(使用命令)
New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
方法2:增加一条防火墙规则(使用图形界面)
方法3:
netsh advfirewall firewall add rule name=“SSHD service” dir=in action=allow protocol=TCP localport=22
配置服务器:修改%programdata%\ssh\sshd_config(格式和Linux的SSH一样,因为都是openssh-server)
修改之后需要重启服务器:Get-Service sshd | Restart-Service –force
现在可以从外部连接到Windows了,使用的账户和密码就是用于登录Windows的账户和密码