一、什么是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. Solution -「CSP 2019」Partition

    Description Link. 给出一个数列,要求将其分成几段,使每段的和非严格递增,求最小的每段的和的平方和. Solution 注意到 \(a_{i}\) 为正,对于正数有这样的结论: \[a ...

  2. 文心一言 VS 讯飞星火 VS chatgpt (97)-- 算法导论9.3 3题

    三.用go语言,假设所有元素都是互异的,说明在最坏情况下,如何才能使快速排序的运行时间为O(nlgn). 文心一言: 快速排序是一种基于分治策略的排序算法,其平均时间复杂度为O(nlgn).在最坏情况 ...

  3. 【效率提升】maven 转 gradle 实战

    一.灵魂三问 1.gradle 是什么? 一个打包工具, 是一个开源构建自动化工具,足够灵活,可以构建几乎任何类型的软件,高性能.可扩展.能洞察等.其中洞察,可以用于分析构建过程中数据,提供分析参考, ...

  4. ERP 财务管理的应付帐款流程

    导读:应付帐款流程与应收帐款流程是财务管理的开端,也是财务工作的主要流程.若能够这两大流程控制好了,ERP系统的财务模块也就成功了一大半了.我先讲一下财务管理的应付帐款流程. 企业的应付帐款有很多种类 ...

  5. for遍历

    for遍历 一:常规方式 1.遍历数组 int arr[10] = {1,2,3,4,5,6,7,8,9,10}; for(int i = 0;i<10;i++) { cout<<a ...

  6. 用阿里云镜像Centos7通过rpm和源码编译方式安装MySQL5版本

    这里只说明安装和注意事项,更具体的配置如端口号.cnf文件配置等就不写了. 阿里云开源镜像站资源目录 (aliyun.com) 我用的是基础版本. 基础版本镜像是默认不联网的,可以用下面的命令ping ...

  7. Spring Cloud Gateway系列:简介和入门

    一.简介 官网:https://cloud.spring.io/spring-cloud-gateway/reference/html/ SpringCloud Gateway是SpringCloud ...

  8. Tetris(俄罗斯方块).sh

    #!/bin/bash # Tetris Game # 10.21.2003 xhchen<[email]xhchen@winbond.com.tw[/email]> #APP decla ...

  9. 最佳实践-使用Github Actions来构建跨平台容器镜像

    公众号「架构成长指南」,专注于生产实践.云原生.分布式系统.大数据技术分享. 前言 最近在写K8s的相关系列文章,因为有涉及到镜像构建,发现在Mac m1的Arm架构下构建的部分镜像,没法在X86架构 ...

  10. In 查询及其优化

      translator Afrikaans Albanian - shqipe Arabic - ‎‫العربية‬‎ Armenian - Հայերէն Azerbaijani - azərb ...