Windows电脑如何开启SSH服务器功能

诸神缄默不语-个人CSDN博文目录

1. 开启SSH服务器

  1. 在设置中搜索“可选功能”,安装SSH服务器:
    在这里插入图片描述

  2. 以管理员身份运行PowerShell,执行:

    Start-Service sshd
    Set-Service -Name sshd -StartupType Automatic
    

    如果要禁用OpenSSH服务器功能:
    Win + R 输入 services.msc,找到 OpenSSH SSH Server 服务,选择 停止此服务:
    在这里插入图片描述
    右键选择 属性,将 启动类型 设为 禁用
    在这里插入图片描述
    在这里插入图片描述

  3. 允许TCP端口22入站:

    New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
    

    如果需要关闭SSH服务器的话,可以执行以下命令删除名为sshd的入站规则:

    Remove-NetFirewallRule -DisplayName 'OpenSSH Server'
    

2. 通过密码登录

ssh 用户名@服务器IP
其中用户名通过echo %username%命令即可得到,服务器IP通过ipconfig | findstr IPv4即可得到,SSH密码对于Windows系统来说就是开机密码。

首次登陆可能会提示是否加入known_hosts,输入yes即可。

3. 通过秘钥登录

(此处客户端示例也是Windows电脑。Linux电脑略,等我也用Linux电脑访问Windows服务器了再写)

在客户端用cmd1生成秘钥:
ssh-keygen -t rsa -b 4096 -C "你的邮箱@example.com"
根据提示选择存放文件夹(默认为C:\Users\user_name\.ssh)。密码可以不输入,直接回车。
如果是Windows系统的话,现在就会在存放文件夹下出现id_rsa.pub文件,这个就是公钥,复制公钥中的文本,在服务端的.ssh文件夹(默认为C:\Users\user_name\.ssh)下打开authorized_keys文件(如果没有的话就新建这个文本文件),将公钥文本复制到文件末尾。
authorized_keys文件的权限设置:右键属性 – 安全 – 高级 – 点击“禁用继承”–当出现提示时,选择“将继承的权限转换为此对象的显式权限”。然后将权限条目删除至只剩“SYSTEM”、自己的账户、“Administrators”。
效果:
在这里插入图片描述

编辑配置文件C:\ProgramData\ssh\sshd.config:

确保以下3条没有被注释
PubkeyAuthentication yes # 使用公钥
AuthorizedKeysFile	.ssh/authorized_keys # 公钥位置

确保以下2条有注释掉
#Match Group administrators
#  AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys

如果要只允许秘钥登录的话,设置:PasswordAuthentication no

在powershell中重启一下服务:net stop sshd && net start sshd

此时在客户端使用ssh 用户名@服务器IP命令应该就可以直接访问服务器了。


  1. 命令行不能使用中文的powershell,在使用powershell中文生成文件的时候默认使用 utf-16 编码而不是 utf-8,这会导致公钥过长出现 line 1 exceeds size limit 错误
    来源:Windows之间使用OpenSSH的ssh免密登录,排坑-USB迷|专注于互联网分享 ↩︎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

诸神缄默不语

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值