Автор Тема: ERR_SSL_PROTOCOL_ERROR  (Прочитано 1926 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн BegU

  • Пользователь
  • *
  • Topic Author
  • Сообщений: 33
ERR_SSL_PROTOCOL_ERROR
« : 10 Март 2018, 22:55:50 »
Итак. Имеем 2 конфига на 2 домена. У обеих получен SSL-сертификат.

Конфиг первого домена:

Spoiler: ShowHide

server {
        listen 80;
   listen [::]:80;
   server_name mysite1.ru www.mysite1.ru;
   return 301 https://$host$request_uri;
}

server {
        listen 443 http2 ssl;
        server_name www.mysite1.ru;
        ssl_certificate /etc/letsencrypt/live/mysite1.ru/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/mysite1.ru/privkey.pem;
        return 301 https://mysite1.ru$request_uri;
}

server {
    listen 443 http2 ssl;
    server_name mysite1.ru;
    ssl_certificate /etc/letsencrypt/live/mysite1.ru/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/mysite1.ru/privkey.pem;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
    ssl_ecdh_curve secp384r1;
    ssl_session_cache shared:SSL:10m;
    ssl_session_tickets off;
    ssl_stapling on;
    ssl_stapling_verify on;
    resolver 8.8.8.8 8.8.4.4 77.88.8.8 valid=300s;
    resolver_timeout 5s;
    add_header Strict-Transport-Security "max-age=63072000; includeSubdomains";
    add_header X-Frame-Options SAMEORIGIN;
    add_header X-Content-Type-Options nosniff;

    ssl_dhparam /etc/ssl/certs/dhparam.pem;
   
    location ~ /.well-known {
        allow all;
        }

    root /home/user/web/mysite1.ru/public_html;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?$uri&$args;
        index index.php index.html;
        }

    location /internal_data/ {
        internal;
        }
   
    location /library/ {
        internal;
       }

    location ~ /\. {
        deny all;
        }   
    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;     
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param SCRIPT_NAME $fastcgi_script_name;      
        fastcgi_buffer_size 128k;
        fastcgi_buffers 256 16k;
        fastcgi_busy_buffers_size 256k;
        fastcgi_temp_file_write_size 256k;
        fastcgi_read_timeout 600;
        include fastcgi_params;
        fastcgi_cache_valid 200 60m;
   }
error_page 404 /404error.html;
        location = /404error.html {
                root /usr/share/nginx/html;
                internal;
        }      
      error_page 403 /403error.html;
        location = /403error.html {
                root /usr/share/nginx/html;
                internal;
        }            
}



Все работает. И редирект с http на https, и редирект с www на без www.

Конфиг второго домена:

Spoiler: ShowHide

server {
        listen 80;
   listen [::]:80;
   server_name mysite2.ru www.mysite2.ru;
   return 301 https://$host$request_uri;
}

server {
        listen 443 http2 ssl;
        server_name www.mysite2.ru;
        ssl_certificate /etc/letsencrypt/live/mysite2.ru/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/mysite2.ru/privkey.pem;
        return 301 https://mysite2.ru$request_uri;
}

server {
    listen 443 http2 ssl;
    server_name mysite2.ru;
    ssl_certificate /etc/letsencrypt/live/mysite2.ru/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/mysite2.ru/privkey.pem;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
    ssl_ecdh_curve secp384r1;
    ssl_session_cache shared:SSL:10m;
    ssl_session_tickets off;
    ssl_stapling on;
    ssl_stapling_verify on;
    resolver 8.8.8.8 8.8.4.4 77.88.8.8 valid=300s;
    resolver_timeout 5s;
    add_header Strict-Transport-Security "max-age=63072000; includeSubdomains";
    add_header X-Frame-Options SAMEORIGIN;
    add_header X-Content-Type-Options nosniff;

    ssl_dhparam /etc/ssl/certs/dhparam.pem;
   
    location ~ /.well-known {
        allow all;
        }

    root /home/user/web/mysite2.ru/public_html;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?$uri&$args;
        index index.php index.html;
        }

    location /internal_data/ {
        internal;
        }
   
    location /library/ {
        internal;
       }

    location ~ /\. {
        deny all;
        }   
    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;     
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param SCRIPT_NAME $fastcgi_script_name;      
        fastcgi_buffer_size 128k;
        fastcgi_buffers 256 16k;
        fastcgi_busy_buffers_size 256k;
        fastcgi_temp_file_write_size 256k;
        fastcgi_read_timeout 600;
        include fastcgi_params;
        fastcgi_cache_valid 200 60m;
   }
