Windows Server体验之SSH远程连接
经过之前的各种远程管理方法,Windows Server可以被很好的管理,也能符合大多数Windows管理员的使用习惯。不过既然是命令行版本的Windows能不能和Linux一样管理呢?Windows上启用SSH服务。
为了符合Linux的管理方式,那么就需要在Windows上启用SSH服务。微软官方也给出了如何在Windows Server上使用OpenSSH管理的方法。
OpenSSH in Windows
https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_overview
官方文章中有很多实用的步骤,但是在操作过程中我也遇到了一些问题。最终自己摸索着解决了。
首先,我们要安装OpenSSH服务器端。可以使用Powershell命令来检查公网仓库中的软件包。
Get-WindowsCapability -Online | ? Name -Like '*SSH*'
如果看不到图,请点我。

可以看到有服务器和客户端2个包,其中客户端的已经装好了。知道了包的名字,我们就可以安装了。
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

很快,就能看到OpenSSH Server被装好了。

接下去,就是需要启用服务并在防火墙中放行TCP 22。这里,我们使用Admin Center的方式启用服务并启用防火墙规则。其中防火墙规则是自动创建的,只需要启用它就饿可以了。由于我们最终需要通过密钥的方式登录系统,所以需要将ssh-agent服务也启动。并将他们的启动类型都改成自动。


到这里,就可以直接使用SSH连接到服务器了,可以使用密码登录了。但是为了方便统一登录管理,最终目标是使用密钥的方式登录。
sshd的配置文件在C:\ProgramData\ssh目录下。编辑sshd_config,去掉PubkeyAuthentication yes前面的注释。然后在C:\Users\Administrator下建立文件夹.ssh,并且将公钥文件复制过去,名字改成authorized_keys。如果是Linux服务器,这样就可以用本地的私钥登录了。但是这个Windows服务器就是不行,还是会提示输入密码。试过大写A Administrator 小写a administrator,都不可以。试着按官方文章中的方法修复authorized_keys文件的权限也没用。
接下来,试着从Linux主机复制公钥到服务器上,结果发现用户配置文件.ssh目录下并没有。

经过反复测试发现文件都被上传在了C:\Users\Administrator目录下。

后来发现是由于路径的问题,Linux使用/而Windows使用\。重新用/作为路径之后就可以了。
scp id_rsa.pub administrator@ip:c:/users/administrator/.ssh/authorized_keys
之后就可以直接使用密钥登录系统了。
关于文件的权限,也并不需要按官方文章中提到的修复权限。
我服务器上文件的权限如图所示。

