2022-01-13 19:50:16
SSL证书的安装和配置需根据服务器类型和托管环境调整,以下为通用步骤,涵盖Nginx服务器及关键验证环节:
一、获取SSL证书DV(域名验证):仅验证域名所有权,适合个人网站。
OV(组织验证):需验证组织身份,适合企业网站。
EV(扩展验证):最高验证级别,显示绿色地址栏,适合金融等高安全需求场景。
主证书文件(通常为.crt或.pem格式)。
中间证书(链):用于建立信任链,确保浏览器认可证书。
私钥文件(.key格式):生成证书请求(CSR)时创建,需严格保密。
备份Web服务器配置文件(如Nginx的nginx.conf、Apache的httpd.conf)。
备份网站数据及数据库,避免配置错误导致数据丢失。
确保服务器已安装支持SSL的Web服务器(如Nginx、Apache)及SSL模块。
例如,Nginx需启用ssl_module,可通过命令nginx -V检查是否包含--with-http_ssl_module。
将主证书、中间证书和私钥文件上传至服务器安全目录(如/etc/nginx/ssl/)。
设置文件权限:私钥文件权限应为600(仅所有者可读写),证书文件权限可为644。
打开Nginx主配置文件(nginx.conf)或特定站点的配置文件(如/etc/nginx/conf.d/example.com.conf)。
在server块中添加或修改以下内容:server { listen 443 ssl; server_name example.com; ssl_certificate /etc/nginx/ssl/example.com.crt; # 主证书路径 ssl_certificate_key /etc/nginx/ssl/example.com.key; # 私钥路径 ssl_trusted_certificate /etc/nginx/ssl/ca-bundle.crt; # 中间证书路径(可选,部分场景需) ssl_protocols TLSv1.2 TLSv1.3; # 启用安全协议版本 ssl_ciphers HIGH:!aNULL:!MD5; # 配置强加密套件 ssl_prefer_server_ciphers on; # 优先使用服务器端加密套件 # 其他配置(如根目录、日志等) root /var/www/html; index index.html;}
执行命令nginx -t测试配置文件语法是否正确。
重启Nginx服务:systemctl restart nginx(Systemd系统)或service nginx restart(SysVinit系统)。
访问
确保评分达到A级以上,无严重安全警告(如过期证书、弱加密套件)。
在浏览器中输入
确认地址栏显示安全锁标识,点击锁图标可查看证书详情(颁发机构、有效期等)。
为确保所有流量通过HTTPS传输,可在Nginx配置中添加HTTP到HTTPS的重定向:server { listen 80; server_name example.com; return 301 https://$host$request_uri;}
配置文件通常位于/etc/apache2/sites-available/或/etc/httpd/conf.d/。
需启用mod_ssl模块,并配置SSLCertificateFile、SSLCertificateKeyFile等指令。
部分平台提供一键安装SSL证书功能(如AWS Certificate Manager),可直接上传证书或通过ACM自动管理。
需在负载均衡器或CDN配置中绑定证书,并更新DNS记录指向云服务提供的端点。
检查中间证书是否完整上传,确保浏览器能构建完整信任链。
确认证书未过期,且域名与证书中的Common Name或Subject Alternative Names匹配。
检查私钥文件权限是否为600,证书路径是否正确。
使用nginx -t定位语法错误。
若页面中存在HTTP资源(如图片、脚本),浏览器会提示“不安全”。需将所有资源链接改为HTTPS。
通过以上步骤,可完成SSL证书的安装与配置,确保网站通过HTTPS安全传输数据。