我们有几个用于备份/数据库转储的 shell 脚本,其中包含用户名/密码信息。除了沙门氏菌病似乎存在一些问题。
答案1
加密本身永远不会对此有所帮助,因为每个运行它的用户也需要能够解密它。
如果您需要非管理员用户运行备份脚本,您应该使用类似 sudo 的方法来授予他们运行该脚本的权限,但不授予他们读取密码的权限(即确保权限设置为用户无法读取)。
答案2
我不知道任何加密解决方案。
但是您可以考虑另一种方法,将您的登录信息填写到具有适当访问权限的文件中。(MySQL = .my.cnf
,PostgresSQL =.pgpass
等)。
这样,您就可以避免加密您的 shell 脚本,因为对我来说这听起来并不安全。
答案3
普通用户是否需要能够运行这些脚本?假设您可以有一个备用用户并将脚本的权限设置为700
。如果您确实需要让其他人运行该脚本,则可以使用 sudo。您几乎没有机会向 root 用户隐藏密码。
答案4
找到了一个很好的解决方案通用石油气