我们有一个 Rails 应用程序需要通过 ssh 连接到远程服务器(unix)并执行一些命令行操作。我对安全性不太了解,所以寻求建议。目前,控制器接收来自视图的提交,在 params 散列中带有密码(未散列,或任何东西)。然后我们使用 Net::SSH gem ssh 到远程服务器并做一些事情。这似乎是各种不安全的。我们的想法是:
- 通过 SSH 设置公钥身份验证,因此不需要 pw(我们的用户数量很少,所以设置这个没有问题)
或者
- 在视图中散列密码,在控制器中解码,然后调用 ssh 命令
或者
- 在视图中对 pw 进行散列和加盐?(真的不知道这是如何工作的,只是一个想法)
任何文章或解释的链接,非常感谢。谢谢!