使用 Powershell 远程连接 windows server
使用 Powershell 远程连接 windows server
Intro
最近我们的开发环境增加了一个 windows 服务器,没有界面的,不能直接远程桌面连上去管理,需要使用 Powershell 管理,于是就有了这篇文章的探索。
windows服务器配置
以下所有命令需要在管理员账户下执行,请以管理员身份运行下面的命令。
- 在远程 windows服务器上启用 powershell 远程会话:
Enable-PSRemoting -Force
- 配置 TrustedHosts
winrm set winrm/config/client '@{TrustedHosts="<your local ip>"}'
# winrm set winrm/config/client '@{TrustedHosts="58.123.45.26,134.86.23.21"}' #多个地址用英文的逗号分隔
配置好之后需要重启一下服务:
Restart-Service WinRM
- 防火墙开放 5985 端口
winrm 有两个端口号,你可以用 winrm get winrm/config/client 命令来查看 winrm client 相关配置信息,

可以看到默认的两个端口
http: 5985https:5986
我们只用了 http 所以开放 5985 端口
本地配置
- 配置 TrustedHosts
winrm set winrm/config/client '@{TrustedHosts="<remote server ip or host>"}'
# winrm set winrm/config/client '@{TrustedHosts="58.123.45.26,134.86.23.21"}' #多个地址用英文的逗号分隔
- 连接远程服务器
Enter-PSSession -ComputerName <remoteIp or host> -Credential <username>
连接之后,会提示输入对应用户的密码,提交之后就会进行身份验证
出现如下图所示的提示就说明连接成功了,在执行命令就相当于是在远程windows服务器上执行命令了,就相当于是 SSH 到了 linux 服务器上了

疑难解答
ACCESS IS DENIED
如果你的用户名密码都是正确的,但是还是一直提示 ACCESS IS DENIED,那么你需要检查一下这个用户是否有 Remote 的权限,远程的用户至少要有 Remote 的权限,把用户加入到 Remote Desktop Users 这个用户组中就会有Remote 的权限
Reference
- https://www.faqforge.com/windows/create-powershell-session-remote-computer/
- https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_remote_troubleshooting?view=powershell-6
- https://docs.microsoft.com/en-us/windows-server/administration/server-manager/server-manager
- https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/enter-pssession?view=powershell-6
- https://www.itprotoday.com/windows-78/how-remotely-manage-windows-server-2016
使用 Powershell 远程连接 windows server的更多相关文章
- 使用Windows系统远程连接Windows server服务器
点击开始菜单->运行 (或者 windows+R) ,输入"mstsc"命令, 打开远程桌面连接对话框,输入你要连接的Windows server服务器的公网IP. 点击 ...
- 使用工具SecureCRT通过ssh远程连接Windows server 2019
Windows Server 2019 开通SSH Server服务 在需要安裝的ws2019开启powershell,执行安装 openssh server 指令 Add-WindowsCapabi ...
- 如何远程连接Windows server上的MySQL服务
废话不多说,直接开干 首先要打开服务器的MySQL端口号:3306(当然,也可以把服务器的防火墙直接关闭,不过不安全) 1.打开服务器管理器,有个高级安全Windows防火墙,下面有一个入站规则, 右 ...
- Powershell 远程连接ARM Windows Server VM 并关闭 Firewall
准备环境:Azure ARM Windows Server 2008 R2 机器 1.登陆机器查看防火墙,是开着的 2.查看机器的监听端口,发现没有Powershell远程管理对应的端口5985或59 ...
- Kali Linux远程连接Windows服务器
前言: 为了在Kali上远程连接Windows系统的服务器我们需要安装两个工具,rdesktop和tsclient.另外,我们从主机服务商那里购买的Windows操作系统的服务器都是默认开启了远程连接 ...
- mac远程连接windows
第一步:在Mac上安装Remote Desktop Connection 进入Microsoft Remote Desktop Connection下载安装包. 下载完成之后,双击安装包进行安装. 第 ...
- powershell远程连接
最近因为工作的需要看了看powershell相关的知识,个人总结了一点有关于powershell远程连接需要做的步骤,希望对别人有所帮助. 使用powershell远程连接,需要进行 设备的配置: 1 ...
- 使用SSH连接Windows Server 2019 Core
更新记录 本文迁移自Panda666原博客,原发布时间:2021年7月7日. 一.说明 Windows Server 2019 Core,是纯命令行的Windows Server版本,没有办法使用GU ...
- Navicat 远程连接SQL Server 2014 Express 报08001错误
场景:Navicat 远程连接SQL Server 2014 Express 报08001错误,经查验防火墙端口1434,1433已经打开 过程:1. 一开始觉得是连接名称问题,使用IP地址或者主机名 ...
随机推荐
- JavaScript-----9.函数
1.函数的使用 1.1 声明函数和调用函数 //1.声明函数 //function 函数名() { // //函数体 //} function sayHi() { console.log('hi~') ...
- android屏幕监视工具 android screen monitor使用
android screen monitor是一个非常好用的手机屏幕监视工具,可以将你的手机界面动态的显示出来,可用于项目演示. 这个工具就是其实一个jar文件,不到300KB大小,依赖jdk,并且还 ...
- Ubuntu设置开机时启动的系统内核版本
1.查看系统当前安装的所有内核版本 有两种方法 第一种: 可以查看/lib/modules下的文件夹,一个文件夹对应一个内核版本,如下图: 第二种:使用下面的命令查看: dpkg --get-sele ...
- 【开发工具】本机安装的JDK8,启动IDEA2019没反应
问题描述 本来开发工具安装的是IDEA2018,有天用着用着突然崩溃了,重启后死活用不了.心血来潮下载了2019版本,顺利安装完,但是点击快捷方式启动的时候一直没反应.后来咨询同事,在下面的启动脚本中 ...
- python - 操作excel表格
说明:由于公司oa暂缺,人事妹子在做考勤的时候,需要通过几个excel表格去交叉比对员工是否有旷工或迟到,工作量大而且容易出错. 这时候it屌丝的机会来啦,花了一天时间给妹子撸了一个自动化脚本. 1. ...
- C#_.NetFramework_WebAPI项目_EXCEL数据导出
[推荐阅读我的最新的Core版文章,是最全的介绍:C#_.NetCore_Web项目_EXCEL数据导出] 项目需要引用NPOI的Nuget包: A-2--EXCEL数据导出--WebAPI项目--N ...
- JavaScript-三种弹窗方式
0918自我总结 JavaScript-三种弹窗方式 一.alert 带内容的弹框 用法: <script> alert('弹窗显示的内容') //会弹出框没有点确定不会执行下面的代码会发 ...
- HashMap数据结构与实现原理解析(干货)
HashMap 数据结构解析: HashMap内部使用hash表(本质是一个数组见图一) HashMap使用hash算法计算得到存放的索引位置,以此来加快查询速度,(比ArrayList还要快) 同样 ...
- Vue结合后台导入导出Excel问题详解
话不多说,直接上前端代码 axios({ method: 'post', url: 'http://localhost:19090/exportUser',//这个是请求的地址 params: {// ...
- thinkphp 5.x No input file specified 解决
原规则: <IfModule mod_rewrite.c> Options +FollowSymlinks -Multiviews RewriteEngine On RewriteCond ...