sshpass: 用于非交互的 ssh 密码验证
来源:互联网 发布:excel2013数据分列 编辑:程序博客网 时间:2024/05/18 04:56
原贴:http://linuxtoy.org/archives/sshpass.html
sshpass: 用于非交互的 ssh 密码验证
<script type="text/javascript"><!--google_ad_client = "pub-9432205671574187";//LT, 300x250google_ad_slot = "9869120281";google_ad_width = 300;google_ad_height = 250;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script><script src="http://googleads.g.doubleclick.net/pagead/test_domain.js"></script><script>window.google_render_ad();</script><iframe name="google_ads_frame" src="http://googleads.g.doubleclick.net/pagead/ads?client=ca-pub-9432205671574187&dt=1231860579244&lmt=1231838298&output=html&slotname=9869120281&correlator=1231860579244&url=http%3A%2F%2Flinuxtoy.org%2Farchives%2Fsshpass.html&ea=0&ref=http%3A%2F%2Flinuxtoy.org%2F&frm=0&ga_vid=1487852779.1228736422&ga_sid=1231860458&ga_hid=1564599016&ga_fc=true&flash=0&u_h=800&u_w=1280&u_ah=800&u_aw=1280&u_cd=24&u_tz=480&u_his=2&u_nplug=1&u_nmime=1&dtd=17" marginwidth="0" marginheight="0" vspace="0" hspace="0" allowtransparency="true" frameborder="0" height="250" scrolling="no" width="300"></iframe>
[撰文/Zhang Huangbin (michaelbibby AT gmail.com)]
OpenSSH 自带的 ssh 客户端程序(也就是 ’ssh’ 命令)默认不允许你以非交互的方式传递密码,如:
ssh www.iredmail.org <<EOF
ssh_password
ls /var/
EOF
Shell 里这样的输入重定向使用得非常普遍,而且通常都工作得很好。但是 ssh 不允许这样的方式来传递密码,所以需要远程连上服务器后进行的批处理就无法进行。
sshpass 的出现,解决了这一问题。它允许你用 -p 参数指定明文密码,然后直接登录远程服务器。例如:
# sshpass -p 'ssh_password' ssh www.iredmail.org
用 ‘-p’ 指定了密码后,还需要在后面跟上标准的 ssh 连接命令。
用法就是这么简单。
注意:
我之前使用的 sshpass 是 1.0,在第一次连接服务器的时候,无法自动接受服务器的 Key 验证,也不会出现提示信息,所以第一次连接服务器请使用标准的 ssh 命令行客户端工具,接受了服务器的 key 之后再用 sshpass。
sshpass
署名 • 注明出处 • 非商业性使用
10 Comments
- sshpass: 用于非交互的 ssh 密码验证
- sshpass: 用于非交互的 ssh 密码验证
- sshpass: 用于非交互的ssh 密码验证
- sshpass:用于非交互的ssh密码验证
- sshpass: 用于非交互的ssh 密码验证
- 使用 sshpass 用于非交互的 ssh 密码验证登录
- Linux命令之非交互SSH密码验证-sshpass
- Shell命令sshpass非交互SSH密码验证
- sshpass-Linux命令之非交互SSH密码验证
- Linux命令之非交互SSH密码验证-sshpass
- Linux命令之非交互SSH密码验证-sshpass
- Shell命令sshpass非交互SSH密码验证
- Linux命令之非交互SSH密码验证-sshpass
- Ubuntu 14.04 LTS ssh登录服务器免输密码(sshpass 非交互密码验证)
- Linux基于sshpass小工具,用于非交互的ssh操作
- Linux基于sshpass小工具,用于非交互的ssh操作
- 利用sshpass解决ssh与scp交互密码验证,tee -a 写日志与终端
- ssh自动输入密码登录服务器/ssh免输入密码登录/非交互ssh 密码验证
- FireFox和IE浏览器对于DIV+CSS设计的区别及对策
- DOCUME~1是什么路径?
- smtp 应答
- 数学之美 系列十 有限状态机和地址识别
- 转:Hibernate-hql查询必知
- sshpass: 用于非交互的 ssh 密码验证
- 编写高性能 Web 应用程序的 10 个技巧 转自微软资料
- 数学之美 系列十一 - Google 阿卡 47 的制造者阿米特.辛格博士
- 企业在寒冬中的“专业生化存”
- 数学之美 系列 十二 - 余弦定理和新闻的分类
- 数学之美 系列十三 信息指纹及其应用
- DIV+CSS布局网页必须考虑的浏览器兼容的技巧
- 数学之美 十四 谈谈数学模型的重要性
- 想成为嵌入式程序员应知道的0x10个基本问题——转贴 经典!
用ssh就不要用密码验证,openbsd的老大推荐
为什么不直接用publickey验证?
现实总不是理想的,哈哈,我刚接手管理的一些机器就是用ldap用户认证,不太方便放证书。
所以我也是刚用上这个软件,挺不错的。
另外有个软件也不错,叫
sshproxy
有兴趣的同学自己去看
现在sshpass 支持 -f 选项,从文本文件读取密码,不用出现在命令行。
晕,再补充一下,把
StrictHostKeyChecking no
加到/etc/ssh/ssh_config
可以让ssh客户端自动接受新主机的host_key,不用每次都自己输入yes
我曾经也给ssh写过一个patch,加上password参数,提交上去,人家说不安全,想想也是,于是就用自己的sssh了.
为什么不直接用expect?
为啥不用key登陆?
感觉这东西的功能用expect就能够很简单的实现了 .
就是,为什么不用expect,我多台服务器需要批量进行命令操作都是用expect +ssh做的