
参考自:https://www.cnblogs.com/aaron-agu/p/10560659.html
创建SSL证书
TLS / SSL通过使用公共证书和私钥的组合来工作。SSL密钥在服务器上保密。它用于加密发送给客户端的内容。SSL证书与请求内容的任何人公开共享。它可用于解密由关联的SSL密钥签名的内容。
我们可以在一个命令中使用OpenSSL创建自签名密钥和证书对:
openssl req -x509 -nodes -days 36500 -newkey rsa:2048 -keyout self_private.key -out self_pub.crt
您将被问到一系列问题。在我们讨论之前,让我们看看我们发出的命令中发生了什么:
openssl:这是用于创建和管理OpenSSL证书,密钥和其他文件的基本命令行工具。
req:此子命令指定我们要使用X.509证书签名请求(CSR)管理。“X.509”是SSL和TLS为其密钥和证书管理所遵循的公钥基础结构标准。我们想要创建一个新的X.509证书,所以我们使用这个子命令。
-x509:通过告诉实用程序我们要创建自签名证书而不是生成证书签名请求(通常会发生)来进一步修改上一个子命令。
-nodes:这告诉OpenSSL跳过用密码保护我们的证书的选项。当服务器启动时,我们需要Nginx能够在没有用户干预的情况下读取文件。密码短语会阻止这种情况发生,因为我们必须在每次重启后输入密码。
-days 36500:此选项设置证书被视为有效的时间长度。我在这里设置了一百年。
-newkey rsa:2048:这指定我们要同时生成新证书和新密钥。我们没有创建在上一步中签署证书所需的密钥,因此我们需要将其与证书一起创建。该
rsa:2048
部分告诉它制作一个2048位长的RSA密钥。-keyout:这一行告诉OpenSSL在哪里放置我们正在创建的生成的私钥文件。
-out:这告诉OpenSSL在哪里放置我们正在创建的证书。
如上所述,这些选项将创建密钥文件和证书。我们将询问有关我们服务器的一些问题,以便将信息正确地嵌入到证书中。
适当填写提示。 最重要的一行是Common Name (e.g. server FQDN or YOUR name)那一行。您需要输入与服务器关联的域名,或者是您服务器的公共IP地址。
整个提示将如下所示:
OutputCountry Name (2 letter code) [AU]:US
State or Province Name (full name) [Some-State]:New York
Locality Name (eg, city) []:New York City
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Bouncy Castles, Inc.
Organizational Unit Name (eg, section) []:Ministry of Water Slides
Common Name (e.g. server FQDN or YOUR name) []: domain or server_IP_address
Email Address []:admin@your_domain.com
创建的两个文件都将放在当前目录下。
使用:
如果你用的是宝塔面板的话,直接把self_private.key内容拷到“密钥(KEY)”里面,self_pub.crt内容拷到“证书(PEM格式)”里面即可。



本文地址:https://www.xxnet.eu.org/?post=277
版权声明:若无注明,本文皆为“点滴记忆---观雨亭”原创,转载请保留文章出处。

