DrMartiner
@DrMartiner
Full-Stack WEB Developer on Django & AngualrJS

Как добавить SSL сертификат в Nginx?

Всем привет

Как правильно добавить ssl сертификат в Nginx? Вроде, все как надо сделал (и сертификат купленный):

server {
    listen      443 ssl;
    server_name hostname;

    ssl_certificate      /etc/ssl/private/project.pem;
    ssl_certificate_key  /etc/ssl/private/project.key;

    ssl_session_cache   shared:SSL:10m;
    ssl_session_timeout  5m;
    ssl_prefer_server_ciphers   on;

    location /  {
        # ....
    }
}


При заходе через хром пишет:
Ваше подключение не защищено
Злоумышленники могут пытаться похитить ваши данные
с сайта hostname.ru (например, пароли, сообщения или номера банковских карт). 
NET::ERR_CERT_AUTHORITY_INVALID
  • Вопрос задан
  • 2512 просмотров
Пригласить эксперта
Ответы на вопрос 4
slimus
@slimus
Symfony, Golang
Что в логах?
Ответ написан
nonname
@nonname
Открытый ключ содержит только сам сертификат или цепочку? Скорее всего там цепочка такая ROOT CA - Intermediate - ваш сертификат, вот хорошо скачать бы ещё Intermediate и слепить их вместе с вашим. nginx.org/ru/docs/http/configuring_https_servers.html вот тут в разделе цепочки сертификатов есть инфа как это делается.
Ответ написан
Комментировать
@retaliation
не, у него pem файл, должен содержать всю цепочку...
что за домен подскажи, проверю
Ответ написан
Для мобильних нужно сделать цепочку сертификатов и передавать ее как сертификат.
Подробно описано здесь: nginx.org/ru/docs/http/configuring_https_servers.html

Пример:
cd /etc/nginx/ssl
ll
 > domain.ca-bundle domain.crt  domain.csr  domain.rsa

cat domain.crt domain.ca-bundle >  domain.chained.crt
ll
> domain.ca-bundle domain.crt  domain.csr  domain.rsa domain.chained.crt

Мой конфиг nginx
server {
        listen 80 default_server;

        listen 443 ssl;

        root /var/www/domain/frontend/www;
        index index.php index.html index.htm;

        # Make site accessible from http://localhost/
        server_name domain.com;

        ssl_certificate /etc/nginx/ssl/domain.chained.crt;
        ssl_certificate_key /etc/nginx/ssl/domain.rsa;

        ssl_session_timeout 5m;
        ssl_protocols SSLv3 TLSv1;
        ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
        ssl_prefer_server_ciphers on;

......
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы