当前位置:asp编程网>技术教程>Linux教程>  正文

nginx使用Comodo品牌SSL数字证书上配置https协议

2021-03-05 20:57:38   来源:www.aspbc.com   作者:wangsdong   浏览量:2135   收藏
最近公司要求域名使用https协议,由原来的http://www.xxx.com改成https://www.xxx.com,虽然只是将http变成了https,但还花了我不少时间弄。今天把它整理出来,供大家参考,希望大家在使用的过程中少走些弯路。

原创文件,转载请注明来源:www.aspbc.com,谢谢

作者:wangsdong


1、购买数字证书
去购买Comodo数字证书,填写你的相关资料后,付款成功后,数字证书商家那边给你的邮箱发了一封邮件。
这个邮件中包括一个链接和一个验证码。点击这个链接打开商家的地址,把验证码填写进去,点击验证即可。
这时,你可以收到2个邮件。一个邮件中可以有数字证书,下载下来; 另一个邮件中有key,复制出来,保存为aaa.key文件,备用。

2、连接nginx服务器
将数字证书的四个文件和aaa.key上传到/usr/share/nginx/certs文件夹下。
命令如下:
# cd /usr/share/nginx/certs
# cat www_xxx_com.crt SectigoRSADomainValidationSecureServeridationSecureServerCA.crt USERTrustRSAAAACA.crt AAACertificateServices.crt > www_xxx_com.bundle.crt


3、生成DHE参数
为了避免使用 OpenSSL 默认的 1024bit DHE 参数,我们需要生成一份更强的参数文件:
#cd /etc/ssl/certs
#openssl dhparam -out dhparam.pem 4096
建议您使用性能强劲的平台生成此文件,例如最新版的至强物理机。如果您只有一台小型 VPS,请使用 openssl dhparam -out dhparam.pem 2048 命令生成 2048bit 的参数文件。


4、修改nginx配置文件
# vi cd /usr/local/nginx/conf/nginx.conf
代码如下:
server {
        listen 80;
        # listen [::]:80 ipv6only=on;
        server_name www.xxx.com;
        return 301 https://$server_name$request_uri;
}

server {
        listen 443 ssl;
        # listen [::]:443 ssl ipv6only=on;

        server_name www.xxx.com;
        ssl_certificate /usr/local/nginx/cert/www_xxx_com.bundle.crt;
        ssl_certificate_key /usr/local/nginx/cert/aaa.key;
        ssl_prefer_server_ciphers on;
        ssl_dhparam /etc/ssl/certs/dhparam.pem;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4";
        keepalive_timeout 70;
        ssl_session_cache shared:SSL:10m;
        ssl_session_timeout 10m;

        add_header Strict-Transport-Security max-age=63072000;
        add_header X-Frame-Options DENY;
        add_header X-Content-Type-Options nosniff;

        root  /home/wwwroot/default;
        index index.html index.htm index.php;
include enable-php.conf;
        location / {
             if (!-e $request_filename){
                   rewrite ^/(.*)$ /index.php?s=/$1 last;
             }
        }

}

5、重启nginx服务器
# service nginx restart

6、nginx服务器中开启的443端口
# vim /etc/sysconfig/iptables
在里面加上以下这句
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT 
然后保存,重启防火墙
# service iptables restart

7、配置完成
打开浏览器,使用https://www.xxx.com访问你的网站,能打开即配置成功。


关于我们-广告合作-联系我们-积分规则-网站地图

Copyright(C)2013-2017版权所属asp编程网