Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 在AWS Ubuntu实例上的Nginx上设置SSL_Linux_Amazon Web Services_Ssl_Nginx - Fatal编程技术网

Linux 在AWS Ubuntu实例上的Nginx上设置SSL

Linux 在AWS Ubuntu实例上的Nginx上设置SSL,linux,amazon-web-services,ssl,nginx,Linux,Amazon Web Services,Ssl,Nginx,我目前在运行Linux的AWS实例上有一个NodeJS(Koa.js)/Angular4+应用程序,我需要对其进行配置以使用SSL。我在网上学习了一些教程,生成了SSL证书,并试图让它正常工作,但到目前为止我没有运气 让我向您介绍一下我迄今为止所做的工作: 我已经生成了SSL证书,它位于实例的/home/ubuntu目录中名为SSL-bundle.crt的文件中。我还把钥匙放在同一个目录里 我在Nginx上为应用程序配置了服务器块,如下所示(/etc/Nginx/sites available/

我目前在运行Linux的AWS实例上有一个NodeJS(Koa.js)/Angular4+应用程序,我需要对其进行配置以使用SSL。我在网上学习了一些教程,生成了SSL证书,并试图让它正常工作,但到目前为止我没有运气

让我向您介绍一下我迄今为止所做的工作:

我已经生成了SSL证书,它位于实例的/home/ubuntu目录中名为SSL-bundle.crt的文件中。我还把钥匙放在同一个目录里

我在Nginx上为应用程序配置了服务器块,如下所示(/etc/Nginx/sites available/dashboard.conf):

节点应用程序在端口4000上运行,因此当有人访问该url时,我有一个到该地址的代理传递。当我不使用SSL时,应用程序在访问该URL时运行良好,但当我尝试使用上述服务器块代码尝试访问该URL时,会导致超时。有人能在这里帮助我,或者看看我的配置有什么问题吗


谢谢

我们在几个API服务器上使用了letsencrypt,我发现它的设置非常简单

原来这不是Nginx的问题,而是AWS安全组的问题。在设置中,我不允许443作为传入端口。一旦我这么做了,效果就很好了。希望这对将来使用AWS的人有所帮助

server {
        listen 80;
        return 301 https://$host$request_uri;
}

server {
        listen 443;

        ssl_certificate /home/ubuntu/ssl-bundle.crt;
        ssl_certificate_key /home/ubuntu/dashboard.d*****d.key;

        ssl on;
        ssl_session_cache  builtin:1000  shared:SSL:10m;
        ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
        ssl_prefer_server_ciphers on;

        access_log            /var/log/nginx/d*****d.access.log;

        location / {
               proxy_set_header Host $host;
               proxy_set_header X-Real-IP $remote_addr;
               proxy_pass http://localhost:4000;
               proxy_set_header        X-Forwarded-Proto $scheme;
        }
}