一、什么是winRM服务

1.1、winRM服务介绍

Windows远程管理(WinRM)服务是Windows Server 2003 R2以上版本中一种新式的方便远程管理的服务。通过WinRM服务,便于在日常工作中远程管理服务器,或通过脚本同时管理多台服务器,来提高工作效率。

我们在运维Windows服务器时,通常是用RDP协议来访问服务器,由于RDP是一种图形化协议,导致运维人员无法像SSH一样通过命令行终端的方式来对Windows服务器进行运维操作。RDP协议的这一缺点,使得Windows无法通过远程来执行一些自动化批量命令,例如传输文件、远程执行脚本等。

1.2、如何配置WinRM服务

WinRM服务基于HTTP(HTTPS)协议,使用5985端口(HTTPS使用5986端口)。按照微软官方的介绍:Windows2008 R2以上版本的操作系统,默认开启WinRM服务,因此,在使用时只需将防火墙相应的5985(或5986)端口开放即可;

(1)如何确认WinRM服务是否开放?

以管理员身份在CMD中执行以下命令:

winrm e winrm/config/listener

若返回错误信息,表示WinRM未启动;

若返回以下信息,表示已启动:

(2)如何开启WinRM服务?

若WinRM未启用,以管理员权限运行PowerShell,然后输入以下命令:

enable-psremoting

看到上述界面,表示WinRM启动成功。

二、winRM在行云管家上的应用

2.1、基于winRM的远程改密功能

目前很多堡垒机将WinRM作为Windows账号自动改密的执行方案。

在业界,WinRM已经被广泛接受,微软官方也在逐渐向Linux看齐,甚至在未来发布的Windows Server,将支持只有Server Core而没有GUI的Windows。而这种系统的管理方式,就是WinRM。

2.2、使用前要做哪些配置

在现在GUI形式的Windows上,若使用域控账号或Administrator执行远程管理,由于Windows将域账户认为是可信账户,因此无需任何配置,即可完美执行远程命令。

但要想使用本地非Administrator账号通过WinRM进行远程管理,会受到UAC(User Account Control)的影响,当使用非Administrator账号执行任何操作时,均会弹出UAC确认窗口,需要用户手动点击“是”按钮进行确认,如下图:

那么问题来了:在执行远程命令时,运维人员并没有进到操作系统界面,无法看到此提示,更不用说确认了,必然导致远程命令执行失败。

针对此问题,微软提供了一种远程操作关闭UAC提示的策略配置,只需要在注册表中配置LocalAccountTokenFilterPolicy = 1,即可在远程执行命令时,不进行UAC提示,但此策略不影响Windows本地操作,因此具有一定安全性。

具体配置操作为以管理员身份打开CMD,并执行以下命令:

reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f

进行上述配置后,使用本地非管理员账号,也可完美远程执行命令。

三、参考材料

(1)微软WinRM服务介绍:

https://docs.microsoft.com/en-us/windows/win32/winrm/portal

(2)微软UAC介绍:

https://docs.microsoft.com/en-us/troubleshoot/windows-server/windows-security/user-account-control-and-remote-restriction

(3)微软对于远程UAC提示的说明:

https://docs.microsoft.com/en-US/troubleshoot/windows-server/windows-security/user-account-control-and-remote-restriction

