分类: 服务器与存储
2015-07-10 16:20:43
【openssl genrsa -out key.pem 2048
openssl req -new -key key.pem -out cert.csr
//会提示输入省份、城市、域名信息等,重要的是,email 一定要是你的域名后缀的你可以拿着这个文件去数字证书颁发机构(即CA)申请一个数字证书。CA会给你一个新的文件cacert.pem,那才是你的数字证书。】
如果是自己做测试,可以不用上面的两条命令,就用下面这一条命令来生成证书:(注意:后面需要输入国家省份等的都可以不输入直接回车)
openssl req -new -x509 -nodes -out server.crt -keyout server.key
本条命令生成server.key和server.crt
在nginx.conf中添加配置:
server {
listen 443 ssl;
server_name atstest.mytest1.com;
ssl_certificate_key /usr/local/nginx1.7.11/sslSecret/server.key;
ssl_certificate /usr/local/nginx1.7.11/sslSecret/server.crt;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
root /usr/local/nginx1.7.11/html/;
index index.html index.htm;
}
}
重启nginx,大功告成!
发送https请求:wget "" -S --no-check-certificate 可成功返回想要的m3u8文件。
==============================
同事测试中发现的问题:测试发现后台并发访问2000个实际接入成功约1400多个
解决:配置允许运行多个进程;加密算法改为CPU的算法;允许接入连接数;
配置如下:
worker_processes 24; //启动进程数
worker_cpu_affinity 000000000000000000000001 000000000000000000000010 000000000000000000000100 000000000000000000001000 000000000000000000010000 000000000000000000100000 000000000000000001000000 000000000000000010000000 000000000000000100000000 000000000000001000000000 000000000000010000000000 000000000000100000000000 000000000001000000000000 000000000010000000000000 000000000100000000000000 000000001000000000000000 000000010000000000000000 000000100000000000000000 000001000000000000000000 000010000000000000000000 000100000000000000000000 001000000000000000000000 010000000000000000000000 100000000000000000000000; //核和进程绑定
worker_connections 10240; //允许接入连接数
ssl_ciphers ECDHE-RSA-AES256-SHA384:AES256-SHA256:RC4:HIGH:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!AESGCM; //加密方式,默认使用的DH算法是低性能的最大原因。改变SSL密码设置