关于加密:用于在php web应用程序中存储纯文本密码的unix密码服务?

unix password service for storing plain-text password in php web application?

是否有一个Unix服务,或者至少有一个我可以拼凑在一起的服务,用于存储PHP Web应用程序的纯文本密码?

在撰写这个问题时,我发现C提供了一种以加密格式存储密码的服务。

我必须存储纯文本密码,因为应用程序连接到各种FTP服务器。并非所有这些服务器都配置为使用公钥。我要保护的两个向量是数据库转储和从文件系统上的文件获取纯文本密码的人。

我想知道服务器操作系统本身是否可以为运行应用程序的用户存储加密字符串——apachewww-data或其他人。我知道这样的系统仍然容易受到访问这些帐户或上载恶意PHP脚本的人的攻击,但我认为,在我们当前的实践中,这些风险是可以接受的。我只是希望不要将明文密码存储在数据库或文件系统中。


根据您的问题,我假设您使用的是Apache。ApacheConfig文件应该只能由根目录读取,所以这里存储的任何信息都应该是非常安全的。如果有人获得了根访问权限,他们可能无论如何都能提取密码。

您可以使用apaches setenv设置环境变量:

1
SetEnv mySQL_PASS somePassword

这对于使用$u server superglobal的PHP是可用的。

1
echo $_SERVER['mySQL_PASS'];