Windows Server体验之SSH远程连接的更多相关文章
- windows server服务器上mysql远程连接失败的坑
windows server服务器上mysql远程连接失败的坑 背景:趁这阿里云活动,和朋友合伙买了个服务器,最坑的是没想到他买的是windows Server的,反正便宜,将就着用吧,自己装好了wa ...
- Win记录-配置Windows Server R 2008多用户远程连接(仅做参考)
1.计算机管理下用户组下新建用户 2.系统属性下远程控制加入用户,设置允许运行任何远程桌面 3.运行->gpedit.msc->计算机配置->管理模板->windows 组件- ...
- windows Server 2016安装Sqlserver远程连接的坑
如果要连接远程服务器 首先打开防火墙端口1433 新建入站规则 然后 如果没启用 就启用 然后重启服务就行 如果还是不行 进去属性 修改三处 然后重启服务
- windows server 2008配置多用户远程连接
打开开始菜单->管理工具->远程桌面服务->远程桌面会话主机配置 右键限制每个用户只能进行一个会话->常规->勾掉限制每个与用户只能进行一个会话 右键远程桌面授权模式-& ...
- 使用工具SecureCRT通过ssh远程连接Windows server 2019
Windows Server 2019 开通SSH Server服务 在需要安裝的ws2019开启powershell,执行安装 openssh server 指令 Add-WindowsCapabi ...
- Windowsclient SSH 远程连接Windowsserver(PowerShell Server)
近期刚搞完SSH框架.又来研究研究SSH远程连接.为什么这么要弄这个呢?由于如今我如今开发主要在自己的笔记本(windows)上,然后写的后端都要部署到实验室的台式机(windows)上,这样一来,我 ...
- Windows和linux虚拟机之间联网实现SSH远程连接以及VMware的3种网络模式[NAT、桥接和Host-only]
Windows和linux虚拟机之间联网实现SSH远程连接以及VMware的3种网络模式[NAT.桥接和Host-only] 作者:天齐 一.Windows和linux虚拟机之间联网实现SSH远程连接 ...
- 全新 Mac 安装指南(编程篇)(环境变量、Shell 终端、SSH 远程连接)
注:本文专门用于指导对计算机编程与设计(尤其是互联网产品开发与设计)感兴趣的 Mac 新用户,如何在 Mac OS X 系统上配置开发与上网环境,另有<全新 Mac 安装指南(通用篇)>作 ...
- 远程连接Kali Linux使用PuTTY实现SSH远程连接
远程连接Kali Linux使用PuTTY实现SSH远程连接 本书主要以在Android设备上安装的Kali Linux操作系统为主,介绍基于Bash Shell渗透测试.由于在默认情况下,在Andr ...
随机推荐
- Windows 启动过程
引言 启动过程是我们了解操作系统的第一个环节.了解 Windows 的启动过程,可以帮助我们解决一些启动的问题,也能帮助我们了解 Windows 的整体结构. 以下内容将分为[加载内核].[内核初始化 ...
- NC18979 毒瘤xor
NC18979 毒瘤xor 题目 题目描述 小a有 \(N\) 个数 \(a_1, a_2, ..., a_N\) ,给出 \(q\) 个询问,每次询问给出区间 \([L, R]\) ,现在请你找到一 ...
- CTCLoss如何使用
CTCLoss如何使用 目录 CTCLoss如何使用 什么是CTC 架构介绍 一个简单的例子 CTC计算的推导 总概率\(p(z|x)\) 路径的含义 路径概率\(p(\pi|x)\) 什么是\(\m ...
- 下载Chrome离线安装包
https://www.google.com/chrome/thankyou.html?standalone=1&platform=mac&installdataindex=defau ...
- 5-7 分页查询PageHelper
1. PageHelper实现分页查询 Day08 1.1 PH作用: PageHelper框架可以实现我们提供页码和每页条数, 自动实现分页效果,收集分页信息 1.2 PH原理: PageHelpe ...
- Python网页解析库:用requests-html爬取网页
Python网页解析库:用requests-html爬取网页 1. 开始 Python 中可以进行网页解析的库有很多,常见的有 BeautifulSoup 和 lxml 等.在网上玩爬虫的文章通常都是 ...
- python 常用的魔法函数
简介 在实际项目中,我们其实并不会太多的使用魔法函数,但是一些方法或者函数均是有魔法函数演变而来的,且在一些面试过程中会遇到一些关于常见方法的实现,就会牵扯到相应的魔法函数,此处将介绍一些我认为比较常 ...
- 关于静态 RMQ 问题
目录 1. 普通做法 2. Four Russian 算法 3. 随机数据的一种做法 4. 有关转 LCA 的做法 1.1. RMQ 转 LCA 再转 ±1RMQ(RMQ 标准算法) 1.2. 一个优 ...
- 使用Django2.0.4集成钉钉第三方扫码登录
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_124 钉钉作为阿里旗下的一款免费移动通讯软件,受众群体越来越多,这里我们使用Django来集成一下钉钉的三方账号登录,首先注册钉钉 ...
- google nexus5x 刷机抓包逆向环境配置(三)
本文仅供学习交流使用,如侵立删! google nexus5x 刷机抓包逆向环境配置(三) 安装抓包证书(Fiddler.Charles) 操作环境 nexus5x kaliLinux win10 准 ...