2016-11-17 51 views
0

我最近购买了SSL证书,需要安装HAProxy才能使用它。SSL证书编译成pem文件

从HAProxy的指令被以下

在dockercloud/HAProxy的或链接的应用程序服务中指定的证书是PEM文件,包含私钥,然后公共证书(私钥必须放在公共证书和任何额外的授权证书之前,订单事宜)。

This article更详细地解释了顺序应该是下面的......

—–BEGIN RSA PRIVATE KEY—– 

(Your Private Key: your_domain_name.key) — 

–END RSA PRIVATE KEY—– 

—–BEGIN CERTIFICATE—– 

(Your Primary SSL certificate: 

your_domain_name.crt) 

—–END CERTIFICATE—– 

—–BEGIN CERTIFICATE—– 

(Your Intermediate certificate: DigiCertCA.crt) 

—–END CERTIFICATE—– 

—–BEGIN CERTIFICATE—– 

(Your Root 

certificate: TrustedRoot.crt) 

—–END CERTIFICATE—– 

我收到了以下文件购买SSL证书后。

AddTrustExternalCARoot.crt 
COMODORSAAddTrustCA.crt 
COMODORSADomainValidationSecureServerCA.crt 
my_domain.crt 

以及我有一个CSR一代的关键文件。

我跑以下

cat my_key_from_csr >> my_domain.pem 
cat my_domain.crt >> my_domain.pem 
cat COMODORSAAddTrustCA.crt >> my_domain.pem 
cat AddTrustExternalCARoot.crt >> my_domain.pem 

我复制的my_domain.pem内容到HAProxy的SSL_CERT变量,但它不工作。难道我做错了什么?

+1

请比“不起作用”更具体。另外,'COMODORSADomainValidationSecureServerCA.crt'怎么样?看起来像(只是从名字),这一个会在'COMODORSAAddTrustCA.crt'之前。 –

回答

0

你并不需要包括CSR文件作为PEM的一部分。以下工作100%,我也用它haproxy。

cat your_domain_private_key.key >> your_domain.pem 
cat your_domain_issued_certificate.crt >> your_domain.pem 
cat COMODORSADomainValidationSecureServerCA.crt >> your_domain.pem 
cat COMODORSAAddTrustCA.crt >> your_domain.pem 

这是没有必要的根CA(AddTrustExternalCARoot.crt)添加到PEM文件,因为这是预装已经对所有的计算机。