在今天的网络世界中,安全是每一个网站的关键问题。随着网站规模不断扩大,越来越多的网站使用SSL证书来保证数据传输的安全性。其中,OpenSSL是一款开源的加密工具包,使用SSL/TLS加密协议,提供了生成和管理SSL证书的功能。下面将详细介绍如何使用OpenSSL制作SSL证书。
1. 获取OpenSSL工具包
在制作SSL证书之前,需要先在本地计算机上安装OpenSSL工具包。可以在www.openssl.org下载OpenSSL的版本,并根据系统、架构安装相应的软件。
2. 生成根证书
根证书是用来签署SSL服务器及客户端证书的证书。需要使用root.key和root.crt两个文件生成根证书,这两个文件可以通过以下命令生成:
openssl genrsa -out root.key 2048
openssl req -new -key root.key -out root.csr
openssl x509 -req -days 3650 -in root.csr -signkey root.key -out root.crt
3. 生成SSL服务器证书
SSL服务器证书是用来保护网站和其他网络服务器的数据传输安全性。需要使用服务器的私钥和CSR文件,通过以下命令生成SSL服务器证书:
openssl genrsa -out server.key 2048
openssl req -new -key server.key -out server.csr
openssl x509 -req -in server.csr -CA root.crt -CAkey root.key -CAcreateserial -out server.crt -days 3650
4. 安装SSL服务器证书
将生成的server.crt和server.key文件上传到服务器上,在服务器Apache或Nginx的配置文件中指定证书和私钥的路径即可完成SSL服务器证书的安装。
5. 验证SSL证书
使用以下命令来验证SSL服务器证书是否安装成功:
openssl s_client -connect www.example.com:443
如果显示了正确的证书信息,则说明SSL证书已经成功安装。
使用OpenSSL制作SSL证书不仅可以保护数据传输的安全性,而且还可以避免使用商业证书所带来的费用和限制。本文详细介绍了如何使用OpenSSL制作SSL证书,希望对广大网站管理者及开发人员有所帮助。
互亿无线致力于提供全面的SSL证书解决方案,保障您的网站安全与信誉。我们提供多种类型的SSL证书,覆盖DV(域名验证)、OV(组织验证)和EV(扩展验证)证书,满足您的多样安全需求。我们支持各种证书类型,包括单域名、多域名和通配符证书。以便适应您的网站架构需求。我们与全球的证书品牌,例如Globalsign、DigiCert、Entrust、TRUST Asia、Secure Site等保持紧密的合作关系,确保您获得优质的SSL证书。
![]() |
提供一站式SSL证书申请 |
![]() |
享受SSL证书快速签发 |
![]() |
为您提供高性价比的SSL证书价格方案 |
![]() |
提供全面的SSL证书服务 |
SSL证书格式主要是公钥证书格式标准X.PEM和DER定义在509中、PKCS中定义PKCS#7和PKCS#12、Tomcat专用JKS。SSL证书的常见格式及转化方法如下:
常见的SSL证书格式
DER:DistinguishedencodingRules缩写,二进制编码的证书格式,相当于PEM格式的二进制版本,证书后缀有:.DER.CER.CRT,Java平台主要用于Java平台
PEM:PrivacyEnhancedMail的缩写,Base64编码的证书格式,是将Base64二进制版本编码后,以“—–BEGIN开头,“……”—–END结尾。证书的后缀有:.PEM.CER.CRT,主要用于Apache和Nginx。
PKCS#7:PKCS(Public-KeyCryptographyStandards)PKCS标准中的PKCS#7(CryptographicMessageSyntaxStandard)。它不包含私钥,单独存储证书链和用户证书。证书后缀如下:.P7B.P7C.SPC,主要用于Tomcat和Windowsserver。
PKCS#12:PKCS(Public-KeyCryptographyStandards)PKCS#12标准PKCS#(PersonalInformationExchangeSyntaxStandard)。它包含私钥、证书链、用户证书和密码。证书后缀有:.P12.PFX,主要用于Windowsserver。
JKS:JavaKeyStore缩写,包含私钥、证书链、用户证书,并设置密码。证书后缀为.jks。主要用于Tomcat。
SSL证书格式转换方法
Webtrust认证的CA机构颁发的证书通常只提供PEM格式或PKCS#7格式。如果需要其他证书格式,可以使用以下常用方法进行格式转换。
使用OpenSSL、Keytool转化
1.pem转换pfx
openssl pkcs12 -export -in 'test.pem' -inkey 'test.key' -out 'test.p12' -passout pass:123456
2.pem转换jks
openssl pkcs12 -export -in 'test.pem' -inkey 'test.key' -out 'test.p12' -passout pass:123456
keytool -importkeystore -srckeystore 'test.p12' -srcstoretype PKCS12 -destkeystore 'test.jks' -srcstorepass 123456 -deststorepass 123456
3.pfx转换pem
openssl pkcs12 -in test.p12 -passin pass:123456 -out test3.pem -nodes
4.pfx转换jks
keytool -importkeystore -srckeystore 'test.p12' -srcstoretype PKCS12 -destkeystore 'test.jks' -srcstorepass 123456 -deststorepass 123456
5.jks转换pem
keytool -importkeystore -srckeystore 'test.jks' -srcstoretype jks -destkeystore 'test.p12' -deststoretype PKCS12 -srcstorepass 123456 -deststorepass 123456
openssl pkcs12 -in test.p12 -passin pass:123456 -out test3.pem -nodes
6.jks转化pfx
keytool -importkeystore -srckeystore 'test.jks' -srcstoretype jks -destkeystore 'test.p12' -deststoretype PKCS12 -srcstorepass 123456 -deststorepass 123456SSL
根据行业CA规定,数字证书的有效期最长为1年,无论购买多长时间,SSL证书都必须每年更新,这是不可避免的事实。SSL证书需要尽快申请SSL证书,并更新服务器过期的SSL证书。
1、站点证书不是由信任证书颁发机构颁发的。
“SSL证书错误”的另一种情况是,证书不在浏览器制造商信任的列表中。您可以通过手动添加证书来安装浏览器“信任列表”。信任根证书需要嵌入流行的浏览器,例如IE。、Firefox、Chrome、如果浏览器没有遇到Apple等签名证书中的一个,说明它不受信任,访问者会看到网页证书错误的消息。推荐使用权威CA机构颁发的SSL证书。
2、证书名称“不匹配”
当服务器提供的SSL证书上列出的域名与浏览器连接的域名不匹配时,就会出现“证书名称不匹配”,导致网页证书错误。
为了开始HTTPS连接,证书上的域名必须与浏览器地址栏中的域名完全匹配。建议在安装和部署SSL证书时正确填写域名。
此外,浏览网页时,检查输入地址是否正确。
3、SSL证书已过期或尚未生效。
当出现“SSL证书错误”时,首先要确认证书是否有效,或者计算机系统的日期是否错误。你可以通过查看这个证书的有效起止日期,以确定证书是否在有效期内。如果是,你需要检查计算机日期是否正确。
如果没有有效期,需要尽快联系证书颁发CA,以便续费。
4、服务器启用SNI所致。
这种情况更多的是设备之间的内部问题,但是有时候客户端和服务器名称指示服务器之间的通信可能是SSL/TLS协会讨论错误的原因。你需要做的第一件事就是确定有问题的服务器的主机名称和端口号,并确保它已经启用了SNI并正在传达它所有需要的内容。
以上是SSL证书错误最常见的四种类型。如果没有解决或者其他原因,可以联系安信SSL证书在线客服,为您提供一对一技术指导服务。
150,000家
企业客户
21年
行业经验
2V1
2对1客户支持