Fórum Root.cz

Hlavní témata => Server => Téma založeno: beer 04. 11. 2015, 13:32:23

Název: Let's Encrypt v Nginx
Přispěvatel: beer 04. 11. 2015, 13:32:23
Ahoj, mám už pro svou doménu, kterou používám na hraní - let´s encrypt certifikáty, systém Ubuntu 15.10, nginx

Vygenerovaná certifikáty mám v umístění:
Kód: [Vybrat]
/etc/letsencrypt/live/mojedomena.cz/cert.pem
/etc/letsencrypt/live/mojedomena.cz/fullchain.pem
/etc/letsencrypt/live/mojedomena.cz/chain.pem
/etc/letsencrypt/live/mojedomena.cz/privkey.pem

Jak certifikáty naservíruji webserveru nginx, který mám nainstalovaný?

Mám do
Kód: [Vybrat]
/etc/nginx/nginx.conf přidat něco jako

Kód: [Vybrat]
server {
    listen 443 ssl;
    listen [::]:443 ssl;
    server_name mojedomena.cz;

    ssl_certificate /etc/letsencrypt/live/mojedomena.cz/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/mojedomena.cz/privkey.pem;

a pak provést restart nginx nějak takto?

Kód: [Vybrat]
service nginx reload
Nebo jak správně postupovat, rád bych, aby fungovala doména jak s https, tak i bez, díky za info.
Název: Re:Let's Encrypt v Nginx
Přispěvatel: Petr Krčmář 04. 11. 2015, 13:42:24
Ta konfigurace nepatří do nginx.conf, ale do konfigu pro konkrétní web. Ty se obvykle nacházejí v /etc/nginx/sites-enabled/.
Název: Re:Let's Encrypt v Nginx
Přispěvatel: kk 04. 11. 2015, 13:59:30
ahoj

ty sites enabled to je jenom cast konfiguraku ktera se inkluduje do nginx.conf ne?

ja jsem si v nginx.conf udelal:
Kód: [Vybrat]
include /etc/nginx/archrulez.org.conf;

a v archrulez.org.conf mam:
funguje mi i to presmerovani, kdyz de nekdo na http tak ho to posle na https.
certifikat mam od startssl

Kód: [Vybrat]
server {
       listen         80;
       server_name    archrulez.org;
       return         301 https://$server_name$request_uri;
}



server {
        listen       443 ssl default_server;
        server_name  archrulez.org;
        root    /home/quandasim/www/archrulez.org/html;
        ssl_certificate      certs/archrulez-unified.crt;
        ssl_certificate_key  certs/archrulez.key;
#       ssl_verify_client on; #optional;
        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;
        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;

        location = /favicon.ico {
                alias /home/quandasim/www/favicon.ico;
        }
        include php.conf;

        location / {
            index  index.html index.htm;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
#        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root    /home/quandasim/www/archrulez.org/html;
        }

    }

Název: Re:Let's Encrypt v Nginx
Přispěvatel: beer 04. 11. 2015, 15:39:29
díky, přidal jsem do souboru /etc/nginx/sites-enabled/default, ale výsledek je chybová hláška:
Kód: [Vybrat]
nginx: [emerg] SSL_CTX_use_PrivateKey_file("/etc/letsencrypt/mojedomena.cz/privkey.pem") failed (SSL: er

ror:02001002:system library:fopen:No such file or directory:fopen('/etc/letsencrypt/mojedomena.cz/privke

y.pem','r') error:20074002:BIO routines:FILE_CTRL:system lib error:140B0002:SSL routines:SSL_CTX_use_PrivateK

ey_file:system lib)
Název: Re:Let's Encrypt v Nginx
Přispěvatel: beer 04. 11. 2015, 15:59:45
Kód: [Vybrat]
server {
    listen 443 ssl;
    listen [::]:443 ssl;
    server_name mojedomena.cz;

    ssl_certificate /etc/letsencrypt/live/mojedomena.cz/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/mojedomena.cz/privkey.pem;


tak měl jsem chybu v cestě, chybělo mi v cestě /live, ale co se nestalo, chybu to již nehlásí, ale vyjede mi výchozí stránka nginx při zadání mé domény, nikoliv můj web. A certifikát se mi zobrazuje takto:

(http://www.imgup.cz/images/2015/11/04/happyhackerfakeCA.png)

To happy hacker fake CA to bude standardní zobrazení u certifikátů let´s encrypt?
Název: Re:Let's Encrypt v Nginx
Přispěvatel: Ondřej Caletka 04. 11. 2015, 16:11:01
To happy hacker fake CA to bude standardní zobrazení u certifikátů let´s encrypt?
Happy hacker značí, že jsi nepostupoval podle návodu, který jsi dostal v pozvánce a místo z ostré autority sis vygeneroval certifikát z demo autority :) Nejspíš jsi zapomněl na přepínač --server u volání letsencrypt.
Název: Re:Let's Encrypt v Nginx
Přispěvatel: Mirek Prýmek 04. 11. 2015, 16:11:38
ty sites enabled to je jenom cast konfiguraku ktera se inkluduje do nginx.conf ne?
Ano. Musí to být v sekci "server". Ve kterém souboru ta sekce je, je jedno. Různé OS to mají různě.

To happy hacker fake CA to bude standardní zobrazení u certifikátů let´s encrypt?
Ne. Google: "happy hacker fake CA"
Název: Re:Let's Encrypt v Nginx
Přispěvatel: fedorac 05. 11. 2015, 10:04:55
zkousel jsem a kupodivu uspech.
ale az na podruhe, letsencrypt potrebuje volny lokalni port 80

server_name mojedomena.cz www.mojedomena.cz;

za me dobry :)
Název: Re:Let's Encrypt v Nginx
Přispěvatel: beer 05. 11. 2015, 12:02:39
díky všem