将服务器密码放在环境variables中

Iam想知道,如果将服务器variables作为环境variables放在~/.bash_profile是安全的。 Iam在CentOS 6共享主机networking服务器上。 数据库的密码目前在.my.cnf.my.mariadb.cnf可用。 当我将它们作为环境variables放在.bash_profile时,是否会有安全缺陷?

至于文件系统的权限,你应该确保你的.bash_profile (和你的其他configuration与密码)模式0600。

您应该记住,您之后从bash运行的任何进程都会将这些凭据设置在其环境中。 这意味着,例如,如果您运行某些将环境转储到日志文件进行debugging的文件,那么该文件将显示您的密码。 根据你的使用情况,有另外一个文件比较安全,比如~/passwords.sh ,你可以用source ~/passwords.sh来读取,或者当你知道你需要的时候用别名。

作为一般规则,尽可能在尽可能less的地方提供纯文本密码是很好的做法。