Nginx https 配置

在前面讲到Nginx的安装http://blog.csdn.net/striveinsist/article/details/57083604,下面就Linux的配置做一个总结

1、首先解决在前面的安装基础上面,我们没有安装https模块的问题。

1.1如果没有安装https模块,在配置使用https的时候,那么就会报下面的错误

nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:74

1.2解决办法

我们切换到Nginx安装包源路径下面

执行./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_modul

重新配置编译,然后

make (注不要make install,否则就是覆盖安装),最后将刚刚编译好的nginx覆盖掉原有的nginx(这个时候nginx要停止状态)

1
cp ./objs/nginx /usr/local/nginx/sbin/
最后启动nginx,查看是否有https模块安装


在这里注意(如果Nginx是启动的,那么使用nginx -t && nginx -s reload启动,如果没有启动,执行nginx -t && nginx -s reload会包错误nginx: [alert] kill(10922, 1) failed (3: No such process“)

2、配置https

2
3
4
5
6
7
8
9
server {
             listen 80  default  backlog=2048;
             listen 443 ssl;
             server_name wosign.com;
             root / var /www/html;
  
             ssl_certificate /usr/local/sslcrt/ wjshxxw.cn.crt;
             ssl_certificate_key /usr/local/sslcrt/ wjshxxw.cn .Key;

     ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

     ssl_ciphers ECDHE-RSA-AES256-SHA384:AES256-SHA256:RC4:HIGH:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!AESGCM;

        ssl_prefer_server_ciphers  on ;
        ssl_session_cache shared:SSL:10m;
        ssl_session_timeout 10m;
ssl_dhparam /etc/ssl/certs/wjxxshw.pem;
         }
3、CA证书生成

执行如下命令(注意路劲):

openssl req -new -newkey rsa:2048 -sha256 -nodes -out nicelifes_cn.csr -keyout nicelifes_cn.key -subj "/C=CN/ST=GuangDong/L=GuangZhou/O=nicelifes Inc./OU=Web Security/CN=*.wjshxxw.cn"

openssl x509 -req -days 3650 -sha256 -extensions v3_ca -signkey wjshxxw_cn.key -in wjshxxw_cn.csr -out wjshxxw_cn.crt
在路劲/etc/ssl/certs,执行下面命令生成如下的加密文件,更安全
openssl dhparam -out wjshxxw.pem 2048

ngnix 配置文件增加 :ssl_dhparam /etc/ssl/certs/wjxxshw.pem;





2
3
4
5
6
7
8
9
server {
             listen 80  default  backlog=2048;
             listen 443 ssl;
             server_name wosign.com;
             root / var /www/html;
  
             ssl_certificate /usr/local/Tengine/sslcrt/ wosign.com.crt;
             ssl_certificate_key /usr/local/Tengine/sslcrt/ wosign.com .Key;
         }

把ssl on;这

你可能感兴趣的:(Nginx)