nginx 1.6上的SSL配置

时间:2014-10-21 23:19:00

标签: ssl nginx https certificate

我正在尝试在VM上配置nginx 1.6以接受https连接。 我创建了一个自签名证书following this tutorial.,然后我添加了一个像这样的配置文件

server {
    listen       443 ssl;
    server_name  localhost;

    ssl_certificate      /etc/nginx/ssl/nginx.crt;
    ssl_certificate_key  /etc/nginx/ssl/nginx.key;

    ssl_session_cache shared:SSL:1m;
    ssl_session_timeout  5m;

    ssl_ciphers  HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers   on;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }
}

问题是,当我从浏览器访问https网址时,我没有结果,但是这个错误

Error code: ERR_CONNECTION_RESET

我认为端口443是开放的

netstat -tulpn | grep 443
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      8603/nginx.conf

此外,我可以使用index.html:

wget -–no-check-certificate  https://<server_url>

现在,我认为问题是不受信任的证书,因为如果省略了--no-check-certificate,wget会出错,但在这种情况下,我希望浏览器(Chrome或Firefox)给出某种警告,也许让我查看不受信任的证书而不是重置连接。 我究竟做错了什么?提前致谢

修改

Firefox提供“200 Connection Established”但未显示任何内容或警告。它只表示连接已被取消

2 个答案:

答案 0 :(得分:3)

问题可能出在证书上。您可以看到教程来创建* .pem证书而不是* .crt并添加为:

ssl_certificate      /etc/nginx/ssl/nginx.pem;

答案 1 :(得分:0)

问题在我身边被重命名为my.host.com到localhost并且有效。

  

server_name localhost;