如何使用终端将.p12文件转换为.pem文件?

30

我已经在苹果开发者门户网站上获得了一份开发证书。我正在开发一个iPhone应用程序,想要在该应用程序中集成苹果推送通知。我创建了一个新的App ID,并使用现有证书启用了该应用程序ID中的推送通知。我还创建了一个新的预配文件,使用了新创建的应用程序ID。在这些步骤之前,我从钥匙串访问中创建并下载了.cer文件。完成这些步骤后,我下载了新创建的SSL(Apple Push Notification Service SSL证书)文件并安装到我的Mac Keychain Access中。一旦我安装了此文件,验证它(绿色勾号出现),然后从此ssl文件中获得.p12文件。

我按照苹果文档《RemoteNotificationsPG.pdf》的指示进行操作。在这份文档中,他们提到在保存.p12文件后打开终端应用程序并键入以下命令:

openssl pkcs12 -in Certificates.p12 -out Certificates.pem -nodes

我在我的终端应用程序中使用了这个,但是出现了错误消息,内容是:

Error opening input file Certificates.p12
Certificates.p12: No such file or directory
请问您能否建议或指导我,在这些步骤中我做错了什么或者遗漏了什么?请帮帮我,先谢谢了。
编辑:
我将我的 Certificates.p12 文件存储在桌面上。文件夹路径是 Desktop->1/5/2012_Certificate->2/5/12->Certificates.p12
我在终端使用了“ls”命令,但它没有列出我的 Certificates.p12 文件。
我输入了“cd *路径*” 但是返回“No such file or directory”。
请帮帮我,先谢谢了。

你确定你是在正确的位置调用命令,即在包含 Certificates.p12 文件的文件夹中调用吗?(在执行“openssl…”之前,请在终端中尝试“ls” - 您应该会得到当前文件夹中包含的文件列表)。 - manicaesar
谢谢Manicaesar先生。我已经尝试过这样做:openssl pkcs12 -in Certificates.p12 -out Certificates.pem -nodes。但是系统返回-bash: Is: 命令未找到。我将我的Certificates.p12文件保存在桌面文件夹中,命名为2/5/12。请帮帮我。提前致谢。 - Gopinath
ulu5已经在我的评论中回答了你提出的问题 ;) - manicaesar
2个回答

8

你是否在正确的目录下?使用ls命令,它是否列出Certificates.p12文件?

编辑:在终端中输入:

ls

这将列出当前目录中的所有文件。如果 Certificates.p12 没有列出来,那么您不在终端中正确的目录。
要进入正确的目录,请输入以下命令:
cd *path*

path指的是包含Certificates.p12文件的文件夹。在输入cd命令后,您可以将该文件夹拖入终端窗口中。按回车键后,运行openssl命令即可。


谢谢您的快速回复ulu5。您能否告诉我清楚一些,我不理解目录、命令和列出Certificates.p12文件。请给我解释一下。提前感谢您。 - Gopinath
请确保键入 ls 而不是 is。 - ulu5
是的ulu5。我已经使用了ls命令,它列出了许多文件,但没有显示Certificates.p12。终端中列出了一些文件,如桌面、文稿、下载、Dropbox、库、电影、音乐、图片、公共、站点、软件和AppStoreSubmissionSteps.doc,但没有列出Certificates.p12,我该怎么办?请帮帮我。谢谢。 - Gopinath
你好ulu5。谢谢。我已经在Finder窗口中打开了Certificates.p12并将文件夹拖到终端(/Users/company/Desktop/1:5:2012_Certificate -bash: /Users/company/Desktop/1:5:2012_Certificate: 没有这样的文件或目录),我不明白cd是什么?我应该在我的Mac上保存.p12文件在哪里?如果我打扰了你,请原谅我。请帮帮我。 - Gopinath
谢谢,你给了我很大的帮助。我会给你 10 分的声望。 - Tirth
显示剩余2条评论

6

打开终端并点击 ls 列出当前目录中的项目,

然后,如果您不在包含 .p12 文件的文件夹中,请通过以下方式移动到正确的目录:

cd directory path

例如,

cd Downloads

使用命令列出文件,确保.p12文件存在于目录中。

然后使用以下命令将.p12文件转换为.pem文件。

openssl pkcs12 -in filename.p12 -out filename.pem -nodes

您创建的.pem文件将保存在与.p12文件相同的目录中。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接