error_page 404 /404error.html;
        location = /404error.html {
                root /usr/share/nginx/html;
                internal;
        }      
      error_page 403 /403error.html;
        location = /403error.html {
                root /usr/share/nginx/html;
                internal;
        }            
}


Получаю ошибку: ERR_SSL_PROTOCOL_ERROR

Замечу, что оба домена крутятся на одном IP.

Подскажите, в какую сторону копать.
« Последнее редактирование: 10 Март 2018, 22:59:49 от BegU »
 

Оффлайн endru

  • Главный модератор
  • Ветеран
  • *****
  • Сообщений: 1986
  • Новосибирск
Re: ERR_SSL_PROTOCOL_ERROR
« Ответ #1 : 11 Март 2018, 09:34:02 »
в сторону браузера. смотри какой сертификат выдает для этого сайта

Оффлайн BegU

  • Пользователь
  • *
  • Topic Author
  • Сообщений: 33
Re: ERR_SSL_PROTOCOL_ERROR
« Ответ #2 : 11 Март 2018, 11:50:53 »
Браузер явно не причем, т.к. у пользователей та же ошибка.

Cообщение объединено 11 Март 2018, 23:08:52
Как я заметил, у домена были проблемы с dns. Может причина ошибки заключаться в этом?
« Последнее редактирование: 11 Март 2018, 23:08:52 от BegU »
 

Оффлайн endru

  • Главный модератор
  • Ветеран
  • *****
  • Сообщений: 1986
  • Новосибирск
Re: ERR_SSL_PROTOCOL_ERROR
« Ответ #3 : 12 Март 2018, 03:38:31 »
Каким образом ты собираешься диагностировать проблему, если ты делаешь только догадки но не проверяешь на практике?

Оффлайн BegU

  • Пользователь
  • *
  • Topic Author
  • Сообщений: 33
Re: ERR_SSL_PROTOCOL_ERROR
« Ответ #4 : 12 Март 2018, 03:59:05 »
Как провести диагностику? На что конкретно обратить внимание?
 

Оффлайн endru

  • Главный модератор
  • Ветеран
  • *****
  • Сообщений: 1986
  • Новосибирск
Re: ERR_SSL_PROTOCOL_ERROR
« Ответ #5 : 12 Март 2018, 04:01:27 »
ну да тяжело посмотреть 1 ответ видимо...

Оффлайн BegU

  • Пользователь
  • *
  • Topic Author
  • Сообщений: 33
Re: ERR_SSL_PROTOCOL_ERROR
« Ответ #6 : 12 Март 2018, 04:04:34 »
Видать так же тяжело, как дать нормальный ответ на простой, казалось бы, вопрос?

Cообщение объединено 12 Март 2018, 04:32:17
Надеюсь, это то, что нужно. На одном скрине блока

Spoiler: ShowHide

server {
    listen 443 http2 ssl;
    server_name www.mysite1.ru;
    ssl_certificate /etc/letsencrypt/live/mysite1.ru/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/mysite1.ru/privkey.pem;
   return 301 https://mysite1.ru$request_uri;
   }


нет, на втором (с ошибкой), когда он добавлен

Cообщение объединено 12 Март 2018, 22:58:36
Я заметил еще одну не приятную вещь. Если я перевожу второй домен, тот, с которым проблемы, на обычный конфиг, без SSL, тот, первый сайт, начинает выдавать ту же ошибку. Т.е., похоже, проблема более глобального характера.
« Последнее редактирование: 12 Март 2018, 22:58:36 от BegU »
 

Оффлайн endru

  • Главный модератор
  • Ветеран
  • *****
  • Сообщений: 1986
  • Новосибирск
