三三世界-百宝箱

文章 分类 标签
130 9 247

公告

暂无站点公告

Centos nginx下安装ssl教程(sectigo comodo 的ssl证书为例)

三三 2023-12-20 424 0条评论 服务器配置环境搭建 centosNginxLinux安装ssl证书Comodosectigo

首页 / 正文

安装ssl证书,主要分几步。

第一步,购买证书
第二步,在centos中的openssl里申请csr
第三步,到购买证书的地方,使用csr申请证书,并验证,取得证书文件。
第四步,下载得到的证书文件,整合,做好相对应文件。
第五步,第五步,配置nginx,重启nginx,证书生效。
具体情况详解:

第一步,购买证书

本次教程实践使用的证书是sectigo的Comodo SSL证书,这种证书特点就是单域名的证书价格最便宜,一般在100元以下可以买到。注意,证书没必要买多年,因为最长使用时间是398天,超过时间后还需要重新发行并安装,所以可以按年购买即可。

购买证书后,要申请发行证书,前提条件是需要一个csr文件。这个过程,我们进入centos服务器。

第二步,在centos中的openssl里申请csr

生成 CSR(证书签名请求)是为了申请 SSL 证书,以下是在 CentOS 服务器上生成 CSR 的一般步骤:
1.登录到服务器: 使用 SSH 或其他远程登录方式登录到你的 CentOS 服务器。
2.安装 OpenSSL(如果没安装 输入命令openssl version可以查看有没有安装ssl证书,如果安装了会有显示):如果没安装, 在终端中执行以下命令安装 OpenSSL:

sudo yum install openssl
或者
yum install openssl

3.创建私钥: 使用 OpenSSL 创建一个私钥文件。在终端中执行以下命令:

openssl genrsa -out yourdomain.key 2048

将 "yourdomain.key" 替换为你的域名。这时候将生成一个 2048 位的 RSA 私钥文件。

4.生成 CSR: 使用刚刚生成的私钥文件创建 CSR。执行以下命令:

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

5.在执行此命令时,会要求你输入一些信息,如国家、省份、城市、组织名称、组织单位名称、域名等。请确保提供准确的信息,特别是域名这个字段,一定要填写准确的域名,如果是xxx.com就直接填写,如果是123.xxx.com 那就填写全的域名,别弄错或者弄少了。 这个是后面申请证书特别重要的文件,域名不对无法继续。
另外就是还需要输入一个密码,也记录一下以防万一。

6.完成后,将生成一个 CSR 文件(以 .csr 扩展名结尾)。

7.备份私钥和 CSR: 请确保对生成的私钥文件(yourdomain.key)和 CSR 文件(yourdomain.csr)进行备份。这些文件将用于申请 SSL 证书。
PS:csr文件仅用户申请证书第一步,过后就可以删掉了。key文件在后面的nginx配置阶段还需要。

第三步,到购买证书的地方,使用csr申请证书,并验证,取得证书文件。

现在,你已经生成了一个 CSR 文件,可以将其提供给 SSL 证书颁发机构(CA)以申请 SSL 证书。一般这个过程会检查你生成的csr文件是否正确,如果不正确还需要重新上面步骤的操作。一般错误都在域名那块。
如果正确,会要求你验证域名或者域名的管理员邮箱,这个自己操作即可。

验证后,等待10分钟左右,证书机构会给你发邮件,并附上证书文件,一般是四个文件。

第四步,下载得到的证书文件,整合后,配置到服务器的nginx特定网站的conf中。

这一步比较麻烦,如果错了证书就无法生效。注意严格按照下面的步骤操作。

一般证书到手有四个文件。
1根证书文件Root CA Certificate - AAACertificateServices.crt
2中间证书文件Intermediate CA Certificate - USERTrustRSAAAACA.crt
3中间证书文件Intermediate CA Certificate - SectigoRSADomainValidationSecureServerCA.crt
4域名证书文件Your PositiveSSL Certificate - xxx_com.crt

请注意,
按照 域名证书 + 中间证书 + 中间证书 + 根证书 的顺序将刚才得到的四个文件按顺序放到一个文件中 后缀名crt,比如all_xxx_com.crt
也就是上述文件中的4-2-3-1的顺序整合成一个文件。

从上到下以此复制粘贴即可。

注意:apache不要加入域名证书xxx_com.crt,单独一个文件即可,只有nginx才需要全部整合在一起

