Ansible密码正确但无法登录目标服务器

问题

  1. 通过ansible-playbook批量管理服务器,需要事先编写inventory文件,目标服务器均使用随机密码。
  2. 在使用ansible-playbook和ansible命令时,均出现其中一台无法登录成功的问题。
  3. 通过ssh命令,使用inventory中记录得用户名、密码测试ssh登录,则成功无误。

报错如下:

bash 复制代码
[sysma@ansible mysql-glibc]$ ansible -i mysqlproSP3.ini 172.22.89.138 -m ping
172.22.89.138 | UNREACHABLE! => {
    "changed": false,
    "msg": "Invalid/incorrect password: \nAuthorized users only. All activities may be monitored and reported.\nPermission denied, please try again.",
    "unreachable": true
}

原因

随机密码出现了\转义字符,导致inventory文件内的密码在传递时发生转移,因此ansible命令使用的是错误密码。

排查

将随机密码修改为无\符号的密码,再次测试ansible命令成功无误。

解决

将密码还原,修改inventory文件内容,将标记密码字段的双引号修改为单引号,ansible默认对单引号内的内容不进行转义处理。

bash 复制代码
173.33.89.76 ansible_port=22	ansible_user="ptmauser" ansible_ssh_pass="xxxxxxxxxj\0=>" become_user="ptmauser" ansible_become_pass="xxxxxxxxxj\0=>"
173.33.89.77 ansible_port=22	ansible_user="ptmauser" ansible_ssh_pass="xxxxxxxxxowgzm" become_user="ptmauser" ansible_become_pass="xxxxxxxxxowgzm"
173.33.89.138 ansible_port=22	ansible_user="ptmauser" ansible_ssh_pass="xxxxxxxxx3ez>\" become_user="ptmauser" ansible_become_pass="xxxxxxxxx3ez>\"
173.33.89.139 ansible_port=22	ansible_user="ptmauser" ansible_ssh_pass="xxxxxxxxx6XziQ" become_user="ptmauser" ansible_become_pass="xxxxxxxxx6XziQ"

将其中随机密码出现转义字符的此行进行修改,从

复制代码
173.33.89.138 ansible_port=22	ansible_user="ptmauser" ansible_ssh_pass="xxxxxxxxx3ez>\" become_user="ptmauser" ansible_become_pass="xxxxxxxxx3ez>\"

改为

复制代码
173.33.89.138 ansible_port=22	ansible_user="ptmauser" ansible_ssh_pass='xxxxxxxxx3ez>\' become_user="ptmauser" ansible_become_pass='xxxxxxxxx3ez>\'

再次验证ansbile命令成功。

相关推荐
老师用之于民19 小时前
【DAY21】Linux软件编程基础&Shell 命令、脚本及系统管理实操
linux·运维·chrome·经验分享·笔记·ubuntu
路由侠内网穿透.19 小时前
本地部署代码托管解决方案 Gitea 并实现外部访问( Windows 版本)
运维·服务器·网络协议·gitea
serve the people19 小时前
python环境搭建 (十三) tenacity重试库
服务器·python·php
jake don20 小时前
GPU服务器搭建大模型指南
服务器·人工智能
江畔何人初20 小时前
pod的内部结构
linux·运维·云原生·容器·kubernetes
齐鲁大虾20 小时前
Linux下用什么编程语言方便开发B/S架构程序
linux·运维·架构
范纹杉想快点毕业21 小时前
状态机设计与嵌入式系统开发完整指南从面向过程到面向对象,从理论到实践的全面解析
linux·服务器·数据库·c++·算法·mongodb·mfc
三块钱079421 小时前
群晖docker部署Mattermost,对接openclaw
运维·docker·容器
博客-小覃21 小时前
内网穿透/端口映射之二层穿透访问”FTP共享文件“示例操作教程
运维·服务器·网络
珠海西格21 小时前
光伏电站全景感知体系:数据采集与设备状态监测技术
大数据·运维·服务器·数据库·人工智能