Tuesday, December 30, 2014

amazon ec2 - Port 443 set up SSL on Nginx + Ubuntu + EC2

I've tried everything and I searched Google behind some solution, but can not configure SSL (https) in my Nginx server that is within a Ubuntu 14.04.2 LTS on Amazon EC2.
My website works perfectly on port 80 with HTTP, but I would leave it safer adopting HTTPS.



Considerations:




  1. whenever I try to access it via https:// gives the error: ERR_CONNECTION_TIMED_OUT


  2. the command curl -v https://www.mywebsite.com/ returns:
    curl: (7) Failed to connect to www.mywebsite.com port 443: Connection timed out


  3. the command nc -vz localhost 443 returns: Connection to localhost 443 port [tcp/https] succeeded!



  4. the command nc -vz myserverIP 443 returns:
    nc: connect to myserverIP port 443 (tcp) failed: Connection timed out


  5. TCP 443 port for HTTPS are open to anywhere on Security Groups (Amazon ec2 firewall) on inbound and outbound.


  6. `netstat -ntlp | grep LISTEN:



    tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 1244/proftpd: (acce
    tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1130/sshd
    tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 5633/nginx
    tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 5633/nginx
    tcp6 0 0 :::22 :::* LISTEN 1130/sshd

    tcp6 0 0 :::443 :::* LISTEN 5633/nginx
    tcp6 0 0 :::80 :::* LISTEN 5633/nginx




Nginx configurations:




  1. nginx.conf: http://pastebin.com/ebSaqabh


  2. ssl.conf (called by include of conf.d on nginx.conf):
    http://pastebin.com/FzVAtjGz



  3. sites-available/default:



    server {
    listen 80 default_server;
    listen [::]:80 default_server ipv6only=on;
    charset utf-8;
    root /usr/share/nginx/html;
    index index.php index.html index.htm;



    server_name mywebsite.com www.mywebsite.com;

    #return 301 https://mywebsite.com$request_uri;
    #rewrite ^(.*) https://www.mywebsite.com$1 permanent;
    location / {
    #try_files $uri $uri/ =404;
    try_files $uri $uri/ /index.php?q=$uri&$args;
    }

    error_page 404 /404.html;
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {

    root /usr/share/nginx/html;
    }

    location ~ \.php$ {
    try_files $uri =404;
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index index.php;
    include fastcgi_params;
    fastcgi_read_timeout 300;

    }
    #include /etc/nginx/common/w3tc.conf;
    include /etc/nginx/common/wordpress-seo-plugin-support.conf;


    }




I do not know what else to do to resolve this. Someone could help me? Do you have something wrong in my configuration of Nginx? Or need to change anything else in the Amazon?

No comments:

Post a Comment

linux - How to SSH to ec2 instance in VPC private subnet via NAT server

I have created a VPC in aws with a public subnet and a private subnet. The private subnet does not have direct access to external network. S...