[ kunc @ 06.03.2016. 10:02 ] @
Pozdrav raja,

vrtim nginx na debian-u, implementiran ssl. Međutim ssl ne radi na www.mojSITE.com dok na mojSITE.com sve regularno.

Probao sam sa redirekcijom ali ne uspijeva.


Code:

server {
    listen 80;
         listen 443  ssl spdy;
    listen [::]:443 ssl spdy;
    ssl_certificate /etc/letsencrypt/live/mojSERVER.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/mojSERVER.com/privkey.pem;
    ssl_session_timeout 1d;
    ssl_session_cache shared:SSL:10m;

    ssl_protocols TLSv1.1 TLSv1.2;
    ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128- GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!3DES:!MD5:!PSK';
    ssl_prefer_server_ciphers on;

    add_header Strict-Transport-Security max-age=15768000;

    ssl_stapling on;
    ssl_stapling_verify on;

    ## verify chain of trust of OCSP response using Root CA and Intermediate certs
    ssl_trusted_certificate /etc/letsencrypt/live/mojSERVER.com/chain.pem;
    resolver 8.8.8.8 8.8.4.4 valid=86400;
    resolver_timeout 10;
    # nova ssl konfiguracija

        root /var/www/html;
        index index.php index.html;

        server_name mojSERVER.com;

        location / {
                try_files $uri $uri/ /index.html;
        }

        error_page 404 /404.html;

        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
              root /usr/share/nginx/www;
        }

        # pass the PHP scripts to FastCGI server listening on the php-fpm socket
        location ~ \.php$ {
                try_files $uri =404;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
                
        }

}



ovo je drugi način na koji sam probao..

Code:


server {
        listen      80;
        server_name mojSERVER.com;
        return 301 https://$server_name$request_uri;
}
server {
         listen 443  ssl spdy;
    listen [::]:443 ssl spdy;
    ssl_certificate /etc/letsencrypt/live/mojSERVER.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/mojSERVER.com/privkey.pem;
    ssl_session_timeout 1d;
    ssl_session_cache shared:SSL:10m;

    ssl_protocols TLSv1.1 TLSv1.2;
    ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128- GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!3DES:!MD5:!PSK';
    ssl_prefer_server_ciphers on;

    add_header Strict-Transport-Security max-age=15768000;

    ssl_stapling on;
    ssl_stapling_verify on;

    ## verify chain of trust of OCSP response using Root CA and Intermediate certs
    ssl_trusted_certificate /etc/letsencrypt/live/mojSERVER.com/chain.pem;
    resolver 8.8.8.8 8.8.4.4 valid=86400;
    resolver_timeout 10;
    # nova ssl konfiguracija

        root /var/www/html;
        index index.php index.html;

        server_name mojSERVER.com;

        location / {
                try_files $uri $uri/ /index.html;
        }

        error_page 404 /404.html;

        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
              root /usr/share/nginx/www;
        }

        # pass the PHP scripts to FastCGI server listening on the php-fpm socket
        location ~ \.php$ {
                try_files $uri =404;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
                
        }

}



U čemu je problem, gdje griješim?
[ vinted @ 06.03.2016. 10:35 ] @
pročitaj ovo:
https://www.digicert.com/ssl-certificate-installation-nginx.htm
kako radi i da pitam da li si dobio <your_domain_name>.pem file?
[ kunc @ 06.03.2016. 12:42 ] @
Da dobio sam i implementirao sam ih u kodu
Code:

ssl_certificate /etc/letsencrypt/live/mojSERVER.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/mojSERVER.com/privkey.pem;



uradio sam redirekt na ovaj način i radi..samo koliko je ispravno i tačno?!

Code:

 ## redirect www to nowww
         if ($host = 'www.mojServer.com' ) {
         rewrite  ^/(.*)$  https://mojServer.com/$1  permanent;
         }




[ nkrgovic @ 07.03.2016. 09:52 ] @
Ubaci error log.

Sta dobijas kao gresku u browseru? Sta ti TACNO ne radi?
[ vinted @ 07.03.2016. 10:14 ] @
Citat:
nkrgovic: Ubaci error log.

Sta dobijas kao gresku u browseru? Sta ti TACNO ne radi?

koliko sam razumeo njemu radi sve, nego samo pita da li je ispravno i tačno onaj redirect što je uradio.
[ kunc @ 07.03.2016. 10:29 ] @
Citat:
vinted: koliko sam razumeo njemu radi sve, nego samo pita da li je ispravno i tačno onaj redirect što je uradio.


Baš tako, nema errora, sve radi ok. Samo me zanima koliko je ispravan i tačan redirect...

Naime imam još nedoumica, kreirao sam 4 server bloka, glavniHost, static.Host, api.Host, dev.Host

vrtim debian8, nginx,mariDB, CloudFlare. Server blokove sam napravio u jednom fajlu radi preglednosti (da li sam morao praviti zasebno konfiguracije i omogućiti ih u sites-enable?)

Direct IP access preko CloudFlare je po defaultu blokiran, dok kod mene izbacuje kucanjem IP adrese glavniHost bez Direct IP access disable.

WP kao backend, frontEnd Laravel.


[ malisha @ 07.03.2016. 13:34 ] @
Ako već koristiš letsencrypt... onda sam i praviš listu domena koji su ssl zaštićeni... a www.nekisajt.com i nekisajt.com nisu ista stvar... tako da ti u stvari fali ssl enkripcija za www.tvojsajt.com.... a to si lagodno mogao dopisati prilikom kreiranja sertifikacionih lanaca.

Samim tim bi izbegao potrebu za redirekcijom sa www.xxx na https://.xxx

Naravno u nginx-u ti trebaju definicije za obe varijante... server_name mojsajt.com pa onda ponoviš sve isto samo serve_name www.mojsajt.com... ako želiš da se tvoj sajt odaziva sa obe adrese uz ssl zaštitu.
[ Mister Big Time @ 28.04.2016. 01:51 ] @
Citat:
malisha
Naravno u nginx-u ti trebaju definicije za obe varijante... server_name mojsajt.com pa onda ponoviš sve isto samo serve_name www.mojsajt.com... ako želiš da se tvoj sajt odaziva sa obe adrese uz ssl zaštitu.


Od kada to? Meni normalno radi u istoj server_name direktivi koliko god domena. Samo odvojis space-om i voilà. Info: http://nginx.org/en/docs/http/server_names.html

Ovo je ekvivalent Apache-ovoj ServerAlias.
[ malisha @ 28.04.2016. 11:18 ] @
Semantika

Lično volim da mi je sve odvojeno... ako negde kiksa, lakše za izolovanje, pa sam zato tako i napisao.