我想知道,将服务器变量作为环境变量放入 中是否安全~/.bash_profile
。我在 CentOS 6 共享主机 Web 服务器上。数据库的密码目前在.my.cnf
和中可用.my.mariadb.cnf
。当我将它们作为环境变量放入 中时,会有什么安全隐患吗.bash_profile
?
答案1
就文件系统权限而言,您当然应该确保您的.bash_profile
(以及您的其他带有密码的配置)具有模式 0600。
你应该记住任何您随后从 bash 运行的进程将在其环境中设置这些凭据。这意味着,例如,如果您运行某些程序将环境转储到日志文件进行调试,则该文件会泄露您的密码。根据您的使用情况,当您知道需要它时,使用另一个文件(例如,~/passwords.sh
您可以使用 读取source ~/passwords.sh
)或更短的别名可能会更安全。
一般来说,最好在尽可能少的位置提供纯文本密码。