Re: ERR_SSL_PROTOCOL_ERROR
« Ответ #7 : 13 Март 2018, 04:40:04 »
Скрины показывают только общую информацию, но никак не показывают сам сертификат.
Нужно нажать на "замок" во втором скрине и посмотреть сам сертификат. Там будет понятно, какой сертификат выдал сайт.
либо скинь в лс проблемный домен, если светить не хочешь на публику.

Оффлайн BegU

  • Пользователь
  • *
  • Topic Author
  • Сообщений: 33
Re: ERR_SSL_PROTOCOL_ERROR
« Ответ #8 : 13 Март 2018, 11:53:58 »
Я из-за своей дури, да по недосыпу, убил NGINX, сейчас все перенастраиваю. Если опять будут проблемы, то воспользуюсь предложением и напишу в ЛС. Кстати, замок был не активен. Хоть жми, хоть не жми.
 

Оффлайн BegU

  • Пользователь
  • *
  • Topic Author
  • Сообщений: 33
Re: ERR_SSL_PROTOCOL_ERROR
« Ответ #9 : 16 Март 2018, 04:02:50 »
Решил проблему. Немного переписал конфиг. Вот, может кому пригодится.

Spoiler: ShowHide

server {
     listen  80;
     server_name  www.mysite1.ru;
     rewrite ^ https://mysite1.ru$request_uri? permanent;
}

server {
    listen 443 ssl http2;
    server_name mysite1.ru;
    ssl_certificate /etc/letsencrypt/live/mysite1.ru/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/mysite1.ru/privkey.pem;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    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:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA';
    ssl_ecdh_curve secp384r1;
    ssl_session_cache shared:SSL:10m;
    ssl_session_tickets off;
    ssl_stapling on;
    ssl_stapling_verify on;
    resolver 8.8.8.8 8.8.4.4 77.88.8.8 valid=300s;
    resolver_timeout 5s;
    add_header Strict-Transport-Security "max-age=63072000; includeSubdomains";
    add_header X-Frame-Options SAMEORIGIN;
    add_header X-Content-Type-Options nosniff;
    ssl_dhparam /etc/ssl/certs/dhparam.pem;
      
    root /home/username/web/mysite1.ru/public_html;
    index index.php index.html index.htm;
   
location ~ /.well-known {
    allow all;
    }
location / {
    try_files $uri $uri/ /index.php?$uri&$args;
    index index.php index.html;
    }
location /internal_data/ {
    internal;
    }
location /library/ {
    internal;
    }
location ~ /\. {
    deny all;
    } 
location ~ \.php$ {
    try_files  $uri =404;
    fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;     
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param SCRIPT_NAME $fastcgi_script_name;   
    fastcgi_buffer_size 128k;
    fastcgi_buffers 256 16k;
    fastcgi_busy_buffers_size 256k;
    fastcgi_temp_file_write_size 256k;
    fastcgi_read_timeout 600;
    include fastcgi_params;
    }

location ~ /\. {
    deny all;
    }
}

server {
    listen  443 ssl http2;
    server_name  www.mysite1.ru;
    ssl_certificate /etc/letsencrypt/live/mysite1.ru/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/mysite1.ru/privkey.pem;
    rewrite ^ https://mysite1.ru$request_uri? permanent;
}


С таким получил A+ на ssllabs.

endru, благодарю за помощь - подтолкнул в верном направлении.

Cообщение объединено 16 Март 2018, 04:13:08
Вообще, как я понимаю, проблема была в порядке подключения секций server.
« Последнее редактирование: 16 Март 2018, 04:13:08 от BegU »
 

Оффлайн endru

  • Главный модератор
  • Ветеран
  • *****
  • Сообщений: 1986
  • Новосибирск
Re: ERR_SSL_PROTOCOL_ERROR
« Ответ #10 : 16 Март 2018, 04:26:53 »
Вообще, как я понимаю, проблема была в порядке подключения секций server.
Порядок не влияет.

Оффлайн BegU

  • Пользователь
  • *
  • Topic Author
  • Сообщений: 33
Re: ERR_SSL_PROTOCOL_ERROR
« Ответ #11 : 16 Март 2018, 10:38:28 »
Порядок не влияет.
Дело в том, что ssl_ciphers я заменил и не работало. Вся остальная разница - добавление

location ~ /\. {
    deny all;
    }

и в реврайтах.
 

Теги: