Kay*_*Kay 1 passwords shell sshpass
使用 sshpass 的安全性如何?
我读到很多讨论,认为 sshpass 不安全,因为它将密码存储在日志文件和历史文件中。但如果我使用下面的方式,会安全吗?
pass=''
if [ "$pass" == "" ];then
read -s -p "Enter Your Password: " pass
fi
sshpass -p "$pass" ......
Run Code Online (Sandbox Code Playgroud)
你的代码片段毫无意义。如果您要读取用户的密码,不妨运行 ssh。Sshpass 并不是为了取代这些用例。
此外,sshpass 不会在任何地方存储密码。相反,为了以任何有意义的方式使用 sshpass,您需要将密码存储在某处。这比使用公钥身份验证安全性较低。Sshpass 旨在用于无法选择公钥的情况。
一种常见的用例是云服务器提供商,他们为服务器提供一些默认密码,但没有有效的公钥身份验证。为了从脚本启动并运行公钥身份验证,必须首先进行密码身份验证。Sshpass 弥补了这一差距。
一般来说,只有在没有其他替代方案可用时,才应使用 sshpass 作为最后的手段。
编辑添加
简单地回答这个问题:sshpass 非常安全。它不会以任何方式或形式泄露您的密码。然而,它的使用模式要求您以不安全的方式存储密码。
换句话说,sshpass 是安全的,但使用它就意味着你在做不安全的事情。到底有多不安全取决于你。