WinRM服务应用及配置说明的更多相关文章

  1. CAS 5.1.x 的搭建和使用(二)—— 通过Overlay搭建服务端-其它配置说明

    CAS单点登录系列: CAS 5.1.x 的搭建和使用(一)—— 通过Overlay搭建服务端 CAS5.1.x 的搭建和使用(二)—— 通过Overlay搭建服务端-其它配置说明 CAS5.1.x ...

  2. windows上开启winrm服务

    原文链接 因为进行远程powershell管理必须需要启用winrm的服务,所以需要在windows平台上启用winrm服务 winrm service 默认都是未启用的状态,先查看状态:如无返回信息 ...

  3. WinRM服务远程命令执行

    WinRM服务简介 WinRM是WindowsRemoteManagementd(win远程管理)的简称.基于Web服务管理(WS-Management)标准,使用80端口或者443端口.这样一来,我 ...

  4. 将nginx配置为服务,php-fpm配置说明

    编写shell脚本 vi /etc/init.d/nginx #!/bin/bash # # Startup script for the PHP-FPM server. # # chkconfig: ...

  5. centos下部署redis服务环境及其配置说明

    Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起,Redis的开发工作由VMware主 ...

  6. [Windows]远程管理服务WinRM远程管理Windows服务器 Invalid use of command line. Type "winrm -?" for help.

    运行环境 Windows 2012 R2 1. Windows需要打开WinRM服务,Server系统默认打开,默认端口5985 # WinRM服务查看 PS C:\Users\Administrat ...

  7. dubbo服务自动化测试搭建

    java实现dubbo的消费者服务编写:ruby实现消费者服务的接口测试:通过消费者间接测试dubbo服务接口的逻辑 内容包括:dubbo服务本地调用环境搭建,dubbo服务启动,消费者部署,脚本编写 ...

  8. [转]WIN7服务一些优化方法

    本文转自:http://bbs.cfanclub.net/thread-391985-1-1.html Win7的服务,手动的一般不用管他,有些自动启动的,但对于有些用户来说是完全没用的,可以考虑禁用 ...

  9. Windows Server 2016-命令行方式管理Windows服务

    Microsoft Windows 服务(过去称为 NT 服务)允许用户创建可在其自身的 Windows 会话中长时间运行的可执行应用程序. 这些服务可在计算机启动时自动启动,可以暂停和重启,并且不显 ...

  10. Samba服务的配置总结

    之前介绍了Linux下Samba服务器部署,这里简单总结下Samba服务参数的配置说明: Samba服务的主配置文件是smb.conf,默认在/etc/samba/目录下.smb.conf含有多个段, ...

随机推荐

  1. 「sdoi2019 - D2T2」移动金币

    对 @command_block 没有 implementation 做法的细化.理论来说可以通过,但因为我实现得较劣无法通过.:( 把金币中的空隙看作石子,就是一个阶梯 Nim 的模型(有总共 \( ...

  2. Teamcenter RAC 开发之《新建Item》

    private TCComponentItem createOperation(String itemName,String itemType) { //obejct_name itemType tr ...

  3. 01-linux - kvm

    配置linux kvm 逻辑卷 # df -h # fdisk -l | grep dev # pvs # pvcreate /dev/sdg # pvs # vgcreate oradata /de ...

  4. oracle命令2 和一致性关闭、非一致性关闭

    启动SQL*Plus语法sqlplus [username/password][@server] [as sysdba|sysoper] ,其中username/password如果不输人,SQL*P ...

  5. 谱图论:Laplacian算子及其谱性质

    1 Laplacian 算子 给定无向图\(G=(V, E)\),我们在上一篇博客<谱图论:Laplacian二次型和Markov转移算子>中介绍了其对应的Laplacian二次型: \[ ...

  6. 16. 从零开始编写一个类nginx工具, 反向代理upstream源码实现

    wmproxy wmproxy将用Rust实现http/https代理, socks5代理, 反向代理, 静态文件服务器,后续将实现websocket代理, 内外网穿透等, 会将实现过程分享出来, 感 ...

  7. 数据结构与算法(LeetCode)第一节:认识复杂度,对数器,二分法与异或运算

    一.认识复杂度 1.评估算法优劣的核心指标: 时间复杂度:当完成了表达式的建立,只要把最高阶项留下即可.低阶项都去掉,高阶项的系数也去掉,记为O(去掉系数的高阶项): ​ 时间复杂度是衡量算法流程的复 ...

  8. AtCoder Beginner Contest 321(ABC321)

    A. 321-like Checker 直接模拟. Code B. Cutoff 直接暴力枚举 \([0\sim100]\),每次把第 \(n\) 个数当作当前枚举的 \(i\),然后看看条件是否满足 ...

  9. 带您了解 O2OA 流程中的人工活动处理方式

    这次咱们来介绍 O2OA (翱途) 开发平台流程引擎中的人工活动的处理方式和逻辑,O2OA (翱途) 主要采用拖拽可视化开发的方式完成流程的设计和配置,不需要过多的代码编写,业务人员可以直接进行修改操 ...

  10. Kubernetes: kube-apiserver 之认证

    kubernetes:kube-apiserver 系列文章: Kubernetes:kube-apiserver 之 scheme(一) Kubernetes:kube-apiserver 之 sc ...