SSL /TLS 在macOS 10.14 Mojave上安装

本操作方法将演示如何安装SSL /TLS macOS 10.14 Mojave上的证书。 提供了两种方案:

根据您的情况,您可能需要做这两项中的一项或两项; 例如,如果您正在设置本地开发环境,并且希望该证书可用于Apache和客户端软件(例如Web浏览器),则可以同时使用。 在这两种情况下,我们都将假设您生成了证书签名请求(CSR),如我们的 如何做。 在这种情况下,您的私钥将已经安装在“钥匙串访问”中。 我们还将假设验证已完成,并且您的证书可以下载了。 有关订购和检索证书的信息,请参阅我们的方法, 订购和检索SSL /TLS 证书.

请注意: macOS Server的当前版本(5.7.1和更高版本) 不再支持 在macOS中管理内置的Apache Web服务器。 因此,此操作方法要求访问命令行(通过Terminal.app)并直接编辑Apache配置文件。

第一步骤

  1. 使用以下命令从您的用户帐户下载证书捆绑包 阿帕奇 下载链接。

    Apache下载链接

  2. 解压缩文件。 它应包含您的证书(文件名将基于您的通用名称 CSR 结束 .crt)和CA捆绑包(ca-bundle-client.crt).

    证书和中间包

在钥匙串访问中安装证书

  1. 可选 钥匙串Access.app, 位于 / Applications / Utilities中.

    钥匙串访问

  2. 选择安装了密钥对的钥匙串。 在这种情况下 系统 钥匙扣。

    系统钥匙扣

  3. 导航 文件>导入项目…

    进口物品

  4. 导航到您的新证书,选择它,然后单击 可选.

    公开证书

  5. 输入您的密码并单击 修改钥匙串.

    修改钥匙串

  6. 重复上述步骤3-5 ca-bundle-client.crt 安装中间证书链。
  7. 您可以通过选择来确认证书已安装 证书 从左侧边栏菜单中。

    确认安装

安装Apache证书

  1. 如果你 产生了您的 CSR 在钥匙串访问中,您将需要将私钥导出为文件以供Apache使用。 打开 钥匙串Access.app, 位于 / Applications / Utilities中。 (如果你 产生了 CSR 使用OpenSSL 或使用SSL.com CSR 经理 您可以跳到下面的第9步。)

    钥匙串访问

  2. 使用左侧边栏菜单来缩小选择范围,找到并选择您要导出的私钥。 在这种情况下,我们将导出用于 www.lunchinhouston.com, 位于 System 钥匙扣。

    找到私钥

  3.  文件>导出项目… 从菜单。

    出口项目

  4. 确保选择的文件格式为 个人信息交换(.p12) 并将文件保存到可以找到它的地方。

    保存PFX

  5. 输入密码以解锁钥匙串(如果出现提示),然后为.p12文件创建一个密码,然后单击 OK.

    创建PFX密码

  6. 可选 Terminal.app, 位于 /Applications/Utilities/ 文件夹,然后导航到第12步中存储.p5文件的文件夹。

    终端应用程序

  7. 使用 openssl 从.p12文件中提取私钥。 (请注意: 将此处显示的文件名替换为.p12文件的名称以及希望用作密钥的文件名)。 首先将提示您输入在步骤5中创建的密码,然后提示您创建并验证密码以保护私钥。

    $ openssl pkcs12 -nocerts -in Certificates.p12 -out privkey.key
  8. 接下来,您将需要解密私钥。 输入以下命令,根据需要替换输入和输出文件的名称(使用如下所示的相同名称将覆盖加密文件)。 系统将提示您输入在步骤7中创建的密码。

    $ openssl rsa -in privkey.key -out privkey.key
  9. 将私钥,证书和中间包文件放在安全目录中,Apache可以在其中读取它们。 对于此方法,我们将使用 /private/etc/apache2/。 根据选择的位置,您可能需要使用 sudo 移动文件。
  10. 打开Apache的主要配置文件, httpd.conf,在文本编辑器中。 在Mojave标准Apache安装中,此文件位于 /private/etc/apache2/ 目录。 打开文件进行编辑 nano,执行以下命令:

    $ sudo nano /private/etc/apache2/httpd.conf
    请注意: 因为你在用 sudo 要暂时假设有足够的特权来编辑此文件,将提示您输入密码,然后继续。
  11. 在中找到这些行 httpd.conf 并通过删除它们来取消注释 # 每行开头的字符:

    LoadModule socache_shmcb_module libexec / apache2 / mod_socache_shmcb.so ... LoadModule ssl_module libexec / apache2 / mod_ssl.so ...包括/private/etc/apache2/extra/httpd-vhosts.conf ...包括/ private / etc / apache2 / extra / httpd-ssl.conf
    
    请注意: 如果你正在使用 nano 编辑 httpd.conf,您可以使用来搜索文本字符串 Ctrl-W
  12. 保存 httpd.conf 并退出文本编辑器( Ctrl-O,其次是 Ctrl-X in nano ).
  13. 接下来打开 httpd-ssl.conf 进行编辑:

    $ sudo nano /private/etc/apache2/extra/httpd-ssl.conf
  14. 查找以下行,并确保Apache正在侦听端口 443。 如果端口设置为  8443 或其他一些值,将其更改为 443.

    ##当我们还提供SSL时,我们必须侦听#标准HTTP端口(请参见上文)和HTTPS端口#侦听443
  15. 搜索以字符串开头的行 <VirtualHost _default_: (端口号可能会有所不同)并注释掉或删除 所有 和之间的界线 </virtualhost>.
  16. 保存 httpd-ssl.conf 并退出文本编辑器。
  17. 接下来打开 httpd-vhosts.conf 进行编辑:

    $ sudo nano /private/etc/apache2/extra/httpd-vhosts.conf
  18. 为您要保护的站点创建一个VirtualHost条目(使用您的网站和服务器的实际值,而不是此处显示的占位符),然后保存文件并退出文本编辑器。

    DocumentRoot“/PATH/TO/WEBSITE”SSLCertificateFile“https://ee443cc2f1.rocketcdn.me/private/etc/apache8/server.crt”上的 ServerName SERVERNAME SSLEngine“SSLCertificateKeyFile”https://ee2cc2f1.rocketcdn.me/private/etc /apache8/server.key" SSLCertificateChainFile "https://ee2cc2f1.rocketcdn.me/private/etc/apache8/ca-bundle-client.crt"
  19. 使用以下命令检查您的Apache配置:

    $ sudo apachectl 配置测试
  20. 如果一切正常,请重新启动Apache:

    $ sudo apachectl重新启动
  21. 如果一切正常,就完成了! 您应该能够在Web浏览器中导航到HTTPS网站。

    在浏览器中查看网站

感谢您选择SSL.com! 如有任何疑问,请通过电子邮件与我们联系 Support@SSL.com,致电 1-877-SSL-SECURE,或只需单击此页面右下方的聊天链接。 您还可以在我们的网站上找到许多常见支持问题的答案 知识库.

订阅 SSL.com 的时事通讯

不要错过SSL.com上的新文章和更新

保持信息灵通和安全

SSL.com 是网络安全领域的全球领导者, PKI 和数字证书。注册以接收最新的行业新闻、提示和产品公告 SSL.com.

我们希望收到您的反馈

参加我们的调查,让我们知道您对最近购买的想法。