首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用bash输入ssh密码?

如何使用bash输入ssh密码?
EN

Stack Overflow用户
提问于 2013-06-05 05:42:57
回答 2查看 409.1K关注 0票数 88

每天我都要通过ssh连接到服务器。我经历了这个例程:

代码语言:javascript
复制
IC001:Desktop user$ ssh user@my.server.com
user@my.server.com's password: 

Last login: Tue Jun  4 10:09:01 2013 from 0.0.0.0
$

我想自动化这个过程,并创建一个bash脚本来为我做这件事。我不关心安全性,可以在脚本中公开存储我的密码。当脚本执行时,我也可以让它在屏幕上公开输入。所以我创建了这个:

代码语言:javascript
复制
#!/bin/bash          
ssh user@my.server.com
echo mypassword

但它不起作用。我也尝试过send而不是echo,但它也不起作用。如果有可能的话,请告诉我。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-06-05 06:38:23

如果您不能使用密钥,请仔细检查。

否则使用expect:

代码语言:javascript
复制
#!/usr/bin/expect -f
spawn ssh user@my.server.com
expect "assword:"
send "mypassword\r"
interact
票数 185
EN

Stack Overflow用户

发布于 2013-06-05 05:52:09

创建一个新的密钥对:(使用默认值)

代码语言:javascript
复制
ssh-keygen

将公钥复制到服务器:(最后一次设置密码)

代码语言:javascript
复制
ssh-copy-id user@my.server.com

从现在开始,服务器应该会识别你的密钥,不再要求你提供密码:

代码语言:javascript
复制
ssh user@my.server.com
票数 94
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16928004

复制
相关文章

相似问题

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