布莱恩F爱
向一位来自Portlandyobet英雄联盟的谷歌开发专家学习Angular、Web技术和Node.js。
广告 ·ultimatecourses.com
用终极课程学习Angular的正确方法

Mac Yosemite上的自签名SSL证书

作为迁移网站以支持HTTPS的系列的一部分,我需要在Mac OS X上创建一个自签名证书。它很简单。以下是你需要做的:

  • 创建一个主机密钥
  • 创建证书请求
  • 创建SSL证书
  • 对于apache,创建一个nopass主机密钥

首先,我们将创建一个名为ssl在我们的/etc/apache2文件夹中。

美元cd美元/私人/ etc /输入sudomkdirssl美元cdssl

创建主机密钥

美元sudossh - keygen - f local.example.com.key

你应该得到一条信息:生成公钥/私钥对。,然后要求您提供主机密钥的密码。您可以为密码选择任何内容,或将其留空。

创建主机密钥

创建证书请求

使用您创建的主机密钥,创建证书请求文件。注意,我使用local.example.com作为文件命名约定。我建议你使用类似的基于你的网站地址。

美元sudoopenssl req -new -key local.example.com.csr

执行此命令后,系统将提示您输入有关该实体/组织/公司的信息。由于这是一个自签名证书,所以这实际上并不重要。所以,输入任何适合您的——除了公用名称(例如服务器FQDN或您的名称)。FQDN,或完全合格的域名,必须匹配网站的URL。在本例中,我们将输入local.example.com。

创建证书请求

创建SSL证书

在生产环境中不需要这个下一步。但是,在我的本地开发环境中,我将创建一个自签名证书。这个证书没有权限,我将从浏览器得到一个警告,表明这一点。但是,不需要为本地开发购买SSL证书。在生产环境中,您将向证书颁发机构提交证书请求(csr)文件,然后由该机构为您提供SSL证书。

因此,让我们继续创建自签名证书。如果您按照上面的步骤操作,那么输入以下命令来使用csr文件创建SSL证书。

美元sudoopenssl x509 -要求-天365在local.example.com.csr -signkey local.example.com.key out local.example.com.crt

创建SSL证书

正如James在下面评论的那样,在创建自签名证书时,我们还可以跳过csr步骤。詹姆斯还为此提供了一条命令:

美元sudoopenssl请求-x509 -节点-天365-newkey rsa:2048 -keyout local.example.com.key out

系统将提示您输入有关您的组织的信息,以及通用名称或完全限定域名(FQDN)。确保它与您正在设置的虚拟主机(或站点)匹配。

自签名的SSL证书

创建nopass主机密钥

为了配置Apache,我们需要创建一个nopass密钥。如果您没有为Apache使用此SSL证书,则可能不需要执行最后一步。

美元sudoopenssl rsa - local.example.com.key -out

如果成功运行,您应该得到一个简单的消息:写作RSA密钥。所有的设置。我们现在应该在我们的ssl目录中看到几个文件,我们将使用它们来保护我们的网站。

自签名证书文件

布莱恩F爱

嗨,我是布莱恩。我对TypeScript, Angular和Node.js感兴趣。我和我最好的朋友邦妮结婚了,我住在波特兰,我经常滑雪。