当前位置: 首页 > 科技观察

Nginx服务器启用SSL

时间:2023-03-16 13:22:42 科技观察

购买SSL证书既然要加密,提高网站的安全级别,那么选择性价比高的SSL是必然的。购买SSL证书的方式有很多种,有些是免费的。我试过一些免费的SSL证书,但发现更新麻烦,不稳定,不安全。国内CA机构CFCA中国金融认证中心SSL产品研发负责人也表示,无论是网站管理者还是CA机构,对于免费证书都要谨慎。因为支付不是很贵,所以选择了比较常用的ComodoPositiveSSL,在gogetssl上买比官网便宜很多。下面以gogetssl的ComodoPositiveSSL证书为例,记录一下Nginx配置和安装ssl证书的过程。具体原理就不说了。准备证书首先需要购买证书ComodoPositiveSSL,三年只需9.65。购买完成后,你会在邮件中收到几封邮件,里面有密钥代码、证书压缩包等附件,解压后会得到4个文件。AddTrustExternalCARoot.crt、COMODORSAAddTrustCA.crt、COMODORSADomainValidationSecureServerCA.crt、www_91zll_net.crt,这是我们要用到的证书。拼接证书执行合并命令生成新文件ssl-bundle.crtcatwww_91zll_net.crtCOMODORSADomainValidationSecureServerCA.crtCOMODORSAAddTrustCA.crtAddTrustExternalCARoot.crt>ssl-bundle.crt生成私钥使用gogetssl发送的邮件中的密钥代码即可现在,即——BEGINPRIVATEKEY——和——ENDPRIVATEKEY——之间的代码(包括这两行)被复制并保存为91zll_net.key文件。使用KEY私钥格式转换工具将PKCS8Key转换为RSAKey。创建证书存放路径mkdir-p/etc/ssl/private/将之前生成的91zll_net.key和ssl-bundle.crt上传到服务器,一般在/etc/ssl/private/目录下。修改Nginx配置以下是我在ssl部分的nginx配置。因为全局使用https,所以80端口重定向到https。服务器{listen80;server_name91zll.newww.91zll.netlocation/{rewrite(.*)https://www.91zll.net$1permanent;}}server{listen443ssl;server_name91zll.netwww.91zll.net;sslon;ssl_certificate/etc/ssl/private/ssl-bundle.crt;ssl_certificate_key/etc/ssl/private/91zll_net.key;ssl_staplingon;ssl_stapling_verifyon;resolver8.8.8.88.8.4.4valid=300s;resolver_timeout5s;ssl_session_cache共享:SSL:10m;ssl_session_timeout5m;ssl_protocolsTLSv1TLSv1.1TLSv1.2;ssl_ciphers“ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";ssl_prefer_server_cipherson;}具体参数的含义我就不多说了,使用前请自行谷歌测试。nginx-t检测没有问题后,重启nginxservicenginxrestart

猜你喜欢