AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 444400
Accepted
chris
chris
Asked: 2012-11-02 07:20:26 +0800 CST2012-11-02 07:20:26 +0800 CST 2012-11-02 07:20:26 +0800 CST

安装 SSL 证书后尝试启动 Apache 时出错

  • 772

我正在尝试安装 SSL 证书,但出现以下错误:

AH02241: Init: Unable to read server certificate from file /path/my.crt
SSL Library Error: error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
SSL Library Error: error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error (Type=X509)
AH02312: Fatal error initialising mod_ssl, exiting.

这是我遵循的过程:

我生成了我的私钥:

openssl genrsa -out my.key 2048

我创建了 CSR:

openssl req -new -key my.key -out my.csr

我向我们的 IT 部门提供了 CSR,他们返回了一个 crt - 它以

-----BEGIN CERTIFICATE-----

我的 ssl.conf 有(my.example.com 匹配 CSR 生成期间使用的通用名称):

 <VirtualHost my.example.com:443>
   SSLEngine On
   ServerName my.example.com 
   SSLCertificateFile /path/my.crt
   SSLCertificateKeyFile /path/my.key
 </VirtualHost> 

我没有 SSLCertificateChainFile 或 SSLCACertificate 文件集。

私钥以

----BEGIN RSA PRIVATE KEY-----

csr 开始于

-----BEGIN CERTIFICATE REQUEST-----

我已经验证了两者:

openssl rsa -noout -modulus -in my.key
openssl req -noout -modulus -in my.csr 

产生相同的输出。我不知道如何验证 crt - 尝试 x509 和 rsa 都会产生错误。

这个过程应该有效吗?我可以验证 my.crt 是否以某种方式匹配密钥吗?

apache-2.2
  • 3 3 个回答
  • 53096 Views

3 个回答

  • Voted
  1. Best Answer
    chris
    2012-11-02T09:21:19+08:002012-11-02T09:21:19+08:00

    事实证明,我获得的证书是错误的。

    跑步

    openssl x509 -in my.crt -text
    

    应该有效,但由于证书已损坏,它产生了错误:

    unable to load certificate
    140513785948000:error:0D07209B:asn1 encoding routines:ASN1_get_object:too long:asn1_lib.c:142:
    140513785948000:error:0D068066:asn1 encoding routines:ASN1_CHECK_TLEN:bad object header:tasn_dec.c:1306:
    140513785948000:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:381:Type=X509
    140513785948000:error:0906700D:PEM routines:PEM_ASN1_read_bio:ASN1 lib:pem_oth.c:83:
    

    我想我应该注意到,在查看错误证书时,块中的行的长度并不完全相同。

    • 8
  2. bmurtagh
    2012-11-02T07:28:51+08:002012-11-02T07:28:51+08:00

    为了:

    SSLCertificateFile my.crt
    SSLCertificateKeyFile my.key
    

    您应该使用这些文件的完整路径,即:

    SSLCertificateFile /home/vhosts/domain.com/keys/my.crt
    SSLCertificateKeyFile /home/vhosts/domain.com/keys/my.crt
    

    更新正确的路径并重新启动 Apache 以应用更改。如果问题仍然存在,请发回更新的错误/消息。

    -布伦丹

    • 3
  3. le_top
    2016-05-25T13:04:33+08:002016-05-25T13:04:33+08:00

    仅作记录:我有相同类型的错误报告,问题不在证书中,而在配置中。

    我错误地将密钥定义为证书,将证书定义为密钥。结果是同样的错误信息。

    该错误是由于我的参考配置以相反的顺序显示了这些项目。

    即使是@Brendan 的示例也有此错误,因为它引用了两次证书 - 证书和密钥。

    因此,请务必检查您是否在正确的参数中引用了正确的文件。

    • 0

相关问题

  • Apache Django Mod_Wsgi - 自动重新加载应用程序

  • Apache:对多个虚拟主机使用相同的目录指令

  • Apache 上的子域不工作 - 找不到服务器

  • PHP 作为 CGI 还是 Apache 模块?

  • 避免将某些丢失的文件记录到 Apache2 错误日志中

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve