在 laravel 服务器中保存加密 public 和私钥的最佳位置是什么
what's the best place to save encryption public and private keys in a laravel server
环境:我在 Amazon EC2 上有一个 Laravel 6.x 应用程序 运行 Ubuntu 18.4 仿生,并且阿帕奇服务器。我有多个预定的 artisan 命令。他们要么生成文件,然后 FTP 将它们传送到不同的服务器,要么从不同的服务器导入文件。这些文件在导出到客户端服务器之前必须使用 PHP GNUPG 加密,并且在从客户端服务器下载它们以进行进一步处理后需要解密,因此,必须存储 public 和私钥在服务器上并且以计划进程 运行 和 "Ubuntu users" 可以访问和使用它们的方式(我假设 "Ubuntu user" 只需要对密钥文件具有读取权限,而没有其他用户需要获得任何许可,因为他们不能也不应该能够访问这些文件,如果我错了,请纠正我)。 我的问题: 我想知道最佳实践,在我的服务器中的哪个文件夹中,以及我应该如何(以什么权限)存储这些密钥文件,以便我可以向他们保证是安全的,并确保所有自动化流程都能够根据需要访问和使用它们。
Laravel
oauth 包 Passport
将它们保存在 storage
文件夹中。这是指向 Laravel
开发人员期望它们所在位置的一个很好的指针,添加像 storage/keys
这样的子文件夹可能也是可行的。
权限方面,使用 chmod 600
权限通常是标准。
或者 Laravel
env 可以保存这些密钥 see。
PASSPORT_PRIVATE_KEY="-----BEGIN RSA PRIVATE KEY-----
<private key here>
-----END RSA PRIVATE KEY-----"
环境:我在 Amazon EC2 上有一个 Laravel 6.x 应用程序 运行 Ubuntu 18.4 仿生,并且阿帕奇服务器。我有多个预定的 artisan 命令。他们要么生成文件,然后 FTP 将它们传送到不同的服务器,要么从不同的服务器导入文件。这些文件在导出到客户端服务器之前必须使用 PHP GNUPG 加密,并且在从客户端服务器下载它们以进行进一步处理后需要解密,因此,必须存储 public 和私钥在服务器上并且以计划进程 运行 和 "Ubuntu users" 可以访问和使用它们的方式(我假设 "Ubuntu user" 只需要对密钥文件具有读取权限,而没有其他用户需要获得任何许可,因为他们不能也不应该能够访问这些文件,如果我错了,请纠正我)。 我的问题: 我想知道最佳实践,在我的服务器中的哪个文件夹中,以及我应该如何(以什么权限)存储这些密钥文件,以便我可以向他们保证是安全的,并确保所有自动化流程都能够根据需要访问和使用它们。
Laravel
oauth 包 Passport
将它们保存在 storage
文件夹中。这是指向 Laravel
开发人员期望它们所在位置的一个很好的指针,添加像 storage/keys
这样的子文件夹可能也是可行的。
权限方面,使用 chmod 600
权限通常是标准。
或者 Laravel
env 可以保存这些密钥 see。
PASSPORT_PRIVATE_KEY="-----BEGIN RSA PRIVATE KEY-----
<private key here>
-----END RSA PRIVATE KEY-----"