windows上安装ssh客户端和服务端
下载安装包
解压并cd到对应文件夹
安装服务器、开机自启、启动服务
powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1
sc config sshd start= auto
net start sshd
修改C:\ProgramData\ssh\sshd_config
配置以下两项
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
确保最后两条被注释掉
#Match Group administrators
# AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys
开放22端口
控制面板-管理工具-高级安全windows防火墙-添加22端口TCP入站规则
创建C:\Users\[用户名]\.ssh\authorized_keys,修改权限,确保只有System, Administrators and owner ,其他人的权限都要删掉,删不掉的使用"属性-安全-高级-禁用继承、删除"
重启服务,net stop sshd,net start sshd
linux客户端免密登录windows服务器
在linux上执行: ssh-keygen -t rsa
一路next,找到生成的公钥文件id_rsa.pub,将其内容复制到windows服务器上的C:\Users\[用户名]\.ssh\authorized_keys中,确认文件权限只有System, Administrators and owner,重启windows上的sshd服务
在linux上使用以下命令远程登录到windows,其中/home/[用户名]/.ssh/id_rsa是上一步中生成的私钥文件
ssh -i /home/[用户名]/.ssh/id_rsa etl@192.168.***.***
参考链接: