通过 SSH 连接到主机并使用 shell 脚本输入密码

通过 SSH 连接到主机并使用 shell 脚本输入密码

我想创建一个像这样的文件:sshTOhost:

#!bin/bash
ssh -D 1500 user@host
#enter password (I don't know how)

答案1

您可以使用sshpassssh在 shell 脚本中使用;然后,该脚本可以ssh使用来自动提供密码sshpass。链接的文章解释了如何执行此操作,以及为什么您绝对不应该这样做。

相反,你应该使用公钥认证。如果您需要完全自动化而不需要任何用户输入,您可以设置一个没有密码的私钥;然后,您的脚本可以使用此键连接到远程主机,而无需任何用户输入。

答案2

你还有另一种方法:

expect 是您任务的命令行,首先安装它,然后写入您的script

#!bin/bash
ssh -D 1500 user@host
expect "Echo of after ssh -D 1500 user@host"
send yourpassword\r
wait

当然,这是危险的,因为每个人都可以读取您的密码。

答案3

我用预计在脚本中自动在新服务器上安装软件。它有一点学习曲线,但一旦设置好,它的效果就非常好。

相关内容