linux远程执行windows系统命令

有两种方式:

1、使用xfreerdp命令,利用rdp协议,执行命令

2、使用evil-winrm命令,利用winrm服务,执行命令

一、xfreerdp命令

安装

bash 复制代码
yum install xfreerdp -y

优点:

无需安装额外服务,直接借用远程桌面的rdp服务

缺点:

linux系统需要安装有图形界面,普通的云服务器没有图形不行

基本连接用法

复制代码
xfreerdp /u:<用户名> /p:<密码> /v:<服务器IP地址>

参数说明

  • /u:指定登录 Windows 的用户名(例如 Administrator)。

  • /p:指定该用户的密码。为了安全,你也可以省略 /p 参数,这样 xfreerdp 会在连接时提示你输入密码,避免密码留在命令历史中。

  • /v:指定远程 Windows 机器的 IP 地址。

示例

bash 复制代码
xfreerdp /u:Administrator /v:192.168.1.100

默认连接 TCP 3389 rdp端口

二、evil-winrm命令(推荐)

以centos9为例

开启winrm服务(默认就是开启的,可以不用管)

bash 复制代码
powershell执行:
Enable-PSRemoting -Force

安装

bash 复制代码
dnf module reset ruby -y
dnf module install ruby:3.1 -y
dnf module enable ruby:3.1
dnf install ruby -y
dnf install ruby-devel -y
yum groupinstall "Development Tools" -y
gem install evil-winrm

使用

bash 复制代码
evil-winrm -i 192.168.1.101 -u user -p 123456

默认连接 TCP 5985 端口 (WinRM 默认 HTTP 端口)或 TCP 5986 端口(HTTPS 端口)

如图:

登录后即可执行命令