网上有很多关于使用win10-ssh客户端登录linux-ssh服务端的介绍,但很少介绍多台win10-ssh服务端之间互访的。以下记录如何免密登录win10-ssh服务
- 根据微软文档描述,适用于Windows 10 1809 或 Windows Server 2019以上版本
- 以下内容如果无特别说明,在远程Windows主机上操作
安装OpenSSH Server
图形界面
点开 设置 -> 应用 -> 应用与功能 -> 可选功能
点击 添加功能 后跳出对话框,输入”ssh”,勾选安装”OpenSSH 服务器”
PowerShell方式
以下操作需要管理员权限
确认OpenSSH可用于安装
Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'
输出以下内容
Name : OpenSSH.Client~~~~0.0.1.0
State : Installed
Name : OpenSSH.Server~~~~0.0.1.0
State : NotPresent
安装OpenSSH Server
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
输出以下内容
Path :
Online : True
RestartNeeded : False
OpenSSH Server 服务配置
以下操作需要管理员权限
服务、防火墙相关
# 开启服务
Start-Service sshd
# 设置自启动
Set-Service -Name sshd -StartupType 'Automatic'
# 查看状态
Get-Service sshd
#关闭服务
Stop-Service sshd
# 重启服务
Restart-Service sshd
# 确认防火墙是放开的
Get-NetFirewallRule -Name *ssh*
- 确认
OpenSSH-Server-In-TCP
状态是enabled
- 至此可以在本地尝试
ssh username@ip
连接到远程机器
配置密钥免密登录
↓本地执行
# 生成密钥对
ssh-keygen -t rsa
# 找到公钥文件,复制内容备用
# Windows
# %HOMEPATH%.sshid_rsa.pub
# Linux
# $HOME/.ssh/id_rsa.pu
↑本地执行 | 远程执行↓
打开文件%HOMEPATH%.sshauthorized_keys
把公钥文件添加到上述文件末尾
修改文件C:ProgramDatasshsshd_config
,内容如下
重启服务Restart-Service sshd
C:ProgramDatasshsshd_config
确保以下3条没有被注释
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
确保以下2条有注释掉
# Match Group administrators
# AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys
(可选)配置PowerShell作为SSH连接默认SHELL
# 管理员运行
New-ItemProperty -Path "HKLM:SOFTWAREOpenSSH" -Name DefaultShell -Value "C:WindowsSystem32WindowsPowerShellv1.0powershell.exe" -PropertyType String -Force
Restart-Service sshd
参考链接
适用于 Windows 10 1809 和 Server 2019 的 OpenSSH 服务器配置
内容来源于网络如有侵权请私信删除
文章来源: 博客园
- 还没有人评论,欢迎说说您的想法!