我正在尝试将(PHP)软件模块迁移到新服务器(从CentOS 6.9到Ubuntu 16.04)。在过程的特定部分,代码尝试启动以下命令:
gpg --no-tty --sign --encrypt --armor --passphrase=whatever --local-user A188E1E4! --recipient A188E1E4
因此,我正在尝试从工作服务器中导出私钥/公钥对。
我被困在这一点上,我试图用这个非常类似的问题来管理它,但是我不知道密钥的名称和路径。
我尝试运行,gpg --list-keys
但是:
gpg:目录“ /home/my-username/.gnupg”已创建
gpg:创建了新的配置文件/home/my-username/.gnupg/gpg.conf'
gpg:警告:“ / home / my-username / .gnupg / gpg.conf”中的选项在此运行期间尚未激活
gpg:密钥环'/home/my-usernameo/.gnupg/pubring.gpg'已创建
gpg:/home/my-username/.gnupg/trustdb.gpg:创建的trustdb
我不知道该代码用于启动命令的用户。也许我需要一种列出所有密钥的方法,不仅是当前用户,还可以列出需要导出的密钥。
gpg
会尝试从中加载密钥,~/.gnupg
并且不会列出“系统中的所有密钥”,因为每个用户都有一个单独的密钥环。你不能做这个。
在您的情况下,gpg
应用程序将尝试列出中的键www-data
,php
或者拥有该php
进程的用户名是什么。
您可以通过操作GNUPGHOME
或HOME
环境变量或将设置为--homedir
来更改键的位置gpg
。此选项并非在所有gpg
版本中都可用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句