Как настроить SSL на nginx?

Тема в разделе "Администрирование серверов", создана пользователем alekse, 30 дек 2012.

Модераторы: mefish, stooper
  1. alekse

    alekse

    Регистр.:
    19 июн 2007
    Сообщения:
    694
    Симпатии:
    120
    CentOS 6, ISPManager Lite
    Был установлен сертификат Comodo Positive SSL После установки на сервер nginx не могу включить на сайте SSL соединение. Фрагмент конфига nginx.config:
    Код:
    include /usr/local/ispmgr/etc/nginx.domain;
            client_max_body_size 16M;
            log_format isp '$bytes_sent $request_length';
            server {
                    server_name domain.com www.domain.com;
                    listen IP;
                    listen IP:443 ssl;
                    disable_symlinks if_not_owner from=$root_path;
                    set $root_path /var/www/domain/data/www/domain.com;
                    location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ {
                            root $root_path;
                            access_log /var/www/nginx-logs/domain isp;
                            access_log /var/www/httpd-logs/domain.com.access.log ;
                            error_page 404 = @fallback;
                    }
                    location / {
                            proxy_pass http://IP:81;
                            proxy_redirect http://IP:81/ /;
                            proxy_set_header Host $host;
                            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                            proxy_set_header X-Forwarded-Proto $scheme;
                            proxy_set_header X-Real-IP $remote_addr;
                    }
                    location ~* ^/(webstat|awstats|webmail|myadmin|pgadmin)/ {
                            proxy_pass http://IP:81;
                            proxy_redirect http://IP:81/ /;
                            proxy_set_header Host $host;
                            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                            proxy_set_header X-Forwarded-Proto $scheme;
                            proxy_set_header X-Real-IP $remote_addr;
                    }
                    location @fallback {
                            proxy_pass http://IP:81;
                            proxy_set_header Host $host;
                            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                            proxy_set_header X-Forwarded-Proto $scheme;
                            proxy_set_header X-Real-IP $remote_addr;
                    }
                    include /usr/local/ispmgr/etc/nginx.inc;
                    ssl_certificate /var/www/httpd-cert/domain/domain_com.crt;
                    ssl_certificate_key /var/www/httpd-cert/domain/domain_com.key;
            }
    В включенном конфиге /usr/local/ispmgr/etc/nginx.domain также прописаны корректные пути к сертификату. Сертификат domain_com.crt подписан цепочкой, содержит 2 сертификата, первым записан купленный сертификат Comodo Positive SSL, вторым записан сертификат PositiveSSL CA 2
    Для сайта указал использовать именно файл с 2 сертификатами domain_com.crt В ISPManager пишется что сертификат включен.

    До установки nginx на сайте корректно работал SSL После установки перестал работать и не получается включить. Принудительно указав https://domain.com попадаю на страницу авторизации ISPManager, но искаженную.

    Помогите настроить SSL соединение на nginx.
     
  2. roof

    roof

    Регистр.:
    23 янв 2008
    Сообщения:
    161
    Симпатии:
    114
    я себе ставил тоже такой сертификат на сентось 6.2, там после установки ребутить сервак нужно однозначно, сначало пришлось ставить стандартный сертификат и его потом заменять на комбо через панель, еще галочка должна быть отмечена в настройках домена SSL
     
  3. alekse

    alekse

    Регистр.:
    19 июн 2007
    Сообщения:
    694
    Симпатии:
    120
    У меня был установлен сертификат и работал пока не поставил nginx. Галочка SSL для домена стоит и указан сертификат. В хостинг компании ответили "Управлять установкой SSL в ISPManager при конфигурации с Nginx у Вас не получиться ( по крайней мере без дополнительных изменений файлов конфигурации), т.к. в панели ISP эта функция реализована "не полностью"
    Сейчас ISPManager говорит что сертификат для домена установлен, но на сайте включить не получается, он не видит установленного сертификата.
    Поэтому у меня вопрос как правильно прописать в настройках nginx чтобы работал SSL, учитывая, что сертификат подписан цепочкой.
     
  4. roof

    roof

    Регистр.:
    23 янв 2008
    Сообщения:
    161
    Симпатии:
    114
    стукни 475207706, он есть здесь на нуледе и очень неплохо разбирается в серверах, он те точно поможет, у него тут топик в рекламе по настройке серверов
     
  5. vgrey

    vgrey Создатель

    Регистр.:
    27 июл 2012
    Сообщения:
    48
    Симпатии:
    15
    Вот работающий фрагмент конфига nginx, лови.

    Код:
    server {                                 
        listen      443;                     
        server_name сайт.com;       
                                             
        ssl                on;             
        ssl_protocols      SSLv3 TLSv1;     
        ssl_certificate    keys/сайт.crt;
        ssl_certificate_key keys/сайт.rsa;
                                             
        ssl_session_cache  shared:SSL:1m;   
        ssl_session_timeout 10m;             
     
    
     
    roof нравится это.
  6. ZiX

    ZiX Коддинг, Парсинг

    Moderator
    Регистр.:
    9 июл 2011
    Сообщения:
    1.387
    Симпатии:
    576
    таже проблема с isp 4 и 5.
    Нашли решение?
     
  7. Sergey$

    Sergey$ Создатель

    Регистр.:
    16 авг 2015
    Сообщения:
    17
    Симпатии:
    4
    На прошлой неделе как раз настраивал SSL под nginx+php5-fpm. Действовал по статье на хабре, по тестам получил рейтинг безопасности A,все заработало за 15 минут.
     
  8. Stesh

    Stesh

    Регистр.:
    3 фев 2009
    Сообщения:
    201
    Симпатии:
    70
    А что мешало получить A+?
     
  9. Libert

    Libert

    Регистр.:
    11 сен 2010
    Сообщения:
    158
    Симпатии:
    59
    http://habrahabr.ru/company/yandex/blog/258673/ - вот это рекомендую к прочтению тем, кто хочет А+ получить в тестах ssllabs (если вопрос кому-либо актуален ещё конечно)