最近做一个项目后台,涉及到多台服务器,当程序更新的时候,由于用的是WinServer,无法像Linux使用SSH批量更新,用Windows的mstsc的远程一个一个连接又太麻烦了。查找了一下资料,发现可以使用Windows系统自带的PowerShell连接的远程机子。

首先在服务端,打开PowerShell管理员窗口,输入以下指令开启允许远程访问:

Enable-PSRemoting

然后在客户端也开启允许访问,由于我这边使用的专用网络,使用以下脚本跳过网络限制:

Enable-PSRemoting -SkipNetworkProfileCheck -force

设置信任IP,其中*可更换为任一ip,如果为*即全部IP:

Set-Item WSMan:\localhost\Client\TrustedHosts -Value * -Force 

客户端设置允许使用脚本:

set-ExecutionPolicy RemoteSigned

可以查看WinRm是否开启成功:

winrm enumerate winrm/config/listener

使用以下脚本远程连接到服务器操作:

$uname="administrator" #administrator为用户名

$pwd=ConvertTo-SecureString "123456" -AsPlainText -Force; #123456为密码

$cred=New-Object System.Management.Automation.PSCredential($uname,$pwd); #创建自动认证对象

$servers="IP" #IP地址

Enter-PSSession -ComputerName $servers -Credential $cred #登录

如果要批量更新,则不需要连接到远程机子上,只需要给远程机发送指令,让远程机自动执行即可:

$uname="administrator" #administrator为用户名

$pwd=ConvertTo-SecureString "123456" -AsPlainText -Force; #123456为密码

$cred=New-Object System.Management.Automation.PSCredential($uname,$pwd); #创建自动认证对象

$servers="IP" #IP地址

Invoke-Command -ComputerName $servers -credential $cred -ErrorAction Stop -ScriptBlock {Invoke-Expression -Command "& `"D:\lwccRelease\tools\AutoUpdate\Auto.bat`" C:\temp\TestProject1\TestProject1.pjs /run /exit /SilentMode"} #执行的命令

使用PowerShell远程连接WinServer的更多相关文章

  1. Powershell 远程连接ARM Windows Server VM 并关闭 Firewall

    准备环境:Azure ARM Windows Server 2008 R2 机器 1.登陆机器查看防火墙,是开着的 2.查看机器的监听端口,发现没有Powershell远程管理对应的端口5985或59 ...

  2. powershell远程连接

    最近因为工作的需要看了看powershell相关的知识,个人总结了一点有关于powershell远程连接需要做的步骤,希望对别人有所帮助. 使用powershell远程连接,需要进行 设备的配置: 1 ...

  3. 使用 Powershell 远程连接 windows server

    使用 Powershell 远程连接 windows server Intro 最近我们的开发环境增加了一个 windows 服务器,没有界面的,不能直接远程桌面连上去管理,需要使用 Powershe ...

  4. PowerShell远程连接主机进行会话

    Get-ExecutionPolicy #脚本的执行策略set-ExecutionPolicy 枚举值 不同的策略,执行脚本的权限不同 允许开启远程 Enable-PSRemoting 添加域账户或者 ...

  5. 赖法,强制启动,https版的winrm ---powershell远程连接(winrm)的4个安全级别,详解

    ---------[winrm的“四级”安全]--------- 四级安全,就是最不安全的. winrm默认使用http+5985端口,密码传输加密,数据.命令传输明文.有被人窃取机密,和插入攻击命令 ...

  6. 项目总结14:Windows远程连接redis(cmd指令或PowerShell指令)

    1-确认远程的redis服务器是否允许被远程连接,已redis server安装在阿里云ECS上为例 1-1-确认在阿里云控制台,开放了端口6379和允许访问的IP 1-2-确认在服务器上安装redi ...

  7. Powershell远程在Azure A7虚拟机执行Java JVM失败

    近期.使用Powershell脚本在A7 (8核,56G内存)配置的 Azure VM(Virtual Machine.虚拟机)上远程运行Java JVM时 (java.exe -version).总 ...

  8. Windowsclient SSH 远程连接Windowsserver(PowerShell Server)

    近期刚搞完SSH框架.又来研究研究SSH远程连接.为什么这么要弄这个呢?由于如今我如今开发主要在自己的笔记本(windows)上,然后写的后端都要部署到实验室的台式机(windows)上,这样一来,我 ...

  9. PowerShell 如何 远程连接【转】

    转自: 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://bobzy.blog.51cto.com/2109336/1181249 ...

随机推荐

  1. PHP强制修改返回的状态码

    在最后的程序执行完毕之前,加入下列语句,即可实现所有的返回码都为200即使在服务器内部发生错误,会报500情况下只要加上register_shutdown_function函数的处理同样可以实现返回2 ...

  2. POJ 1734 无向图最小环/有向图最小环

    给定一张图,求图中一个至少包含三个点的环,环上的点不重复,并且环上的边的长度之和最小. 点数不超过100个 输出方案 无向图: /*Huyyt*/ #include<bits/stdc++.h& ...

  3. 关于order_by

  4. java 枚举的用法

    public enum StatisticTableEnum { DOC_BROWSE_STATISTIC("doc_browse_statistic"), DOC_LIB_BRO ...

  5. linux NFS配置案例

    1.查看NFS软件包        [root@server7 ~]# rpm -qa | egrep "nfs|rpcbind" 2.安装NFS和RPC服务        [ro ...

  6. shell中条件判断if中的-z到-d

    shell中条件判断if中的-z到-d的意思 [ -a FILE ] 如果 FILE 存在则为真. [ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真.[ -c FILE ] 如果 ...

  7. jquery easyui 日历控件和文本框结合使用生成日期

    html部分---等待接收所选日期的文本框 <td> <input name='input_date' required class='easyui-textbox' id='xiw ...

  8. CART 分类与回归树

    from www.jianshu.com/p/b90a9ce05b28 本文结构: CART算法有两步 回归树的生成 分类树的生成 剪枝 CART - Classification and Regre ...

  9. HTML+CSS知识总结2

    一.position:absolute和float属性的异同 相同点:两者都可以让元素脱离文档流,并可设置宽高 不同点:float仍会占据位置,而position:absolute会覆盖文档流中其他元 ...

  10. Confluence 6 插入一个文件到你的页面

    文件可以在页面中以缩略图或者链接的方式显示.我们有多种办法能够上传文件,请参考 Upload Files 页面. 你可以控制文件如何在你的页面中显示.文件在页面中显示的可用方法与你的文件类型有关. 插 ...