首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么我的Ansible服务器不能与我的Windows计算机通信?

为什么我的Ansible服务器不能与我的Windows计算机通信?
EN

Server Fault用户
提问于 2021-05-26 13:42:07
回答 1查看 330关注 0票数 0

Ansible的官方文档说Windows并不是一个受支持的操作系统,但是,每天我都更确信你能让它正常工作。

服务器是一台CentOS 7机器。我可以从我的服务器建立到Windows机器的SSH连接,反之亦然。

这是我的Windows XP计算机的Ansible主机文件条目:

代码语言:javascript
运行
复制
[winxp]
10.0.2.4

[winxp:vars]
ansible_user=nico
ansible_connection=ssh
ansible_port=22

这是执行ansible winxp -m win_ping时的输出:

=> { “已更改”:false, "msg":“未能通过ssh连接到主机:--使用警告--这是一个专用计算机系统。该计算机系统,包括所有相关设备、网络和网络设备(特别包括因特网接入),仅供授权使用。可为所有合法目的对该计算机系统进行监测,包括确保授权使用该系统,以管理该系统,以便于防止未经授权的访问,并核查安全程序、生存性和操作安全。监视包括授权实体的主动攻击,以测试或验证该系统的安全性。在监测期间,可以检查、记录、复制和用于授权目的的信息。在本系统上放置或发送的所有信息,包括个人信息,都可能受到监视。该计算机系统的使用,无论是授权的还是未经授权的,都构成对该系统的监控的同意。未经授权的使用可能会使你受到刑事起诉。在监测期间收集到的未经授权使用的证据可用于行政、刑事或其他不利行动。使用此系统构成对这些purposes.权限被拒绝的监视(公开键、密码、键盘交互)的同意。

"Failed to connect to the host via ssh:"完全可以在Ansible之外完成时,它为什么要说它呢?

将这一行添加到主机文件不会改变任何事情:

代码语言:javascript
运行
复制
ansible_ssh_server_cert_validation='ignore'

添加行ansible_password=xxxx并执行相同的命令将显示以下输出:

10.0.2.4不可达的!=> { changed“changed”:false, 10.0.2.4“msg”:“未能通过ssh连接到主机", ”无法到达“:true }

有人知道吗?真的不可能吗?我是否需要在Windows机器上安装特定的python版本、powershell版本或任何其他版本?

编辑:解决此问题的方法

因此,正如在答案中提到的,Ansible不能在Windows上使用。然而,有一个解决办法。您可以使用sshpass创建在Windows计算机上运行命令的剧本,并在同一台Ansible计算机上运行该剧本。这是我用过的剧本:

代码语言:javascript
运行
复制
---
- hosts: ansible_server
  tasks:
    - name: Test
      shell: sshpass -p 'nico' ssh nico@10.0.2.4 "cmd.exe /c mkdir C:\it_works"

希望这能帮上忙

EN

回答 1

Server Fault用户

发布于 2021-05-26 18:44:47

即使您设法获得ssh成功连接,不需要PowerShell 3.0,它不工作的Windows。它需要2008/Vista或更高版本。你不需要再浪费时间去努力让它发挥作用。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1064774

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档