命令如下:
# 作用:把192.168.101.91服务器原密码:111111改成Softsec@2020CN
sshpass -p "111111" ssh -o StrictHostKeyChecking=no root@192.168.101.91 "echo 'Softsec@2020CN' |passwd --stdin root"
命令解释:
第一部分:sshpass -p "111111" ssh -o StrictHostKeyChecking=no root@192.168.101.91
是通过sshpass这个插件远程连接了服务器192.168.101.91的root用户,sshpass的原理跟expect插件类似,就是模拟了人工输入密码。
但sshpass有个问题,当终端首次连接某个服务器时,都会有个“Are you sure you want to continue connecting (yes/no)? ”的提示,这样就没法连接,但是加上“-o StrictHostKeyChecking=no”参数,即可解决这个问题。
第二部分:echo 'Softsec@2020CN' |passwd --stdin root
@这个命令意思是:修改root用户密码,且输入新密码默认填写前面的内容“Softsec@2020CN”。
这样一来就可以一条命令成功修改任何服务器密码啦,一次性使用的话就弄简单些,直接复制200条这命令,然后批量修改命令中参数放到shell脚本中运行就阔以了。
sshpass 详细参考:
《linux 非交互ssh sshpass简介》https://blog.csdn.net/whatday/article/details/103008743
《linux sshpass 非交互的ssh密码验证 简介》https://blog.csdn.net/whatday/article/details/108923248
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。