当前位置: 首页 > news >正文

地方网站域名选择嘉伟网络智能建站

地方网站域名选择,嘉伟网络智能建站,建设银行信用卡申请网站,新网站的站点验证第13章《远程处理:一对一及一对多》——PowerShell Remoting 学习笔记(高分版) 目标:把远程处理(Remoting)的底层原理、常见命令、最佳实践与坑点一次讲透,能在真实环境里稳妥落地。 文章目录第…

第13章《远程处理:一对一及一对多》——PowerShell Remoting 学习笔记(高分版)

目标:把远程处理(Remoting)的底层原理、常见命令、最佳实践与坑点一次讲透,能在真实环境里稳妥落地。


文章目录

  • 第13章《远程处理:一对一及一对多》——PowerShell Remoting 学习笔记(高分版)
    • 1. 概念速览
    • 2. 准备与启用
      • 2.1 远端机上启用 Remoting(以管理员运行)
      • 2.2 环境前提
    • 3. 1:1 远程:登录一台机子像本地敲命令
    • 4. 1\:n 远程:同一命令同时分发多台
      • 4.1 基本用法
      • 4.2 从文件/AD 批量取主机名
      • 4.3 远端执行 vs 本地执行:**大括号位置决定效率与正确性**
      • 4.4 传脚本文件
    • 5. `-ComputerName` 参数 与 Remoting 的区别
    • 6. 常见坑 & 排错清单
    • 7. 常用脚本模板(抄走即用)
      • 7.1 一次性启用远程(管理员)
      • 7.2 1:1 快速诊断
      • 7.3 多机:查询停止的服务(本地再格式化)
      • 7.4 多机:Top10 虚拟内存进程(远端排序/截取)
      • 7.5 多机:抓取应用日志 100 条
      • 7.6 多机:注册表读取(项属性)
    • 8. 进阶与安全
    • 9. 记忆卡(一句话原则)

1. 概念速览

  • 远程处理(Remoting):让命令在远端执行,只把结果回传本机。

  • 协议/组件:WS-MAN(HTTP/HTTPS) ←→ WinRM 服务(Listener + Endpoint)。

  • 对象传输:远端对象会序列化为 XML 传回,本机再反序列化成“去方法的快照对象”(Deserialized…);所以操作类指令要在远端完成

  • 两种模式

    • 1:1 交互会话:Enter-PSSession / Exit-PSSession
    • 1:n 分布式执行:Invoke-Command -ComputerName A,B,C -ScriptBlock { … }(默认并发 32)

2. 准备与启用

2.1 远端机上启用 Remoting(以管理员运行)

Enable-PSRemoting
# 做了什么:启动/设为自动 WinRM、创建 Listener、打通防火墙(5985 HTTP,5986 HTTPS)

提示

  • 服务器版系统默认更友好;客户端若网卡是“公用网络”会阻止防火墙规则,需改为“专用/工作网络”。
  • 统一开通推荐用 GPO(WinRM / Windows Remote Shell 模板)。
  • 保持默认端口最省心;改端口就要处处显式指定。

2.2 环境前提

  • 本机/远端 PowerShell ≥ v2;域内或可信域最佳。非域环境可行但要额外配置(详见 about_Remote_Troubleshooting)。
  • 首次连接用主机名,默认不接受 IP / DNS 别名(SPN/信任问题,后续可通过配置放开)。

3. 1:1 远程:登录一台机子像本地敲命令

Enter-PSSession -ComputerName Server01
# [Server01] PS C:\>  ← 提示符变了,表示在远端执行
Exit-PSSession

注意

  • 会话内执行就像站在远端主机的控制台;Profile 脚本默认不自动执行
  • 不要链式远程(远程里再 Enter-PSSession 到第三台)——难追踪且开销大。
  • 需要自定义超时/证书检查等细节,可用:
Enter-PSSession -ComputerName Server01 -SessionOption (New-PSSessionOption -SkipCNCheck)

4. 1:n 远程:同一命令同时分发多台

4.1 基本用法

