gpt4 book ai didi

shell - 如何在 @ 中使用密码! # ansible shell ssh 中的字符?

转载 作者:行者123 更新时间:2023-12-02 14:26:16 26 4
gpt4 key购买 nike

我正在尝试通过 SSH 在一堆远程服务器上运行一些简单的检查。没有什么花哨。
其中一台服务器的密码类似于 mY*test@2PAss!01lZ#在我的库存中.yml文件。
对于这个特定的服务器,我得到:

SRV1 | UNREACHABLE! => {
"changed": false,
"msg": "Invalid/incorrect password: Failed to add the host to the list of known hosts (/home/redacted/.ssh/known_hosts).\r\n------------------------------------------------------------------------------\n* WARNING *\n* You are accessing a secured system and your actions will be logged along *\n* with identifying information. Disconnect immediately if you are not an *\n* authorized user of this system. *\n------------------------------------------------------------------------------\nPermission denied, please try again.",
"unreachable": true
}
我尝试过的所有事情都不起作用:
  • 逃离mY*test\@2PAss\!01lZ\#* 的任何其他组合, @ , ! , #字符
  • 使用 ansible 保险库
  • 使用 ansible_ssh_pass: "{{ i_pass | regex_escape() }}"
  • 单/双引号

  • 我没主意了。
    有人遇到过类似的问题吗?
    信息:
  • ansible 2.9.6
  • python version = 3.8.2 (default, Jul 16 2020, 14:00:26) [GCC 9.3.0]
  • 从 Ubuntu 连接到 RHEL 机器
  • 使用没有这种“特殊”字符的密码与另一个 RHEL 框类似的连接可以正常工作
  • 我无法定义公钥/私钥或更改密码。目标盒子由另一个团队安装和配置,然后该盒子在多个其他团队之间共享。
  • 最佳答案

    使用公钥认证更容易,因此您不需要任何密码。
    关于特殊字符,我做了一个测试:

    ansible localhost -m command -a "echo '{{ a }}'" -e '{"a": "mY*test@2PAss!01lZ#"}'
    localhost | CHANGED | rc=0 >>
    mY*test@2PAss!01lZ#
    所以这不是一般问题。

    关于shell - 如何在 @ 中使用密码! # ansible shell ssh 中的字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64312012/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com