精华内容
下载资源
问答
  • 使用winrm远程连接windows server2019并批量执行powershell命令演示

    1.AD域服务器操作

    AD域服务器 快速配置开启winrm服务,如果没开启服务,则会报错:

    2020-05-05 15:51:27,945  ERROR  localAD.py  40  the specified credentials were rejected by the server
    

    这里是AD域服务器需要配置的命令:

    winrm quickconfig
    winrm e winrm/config/listener
    winrm set winrm/config/service/auth @{Basic="true"}
    winrm set winrm/config/service @{AllowUnencrypted="true"}
    winrm get winrm/config
    

    部分截图:
    在这里插入图片描述

    2.winrm使用演示

    2.1 安装pywinrm 0.4.1

    这里有一个坑,pip install的是pywinrm,但是python代码导包的时候写的应该是import winrm,特别注意一下,在这里纠结了好一会。

    2.2示例代码

    import logging
    import winrm
    
    # 日志设置
    LOG_FORMAT = "%(asctime)s  %(levelname)s  %(filename)s  %(lineno)d  %(message)s"
    logging.basicConfig(filename='localAD.log', level=logging.INFO, format=LOG_FORMAT)
    
    # 本地AD域
    LDAP_IP_LOCAL = '192.168.255.222'        # LDAP本地服务器IP
    LDAP_ADMIN_USER_LOCAL = 'CN=Administrator,CN=Users,DC=bilibili,DC=com'      # LDAP本地服务器管理员账户
    LDAP_ADMIN_PWD_LOCAL = 'QQqq#123'        # LDAP本地服务器管理员密码
    
    
    # powershell命令,用于打开/关闭OU是否被删除的权限
    cmd_list_enable_del = ["Import-Module ActiveDirectory",
                           "Get-ADOrganizationalUnit -filter * -Properties ProtectedFromAccidentalDeletion | where {"
                           "$_.ProtectedFromAccidentalDeletion -eq $true} | ft",
                           "Get-ADOrganizationalUnit -filter * -Properties ProtectedFromAccidentalDeletion | where {"
                           "$_.ProtectedFromAccidentalDeletion -eq $true} |Set-ADOrganizationalUnit "
                           "-ProtectedFromAccidentalDeletion $false"]
    cmd_list_disable_del = ["Import-Module ActiveDirectory",
                            "Get-ADOrganizationalUnit -filter * -Properties ProtectedFromAccidentalDeletion | where {"
                            "$_.ProtectedFromAccidentalDeletion -eq $false} | ft",
                            "Get-ADOrganizationalUnit -filter * -Properties ProtectedFromAccidentalDeletion | where {"
                            "$_.ProtectedFromAccidentalDeletion -eq $false} |Set-ADOrganizationalUnit "
                            "-ProtectedFromAccidentalDeletion $true"]
    
    
    def enable_del_ou_right(ip, user, pwd, cmd_l):
        try:
            win = winrm.Session('http://' + ip + ':5985/wsman', auth=(user, pwd))
            for cmd in cmd_l:
                ret = win.run_ps(cmd)
                if ret.status_code == 0:  # 调用成功
                    logging.info('执行命令【' + cmd + '】成功')
                else:
                    return False
            return True
        except Exception as e:
            logging.error(e)
    
    
    if __name__ == '__main__':
        # 调用ps脚本,开启OU删除权限
        # modify_right_res = enable_del_ou_right(LDAP_IP_LOCAL, 'administrator', LDAP_ADMIN_PWD_LOCAL, cmd_list_enable_del)
    
        # 关闭OU删除权限
        enable_del_ou_right(LDAP_IP_LOCAL, 'administrator', LDAP_ADMIN_PWD_LOCAL, cmd_list_disable_del)
    
    

    说明:关闭了OU的删除权限后,AD域中OU右键,对象中,可以看到所有OU都设置好了防止对象被意外删除:
    在这里插入图片描述
    下面是日志中记载的:

    2020-05-05 15:54:41,783  INFO  localAD.py  35  执行命令【Import-Module ActiveDirectory】成功
    2020-05-05 15:54:44,319  INFO  localAD.py  35  执行命令【Get-ADOrganizationalUnit -filter * -Properties ProtectedFromAccidentalDeletion | where {$_.ProtectedFromAccidentalDeletion -eq $false} | ft】成功
    2020-05-05 15:54:45,461  INFO  localAD.py  35  执行命令【Get-ADOrganizationalUnit -filter * -Properties ProtectedFromAccidentalDeletion | where {$_.ProtectedFromAccidentalDeletion -eq $false} |Set-ADOrganizationalUnit -ProtectedFromAccidentalDeletion $true】成功
    

    以上测试代码是远程连接修改AD域的,可以通过下面更简单的代码,看下出了什么问题

    import winrm
    
    # 虚机服务器server 2019
    IP_LOCAL = '192.168.255.223'        # 服务器IP
    PWD_LOCAL = 'QQqq#123'              # 服务器管理员密码
    
    # 测试的命令
    CMD = [
        'mkdir win_test_file'
    ]
    
    
    def run_cmd(ip, user, pwd, cmd_list):
        try:
            win = winrm.Session('http://' + ip + ':5985/wsman', auth=(user, pwd))
            for cmd in cmd_list:
                ret = win.run_ps(cmd)
                if ret.status_code == 0:  # 调用成功
                    print(cmd)
                else:
                    return False
            return True
        except Exception as e:
            print(e)
    
    
    if __name__ == '__main__':
        # 测试命令执行
        run_cmd(IP_LOCAL, 'administrator', PWD_LOCAL, CMD)
    
    

    如果报
    the specified credentials were rejected by the server
    账户密码有问题,其他问题 在核查中

    我有两台server2019虚拟机192.168.255.222那台可能是账号密码填写错误,
    192.168.255.223这台测试是ok的,可以在用户文件夹中生成一个文件夹
    在这里插入图片描述
    执行截图
    在这里插入图片描述

    展开全文
  • Linux下远程连接windows执行命令 - Feng______的专栏 - 博客频道 - CSDN.NEThttp://blog.csdn.net/feng______/article/details/31535693 Python实现linux/windows通用批量‘命令/上传/下载’小工具 - 奋进的K - ...

     

    Linux下远程连接windows,执行命令 - Feng______的专栏 - 博客频道 - CSDN.NET
    http://blog.csdn.net/feng______/article/details/31535693

    Python实现linux/windows通用批量‘命令/上传/下载’小工具 - 奋进的K - 51CTO技术博客
    http://kaifly.blog.51cto.com/3209616/1832200

    python telnet远程登录端口交互执行命令 - 玩蛇网
    http://www.iplaypy.com/code/c2701.html

    Python中调用PowerShell、远程执行bat文件实例_PowerShell_脚本之家
    http://www.jb51.net/article/59292.htm

     

    转载于:https://www.cnblogs.com/paul8339/p/6734652.html

    展开全文
  • 下载plink.exe工具 写一个bat脚本,如下: D:\plink.exe -pw 12345678 root@192.168.0.1 "shutdown -h now; getkey

    下载plink.exe工具


    写一个bat脚本,如下:

    D:\plink.exe -pw 12345678 root@192.168.0.1 "shutdown -h now"
    D:\plink.exe -pw 12345678 root@192.168.0.2 "shutdown -h now"
    D:\plink.exe -pw 12345678 root@192.168.0.3 "shutdown -h now"

    展开全文
  • 注: 该脚本需要调用的模块为:paramiko, sys, ... 批量执行命令格式: -C "IP列表" -M '执行的命令' 批量传送文件: -S "IP列表" -L "本地文件路径" -R "远程文件路径" 错误日志文件:$PWD/ssh_errors.log
  • python中的paramiko模块可以方便的连接远程主机并且执行命令,对远程批量管理服务器非常有用。 Paramiko模块安装 linux 1、直接输入pip install paramiko命令安装。 windows 1、安装PyCrypto模块,打开网址:...
        

    查看原文:http://www.sijitao.net/2008.html
    python中的paramiko模块可以方便的连接远程主机并且执行命令,对远程批量管理服务器非常有用。

    Paramiko模块安装

    linux

    1、直接输入pip install paramiko命令安装。

    windows

    1、安装PyCrypto模块,打开网址:http://www.voidspace.org.uk/python/modules.shtml#pycrypto,选择相应版本安装。

    2、从官网下载Paramiko源码,解压,cmd进入解压目录,输入python setup.py install使用常规安装方法安装。

    在python命令行输入import paramiko,确认是否安装成功,没报错就没问题。

    远程连接服务器和执行命令

    例1:连接

    #通过用户名密码连接
    def ssh_connect (host,port,user,password):
     ssh=paramiko.SSHClient()
     ssh.load_system_host_keys()
     ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
     ssh.connect(host,port,user,password,timeout=30)
     return ssh
    #通过密钥连接
    def ssh_connect_key (host,port,user,key_file):
     ssh=paramiko.SSHClient()
     ssh.load_system_host_keys()
     ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
     key=paramiko.RSAKey.from_private_key_file(key_file)
     ssh.connect(host,port,user,pkey=key,timeout=30)
     return ssh
    

    两个函数分别是通过用户名密码连接和通过密钥连接的例子。

    例2:远程执行命令

    s=ssh_connect(host,port,user,password)
    #s=ssh_connect(host,port,user,'s1_id_rsa.pub')
    #执行命令
    stdin,stdout,stderr = s.exec_command(cmd)
    cmd_result=stdout.read(),stderr.read()
    for line in cmd_result:
     print line,
    s.close()
    

    按照需要调用例1中的函数开启连接,然后调用exec_command()方法执行命令,最后打印返回的结果。其中stdout表示正常输出,stderr表示错误输出。

    以上就是python中paramiko模块实现远程连接服务器并且执行命令的常用方法。

    展开全文
  • 记录telnet命令执行时间,时间不超过2S的视为连接上,有点简单粗暴但暂时想不出更好的办法脚本如下,只能用于不严谨的场合:@echo off&setlocal ENABLEDELAYEDEXPANSION for /l %%i in (1,1,255) do ...
  • PsTools 套件包括一些命令行程序,可列出本地或远程计算机上运行的进程、远程运行进程、重新启动计算机、转储事件日志,以及执行其他任务。 RegDelNull 扫描并删除包含嵌入空字符的注册表项,标准注册表编辑工具不能...
  • BatchShell是一款基于SSH2的批量文件传输及命令执行系统,它可以同时传输文件到多台远程服务器以及同时对多台远程服务器执行命令。  具备以下主要功能:  多服务器批量文件传送、接收  多服务器远程...
  • 显示不同的操作界面,有分组管理,可以有效分类的对服务器,工作站,进行分实验室,分组管理,Unix linux服务器远程批量操作模式,批量操作模式 可以多线程操控Unix,Linux,服务器执行命令,获 取状态,输出命令执行...
  • 显示不同的操作界面,有分组管理,可以有效分类的对服务器,工作站,进行分实验室,分组管理,Unix linux服务器远程批量操作模式,批量操作模式 可以多线程操控Unix,Linux,服务器执行命令,获 取状态,输出命令执行...
  • 显示不同的操作界面,有分组管理,可以有效分类的对服务器,工作站,进行分实验室,分组管理,Unix linux服务器远程批量操作模式,批量操作模式 可以多线程操控Unix,Linux,服务器执行命令,获 取状态,输出命令执行...
  • 显示不同的操作界面,有分组管理,可以有效分类的对服务器,工作站,进行分实验室,分组管理,Unix linux服务器远程批量操作模式,批量操作模式 可以多线程操控Unix,Linux,服务器执行命令,获 取状态,输出命令执行...
  • Windows server的批量操作与linux系统的一些批量管理软件类似,使用一台Window主机作为管理机(最好是高版本管理低版本),通过建立互信的方式,由管理机统一发送命令远程主机执行。其中不同的一点是Windows需要...
  • 显示不同的操作界面,有分组管理,可以有效分类的对服务器,工作站,进行分实验室,分组管理,Unix linux服务器远程批量操作模式,批量操作模式 可以多线程操控Unix,Linux,服务器执行命令,获 取状态,输出命令执行...
  • 我了解的通常的方法有以下几种: 一:在linux系统下,编写except脚本,通过ssh远程执行命令、上传下载文件等。 二:使用SecureCRT的ChatWindow功能批量发送相同命令到某一批服务器。 三:用puppy等工具管理。 其中...
  • 文章目录一、批量处理编写二、用户&组1. 用户2. 组三、服务器远程管理1. 远程控制一2. 远程控制二三、破解windows系统密码四、NTFS权限 ...@echo off 关闭回显,不显示命令执行过程,建议放置在首行 title
  • windows批量杀死进程

    2020-12-25 11:01:25
    C:\Users\NR>taskkill /F /im frontpg.exe ...Tasklist命令用来显示运行在本地或远程计算机上的所有进程,带有多个执行参数。使用格式为:Tasklist [/S system [/U username [/P [password]]]] [/M
  • BatchShell是什么: BatchShell是一款基于SSH2的批量文件传输及命令执行工具,它可以同时传输文件到多台远程服务器以及同时对多台远程服务器执行命令。具备以下主要功能: ... BatchShell是什么: BatchShell是一款...
  • 我们一般使用linux的时候,都是在Windows...现在我们使用Python的paramiko模块可以实现ssh客户端,通过Python脚本远程登录一台机器并执行相关操作。为什么要使用Python来实现ssh客户端呢?主要作用是用来作批量管理...
  • 我们一般使用linux的时候,都是...现在我们使用Python的paramiko模块可以实现ssh客户端,通过Python脚本远程登录一台机器并执行相关操作。为什么要使用Python来实现ssh客户端呢?主要作用是用来作批量管理。如果让你...
  • 一、racadm racadm是直接操作dell自带的idrac的工具,ipmitool可以实现的操作通过它都可以执行,包括idrac、bios、nic、raid等等。具体命令操作手册需到Dell官网下载。...步骤1、Windows安装Dell远程控制卡RACA...
  • 批量执行大量用例的时候会概率偶现adb断连错误 <pre><code> Traceback (most recent call last): File "C:\Python34\lib\site-packages\urllib3\connectionpool.py", line 601, in urlopen chunked=...

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 156
精华内容 62
关键字:

windows批量远程执行命令