Invoke-Command -ComputerName Server01,Server02 `-ScriptBlock { Get-EventLog -LogName Security -Newest 200 | Where-Object EventID -eq 1212 }
  • 并发执行(默认 32,可用 -ThrottleLimit 调整)。
  • 结果带 PSComputerName 字段,可一眼看出来源主机。
  • 把筛选放在远端,减少网络回传量。

4.2 从文件/AD 批量取主机名

# 从文本文件逐行读取主机名
Invoke-Command -ComputerName (Get-Content .\servers.txt) -ScriptBlock { hostname }# 从 AD OU 获取主机名(关键:只传“名字”而不是对象)
Invoke-Command -ComputerName (Get-ADComputer -Filter * -SearchBase "OU=Sales,DC=company,DC=pri" |Select-Object -ExpandProperty Name
) -ScriptBlock { Get-Process }

4.3 远端执行 vs 本地执行:大括号位置决定效率与正确性

  • 正确(在远端完成“取+改”):
Invoke-Command -ComputerName Server01 -ScriptBlock {Get-Process -Name notepad | Stop-Process
}
  • 错误(把对象拿回本地再改):
    反序列化对象没有方法,且可能错杀本地进程:
Invoke-Command -ComputerName Server01 -ScriptBlock { Get-Process -Name notepad } | Stop-Process

原则:能在远端完成的计算/筛选/操作,都放远端;本地只做显示/导出。

4.4 传脚本文件

Invoke-Command -ComputerName Server01,Server02 -FilePath .\Do-Something.ps1

5. -ComputerName 参数 与 Remoting 的区别

以事件日志查询为例:

  • Get-EventLog -ComputerName A,B,C | Where-Object …

    • 串行连接;不一定走 WinRM;结果可能不带来源字段;可能被防火墙拦。
  • Invoke-Command -ComputerName A,B,C -ScriptBlock { Get-EventLog … | Where-Object … }

    • 并发;走 WinRM 5985/5986;带 PSComputerName;先远端筛选再回传,更高效

6. 常见坑 & 排错清单

  • 对象被“去方法”:远端回来的对象是 Deserialized没有方法。操作类命令要在远端 ScriptBlock 内完成
  • Format-* 放进 ScriptBlock:No!格式化只影响显示,放本地末端即可。
  • IP/别名连接失败:默认需用主机名;别名/IP 要额外信任配置(见 about_Remote_Troubleshooting)。
  • UAC/权限:最好用管理员 PowerShell;或在命令上加 -Credential
  • 第三方防火墙Enable-PSRemoting 只会改 Windows 防火墙;第三方需要手工放行 5985/5986。
  • GPO 覆盖:组策略可能改写你的本地 WinRM 设置,先查 GPO
  • 网络类型“公用”:客户端“公用网络”会挡规则,改“专用/工作网络”。
  • 链式远程:尽量避免。
  • 性能:大量主机时调 -ThrottleLimit;优先远端过滤,减少回传。

7. 常用脚本模板(抄走即用)

7.1 一次性启用远程(管理员)

Enable-PSRemoting -Force

7.2 1:1 快速诊断

Enter-PSSession -ComputerName Server01
hostname
Exit-PSSession

7.3 多机:查询停止的服务(本地再格式化)

Invoke-Command -ComputerName (Get-Content .\servers.txt) -ScriptBlock {Get-Service | Where-Object Status -eq 'Stopped'
} | Format-Wide -Column 4

7.4 多机:Top10 虚拟内存进程(远端排序/截取)

Invoke-Command -ComputerName Server01,Server02 -ScriptBlock {Get-Process | Sort-Object VM -Descending | Select-Object -First 10
}

7.5 多机:抓取应用日志 100 条

Invoke-Command -ComputerName (Get-Content .\computers.txt) -ScriptBlock {Get-EventLog -LogName Application -Newest 100
}

7.6 多机:注册表读取(项属性)

Invoke-Command -ComputerName Server01,Server02 -ScriptBlock {Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\' |Select-Object ProductName, EditionID, CurrentVersion
}

8. 进阶与安全

  • 会话细节:New-PSSessionOption(超时、压缩、证书检查等);-SessionOption
  • 持久会话池、跨命令复用:见后续章节(New-PSSession / Invoke-Command -Session)。
  • 严格安全环境:和安全团队沟通 WinRM 风险等级≈RDP、可审计、占用更小。
  • 了解 SSH Remoting(新路径,命令习惯相同,底层协议不同)。

9. 记忆卡(一句话原则)

  • 能在远端做的,都放远端(获取→过滤→操作→回传最少数据)。
  • 序列化对象无方法,操作务必在 ScriptBlock 内完成。
  • 格式化永远放最右(在本地显示层做)。
  • 用主机名、开 WinRM、看 GPO、管理员身份、先试 -WhatIf/小范围
  • 并发默认 32,-ThrottleLimit 可调

http://www.dtcms.com/a/438520.html

相关文章:

  • Leetcode 3695. Maximize Alternating Sum Using Swaps
  • 模型瘦身四剑客:剪枝、量化、低秩分解、知识蒸馏详解
  • php 校园网站设计如何做网站流程图
  • 如何高效下载 YouTube 视频?实用工具推荐
  • 【洛谷】6 道题吃透堆的应用:模板堆、第 k 小、最小函数值等全攻略
  • MySQL库的操作(ubuntu)
  • 利用AI赋能抑郁症管理:创业项目与技术方案
  • 中国网站建设市场分析报告上海网站设计合理柚v米科技
  • 【IMX6ULL项目复现】sg90电机-pwm
  • 2025软件供应链安全实战:从漏洞修补到风险预测的转型指南
  • iOS26 打开开发者模式
  • 注销主体备案与网站备案沧州最火网站
  • AI智能体在研究分析中的仿真应用:AI驱动的复杂系统建模与“理论压缩”
  • 表格识别技术:突破传统OCR的局限,通过定位-解析-重建三步策略攻克无边框、合并单元格等视觉难题
  • 免费企业模板网站制作网页设计公司
  • 开放定址法的平均查找长度计算
  • MEVless,MEV解决之道
  • 网站 自适应文字大小怎么做响应式网站建设公司
  • 手写MyBatis第89弹:动态SQL解析与执行时机深度剖析
  • 解读172页“十五五”企业战略规划指导手册【附全文阅读】
  • 网站开发个人工作室网站推送怎么做的
  • 机器学习:逻辑回归
  • 机器学习——SVM支持向量机详解
  • app网站开发wordpress 自定义字段 调用
  • 互动网站建设什么意思wordpress 公众号插件
  • CUDA 13.0 中 CCCL 2.x 到 CCCL 3.0 迁移介绍
  • 临沂企业网站建设网站建设 技术方案
  • 《计算机视觉度量:从特征描述到深度学习》-- 基于MAE预训练模型DinoV3的图像特征分析
  • LabVIEW继电保护检测
  • 网站开发网公司营业执照查询