整合到一起以后,上面在生成csr时候使用的key文件就有用了。

这里说明一下,nginx需要两个文件,之前生成的youdomain.key和这里整合到一起的all_xxx_com.crt,这两个文件稍后需要配置到nginx指定域名的conf文件中。

如果你使用的是apache,那么需要三个文件, 1 youdomain.key ,2 证书文件xxx_com.crt ,3 整合到一起的除了xxx_com.crtall_xxx_com.crt

第五步,配置nginx,重启nginx,证书生效。

下面开始配置nginx:

找到你的nginx配置文件中你域名所在的conf文件,一般是 /usr/local/nginx/host/xxx_com.conf .
不同的服务器不一样,有的用lnmp的,有的单独安装的,请自行查找相关目录。

修改 Nginx 配置文件以使用合并后的证书文件。在你的 Nginx 配置中,指定 SSL 证书和私钥文件的路径,并使用合并后的证书文件。示例配置如下:

server {
    listen 443 ssl;
    server_name yourdomain.com;

    ssl_certificate /path/to/all_xxx_com.crt;
    ssl_certificate_key /path/to/youdomain.key;

    # 其他 SSL 配置...
}

然后重启nginx,如下:

sudo systemctl restart nginx
或者
systemctl restart nginx
如果使用lnmp使用
lnmp restart nginx

这样,你已经将 SSL 证书和证书链配置到了 Nginx 中。确保证书链中的证书顺序正确,私钥文件的权限设置正确,并且在 Nginx 配置中指定了正确的文件路径。完成这些步骤后,你的 Nginx 将使用合并后的证书文件来启用 HTTPS 加密连接了。

如果是apache参考下面的代码:

<VirtualHost *:443>
    ServerName yourdomain.com
    SSLEngine on
    SSLCertificateFile /path/to/xxx_com.crt
    SSLCertificateKeyFile /path/to/youdomain.key
    SSLCertificateChainFile /path/to/all_xxx_com.crt
    # 其他 SSL 相关配置...
</VirtualHost>

然后重启apache即可(systemctl restart httpd)。

其他说明:

在最开始申请证书之前的两个文件说明:

yourdomain.csr 是证书签名请求文件,用于申请 SSL 证书。一旦证书签发并安装完成后,通常不再需要这个文件。它是用于向证书颁发机构(CA)申请证书时生成的,不应该包含在实际的 SSL 配置中。用完删掉即可。

yourdomain.key 是私钥文件,它是与 SSL 证书配对使用的私钥。私钥用于加密和解密数据,对于 SSL 连接的安全性至关重要。你需要保留这个私钥文件,并在 SSL 配置中指定它,这样才能确保 SSL 证书的正确工作。

至此SSL证书在nginx下安装完成,apache的也可以参考。

评论(0)

当前没有评论,还不快来留下第一个脚印吧


Copyright 2021 三三世界-百宝箱. All Rights Reserved.

最新评论

  • 三三

    @Doug Shume it's ok for me , you can post here.

  • refugiaguenther

    Saved as a favorite, I like your website!

  • josefa

    If some one wishes to be updated with hottest technologies after that he must be visit this site and be up to date daily.

  • Penzu

    Heello would you mind sharing which blog platform you're using? I'm planning to start my own blog in the near future but I'm having a tough time making a decision between BlogEngine/Wordpress/B2evolution and Drupal. The reason I ask is because your layout seems different then moost blogs and I'm looking for something completely unique. P.S Apologies forr being off-topic butt I had to ask!

  • Yupoo Fendi

    Thanks to my father who shared with me regarding this webpage, this website is genuinely amazing.

  • Doug Shume

    Hi, I have an overflow of customers that I'd like to send to you but I want to make sure you can handle more leads, let me know if you'd like me to send you more info.

  • SuperWind

    zh.us.to 有效
    kms.03k.org 有效
    kms.chinancce.com
    kms.shuax.com 有效
    kms.dwhd.org 有效
    kms.luody.info 有效
    kms.digiboy.ir 有效
    kms.lotro.cc 有效
    www.zgbs.cc 有效
    cy2617.jios.org 有效

  • 三三

    @         权限问题,试试sudo 再加命令。

  •         

    你好提示Permission denied 怎么办啊

日历

2024年05月

   1234
567891011
12131415161718
19202122232425
262728293031 

文章目录

上一张 下一张