一、OpenSSL使用
|
|
openssl配置
各系统openssl默认配置地址:
- Debian: /etc/ssl/openssl.cnf
- RHEL and CentOS: /etc/pki/tls/openssl.cnf
- Mac OSX: /System/Library/OpenSSL/openssl.cnf
二、SSL证书说明
2.1 SSL证书概念和分类
CA,Catificate Authority,它的作用就是提供证书(即服务器证书,由域名、公司信息、序列号和签名信息组成)加强服务端和客户端之间信息交互的安全性,以及证书运维相关服务。任何个体/组织都可以扮演 CA 的角色,只不过难以得到客户端的信任,能够受浏览器默认信任的 CA 大厂商有很多,其中 TOP5 是 Symantec、Comodo、Godaddy、GolbalSign 和 Digicert。
SSL证书用途
- 保证服务器和客户端的真实性,杜绝中间人攻击和钓鱼网站
- 保护用户数据,通常是客户端的数据到服务器的传输是经过加密传输的,第三方无法监听。
SSL证书认证类别
- DV(Domain Validation),面向个体用户,安全体系相对较弱,验证方式就是向 whois 信息中的邮箱发送邮件,按照邮件内容进行验证即可通过;
- OV(Organization Validation),面向企业用户,证书在 DV 证书验证的基础上,还需要公司的授权,CA 通过拨打信息库中公司的电话来确认;
- EV(Extended Validation),打开 Github 的网页,你会看到 URL 地址栏展示了注册公司的信息,这会让用户产生更大的信任,这类证书的申请除了以上两个确认外,还需要公司提供金融机构的开户许可证,要求十分严格。
SSL提供商
国内免费SSL证书CA提供商:Wosign.com(已经废弃)
国外免费SSL证书CA提供商:StartSSL.com , letsencrypt.org(免费3个月,18年开始支持泛域名) , Cloudflare.com
在线CSR生产工具
三、证书配置
|
|
nginx配置:123456789101112service { listen 443 ssl; server_name 7daka.local; ssl_certificate /www/ssl/local/certificate.pem; ssl_certificate_key /www/ssl/local/local.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; ... ...}