Как установить SSL сертификат на свой веб-сервер (Apache2, Nginx). Сделать это можно так. По уровню проверки

Главная / Суд

С помощью которого вы можете располагать сайты в сети Интернет, работать с большим стеком протоколов, создать собственный файл-сервер и использовать многие другие возможности продукта. Управление возможно как из приложения рабочего стола - для новичков, так и из консоли - для опытных системных администраторов. Установка данного свидетельства на сервер позволит и повысит уровень доверия клиентов. В нашей инструкции мы подробно рассмотрим этот процесс.

Работа с панелью управления

После заказа SSL-сертификата через , необходимо установить полученные сертификаты .CRT и .CA на сервер

После успешного заказа SSL-сертификата файлы для его установки появятся в (меню SSL ):

Установка сертификата Центра Сертификации (.CA) на IIS 8

Шаг 1

Откройте командную строку (Win+R) и наберите в ней mmc для открытия Корня консоли (Microsoft Management Console) .

Шаг 2

В открывшемся окне Консоль1 (Console1) , откройте меню Файл (File) и выберите пункт Добавить или удалить оснастку (Add/Remove Snap-in) .

Шаг 3

В левой части открывшегося окна выберите пункт Сертификаты (Certificates) и нажмите кнопку Добавить (Add) по центру экрана.

Шаг 4

В открывшейся Оснастке диспетчера сертификатов (Certificates Snap-in) выберите пункт Учетной записи компьютера (Computer Account) .

Шаг 5

Во вкладке Выбор компьютера (Select Computer) выберите Локальный компьютер (Local Computer) и нажмите Готово (Finish) .

Шаг 6

Закройте оснастку Add or Remove Snap-in нажатием кнопки ОК.

Шаг 7

В той же Консоли 1 (Console 1) выберите пункт , кликните на него правой кнопкой мыши - Все задачи (All tasks) - Импорт (Import) .

Шаг 8

В открывшемся окне нажмите Далее (Next) ..CA-сертификата и нажмите Открыть (Open) .

Шаг 9

В следующей вкладке выберите Поместить все сертификаты в следующее хранилище (Place all certificates in the following store) , нажмите Обзор (Browse) и выберите директорию Промежуточные центры сертификации (Intermediate Certification Authorities) .

Шаг 10

Нажмите OK и завершите Мастер импорта сертификатов.

Шаг 11

Закройте Консоль 1 (Console 1) , ответив Нет на запрос о сохранении изменений.

Установка SSL-сертификата сайта (.CRT) на IIS 8

Шаг 1

Запустите Диспетчер Серверов (Server Manager) .

Шаг 2

В меню Средства (Tools) выберите Диспетчер служб IIS (Internet Information Services Manager).

Шаг 3

В меню Подключения (Connections) в левой части открывшегося окна выберите сервер, для которого вы ранее генерировали CSR-запрос на подпись сертификата.

Примечание: CSR - Code Signing Request, запрос на выдачу SSL-сертификата.

Шаг 4

В центральной части окна откройте меню Сертификаты Сервера (Server Certificates) .

Шаг 5. Для файла.CRT выполните следующие действия:

В панели Действия (Actions) в правой части окна выберите пункт Запрос установки сертификатов (Complete Certificate Request) .

В открывшемся окне заполните поля:

Примечание: Для сертификатов Wildcard (сертификата для домена и его поддоменов) укажите имя, соответствующее значению Common Name , из SSL-сертификата. (напр., *.mydomain.com).


Шаг 6. Для сертификата.PFX выполните следующие действия:

В панели Действия (Actions) в правой части найдите пункт Импортировать (Import) .

В открывшемся окне введите путь до сертификата и пароль защищающий ваш сертификат из панели управления, выберете хранилище.

Шаг 7. Действия для файлов.CRT и.PFX

В меню Подключения (Connections) в левой части окна Диспетчера IIS выберите сервер, для которого только что установили SSL-сертификат. Раскройте список сайтов на сервере и выберите сайт, который вы хотите защитить с помощью SSL-сертификата (эта процедура называется Привязка (Binding)). В панели Действия (Actions) в правой части окна выберите Привязки (Bindings) .

Шаг 8

В открывшемся окне нажмите Добавить (Add) , и заполните необходимые поля:

Примечение: для привязки Wildcard сертификата необходимо отдельно привязать каждый поддомен (напр., www.mydomain.com, subdomain.mydomain.com)

  • Тип (Type): https;
  • IP-адрес (IP address): все неназначенные или IP адрес сервера, на котором расположен веб-сайт;
  • Имя узла (Hostname): укажите доменное имя, для которого выпущен сертификат (напр., www.mydomain.com);
  • Порт (Port): 443;
  • SSL-сертификат (SSL certificate): выберите загруженный из панели 1cloud файл .CRT-сертификата .

Шаг 9

В панели Управление веб-сайтом (Manage Web-Site) в правой части окна Диспетчера IIS нажмите Перезапустить (Restart) для завершения процесса установки сертификата.

На этом процедура установки SSL-сертификата на веб-сервер IIS 8 завершена. Для проверки корректности установки перейдите на ваш веб-сайт, используя префикс https:// (напр., https://mydomain.com). Если сертификат установлен правильно, вы увидите замок в адресной строке браузера без отображения ошибок SSL-сертификата. При нажатии на иконку замка будет отображена информация о приобретенном вами SSL-сертификате.

Чтобы настроить SSL сертификат, один из наших клиентов, Алексей, следовал пошаговому руководству, и, казалось, все прошло хорошо. Но позже начали появляться негативные последствия, например, длительное время загрузки, частичная недоступность веб-сайта. Все это очень расстроило Алексея, так как от установки SSL сертификата он ожидал только улучшение работы своего веб-проекта. Наша поддержка решила разобраться с ошибками конфигурации и помочь Алексею на самом деле защитить данные посетителей его сайта.

Если настроить SSL неверно, пользы не будет даже от наилучшего сертификата

Следуя политике безопасности информации, Алексей решил защитить свой веб-проект, в т.ч. зашифровать передаваемые данные с помощью SSL сертификата. И хотя это не интернет-магазин и не финансовое учреждение, все же на сайте имеется область регистрации и авторизации в личный кабинет, где обрабатываются заказы. Так как пользователи здесь оставляют свои контактные данные, шифрование давало Алексею не только конкурентное преимущество, но и действительно было необходимо для защиты информации пользователей.

Алексей выбрал SSL сертификат от поставщика, обещавшего самый высокий уровень защиты за несколько кликов. Изучив информацию, Алексей понял, что простого сертификата с проверкой только домена будет недостаточно. Он выбрал решение среднего класса и заказал SSL сертификат с проверкой компании. Ранее мы уже рассматривали разные уровни валидации .

Пройдя проверку и получив файлы сертификата, Алексей взялся за его установку. Он шаг за шагом следовал руководству по установке. Но что-то пошло не так… Страница начала загружаться медленней, временами была недоступной, и, как выяснилось в тесте от Qualys SSL Labs, не была действительно защищенной. Что же произошло?

Ошибки конфигурации из-за устаревшего руководства

Алексей связался с нами и прислал результаты теста SSL-сервера, так как ему они были не совсем понятны. Мы также попросили Алексея прислать нам руководство, по которому он устанавливал SSL сертификат. При этом оказалось, что в инструкции не учитывалось актуальное положение в дел в области безопасности, в связи с чем многие пользователи оставались в опасности, даже с установленным сертификатом.

Например, в инструкции отсутствовало указание, что нужно отключить SSL 3-й версии. Уже давно известно о небезопасности протоколов шифрования SSLv3 и RC4, и существует достаточно альтернатив для них. В октябре 2015 года поисковый гигант Google решил попрощаться с этими небезопасными стандартами. Поэтому мы посоветовали Алексею отключить эти SSL-протоколы и использовать TLS в версиях 1.0, 1.1 и 1.2.

Конфигурация SSL при обмене ключами

Далее мы объяснили Алексею, что срок действия сертификата, доверенность центра сертификации, а также используемые алгоритмы хэширования также влияют на оценку. Алексей выбрал очень хороший SSL сертификат, поэтому к достижению хорошей оценки оставалось всего несколько шагов. На самом деле, сертификаты EV с расширенной проверкой оцениваются выше, это Алексей знал и ранее, но позволил себе сэкономить. Тем не менее, он проследил, чтобы при выпуске сертификата использовался длинный приватный ключ, который он сам хранит на защищенном компьютере. Алексей защитил сертификатом имена пользователей и пароли, как он и планировал. Но ошибки в настройке SSL могут сделать даже наилучший сертификат бесполезным.

Cookies также следует защищать

Алексей решил использовать файлы Cookies. Он добавил соответствующее предупреждение для посетителей сайта и указал на использование этого технологии в Политике конфиденциальности.

Тем не менее, он не заметил одну деталь: файлы cookies также необходимо защищать, в противном случае возрастает возможность проведения MITM-атаки. С помощью специальных флагов можно установить, будут ли cookies передаваться по защищенному HTTPS-соединению или по незащищенному HTTP-соединению.

Если не установить флаги безопасности, происходит следующее: пользователь обращается к вашему сайту по HTTPS и cookie начинает свою работу, т.е. отслеживает действия этого пользователя. Позже, посетитель возвращается, но на этот раз он обращается к сайту по HTTP. Cookie по-прежнему отправляется к веб-приложению. В такой ситуации злоумышленник может отследить cookie, выдать себя за пользователя, и свободно действовать от его имени.

Использование HSTS для устранения ошибок

Как мы видим, возможность управлять зашифрованными сайтами через HTTP, то есть по незащищенному каналу, открывает большую дыру в безопасности. Эту проблему можно решить с помощью механизма HSTS. HSTS (сокращенно от «HTTP Strict Transport Security») – это технология, которая принудительно активирует защищенное HTTPS-соединение. Все современные браузеры используют HSTS как стандарт. Активированный HSTS устанавливает, что (HTTP-)сервера должны использовать защищенное соединение. Также HSTS-стандарт обязывает прикладные программы взаимодействовать с сайтом только по зашифрованному каналу. В двух словах: HSTS предотвращает использование HTTP и активирует HTTPS-соединение.

OCSP для увеличения секретности

SSL сертификат Алексея содержит URL-адрес ответчика OCSP , которым управляет центр сертификации, выдавший SSL сертификат. Этот URL-адрес проверяется браузерами при установлении соединения с сайтом по протоколу HTTPS, чтобы определить, не отозван ли сертификат. Таким образом, можно исключить его неправомерное использование. После того, как соединение с веб-сайтом установлено, отправляется следующий запрос на OCSP-ответчик. Даже это краткое описание процесса показывает, что дополнительное соединение с ответчиком обеспечивает более высокий уровень секретности.

С помощью метода «OCSP-Степлинг» можно решить проблемы, вызванные OCSP. Через определенные промежутки времени, например, каждый час, веб-сервер получает OCSP-ответ о состоянии собственного сертификата. Этот ответ отправляется непосредственно браузеру пользователя при первичном рукопожатии. Соединение между браузером пользователя и OCSP-ответчиком с этой целью не требуется. Безопасность процесса обеспечивается тем, что ответ OCSP–ответ всегда подписан OCSP-ответчиком центра сертификации, и эту подпись проверяет браузер.

HPKP — пиннинг открытого ключа

Можно ли доверять сертификату из цепочки корневого и промежуточных сертификатов? Чтобы получить ответ на этот вопрос, используется процедура, называемая HPKP, сокращенно от HTTP Public Key Pinning. Пиннинг открытого ключа позволяет определить, когда открытый ключ сертификата был изменен для определенного хоста. Это может произойти со скомпрометированными сертификатами. Таким образом, HPKP становится механизмом, который проверяет подлинность сертификатов SSL/TLS.

Правильная настройка SSL сертификата: инструкции, которым можно доверять

Конечно же, инструкциям по установке доверять можно и нужно, но они должны быть актуальными. Следующие рекомендации из надежных источников помогут вам избежать ошибок:

  • используйте безопасное HTTPS-соединение для всех веб-сервисов;
  • автоматическое перенаправление: чтобы избежать незашифрованных обращений к серверу, настройте автоматическое перенаправление на HTTPS-версию;
  • библиотеки TLS: полагайтесь только на последние версии. При использовании TLS вы никого не исключаете, но если вы применяете незащищенный SSL, вы также включаете и потенциальных хакеров;
  • настройте HSTS, чтобы гарантированно исключить незашифрованные соединения. Это можно сделать двумя способами: во-первых, вы можете дополнить заголовок HSTS так, чтобы браузер обращался только к HTTPS-версии сайта. Во-вторых, вы можете поместить свой сайт в список предварительной загрузки HSTS. Он оповещает современные браузеры, что HTTP-обращения необходимо автоматически перенаправлять на HTTPS;
  • заказывайте SSL/TLS сертификаты только на доверенных сайтах;
  • лучше всего заказывайте SSL сертификаты с расширенной проверкой (

В этом посте пойдёт речь как установить SSL сертификат на свой веб сервер через isp manager и напрямую через apache2 или nginx . Так же в этом посте будет рассмотрен способ и сайт для генерации бесплатного SSL сертификата длительностью на 1 ГОД! Подробности под катом.
Как установить SSL сертификат
SSL сертификаты обеспечивают защиту от прослушивания информации между клиентом и сервером в Интернете.

Устанавливая SSL сертификат на ваш сайт, вы поднимете продажи вашего сайта и обезопасите ваших клиентов.

Для установки SSL Сертификата необходимо:

  1. купить отдельный айпи адрес для вашего сайта.
    2. получить SSL Сертификат
  2. сохранить закрытый ключ при генереации SSL Сертификата, начинается с (--BEGIN RSA PRIVATE KEY--)

Установка SSL Сертификата - ISPMANAGER

  1. в настройках домена добавьте доступ по протоколу SSL порт 443
  2. в меню SSL Сертификаты создать существующий сертификат
  3. в поле "Ключ"; необходимо добавить скопированный защитный ключ начинается с BEGIN RSA
  4. с поле "Сертификат"; необходимо добавить сертификат который пришел на email начинается с --BEGIN CERTIFICATE--
  5. в поле "Цепочка сертификатов"; необходимо добавить цепочку сертификатов обычно называется файл bundle, но может и не быть. Зависит от конкретной ситуации

Установка SSL Сертификата - APACHE 2

  1. выделите для домена отдельный ip адрес
  2. скомпилируйте apache с поддержкой ssl
  3. добавить в apache конфиг в разделе server virtualhost с портом 443:
NameVirtualHost ваш ip:443 ServerName ваш ip:443 ServerAlias www.вашдомен.com:443 SSLEngine on SSLCertificateFile /путь/cert.crt SSLCertificateKeyFile /путь/cert.key SSLCACertificateFile /путь/cert.bundle
  1. в файл cert.crt необходимо добавить сертификат который пришел на почту начинается с --BEGIN CERTIFICATE--
  2. в файл cert.bundle необходимо добавить цепочку сертификатов обычно называется файл bundle

Установка SSL Сертификата - NGINX

  1. выделите для домена отдельный ip адрес
  2. скомпилируйте nginx с поддержкой ssl ./configure -with-http_ssl_module
  3. добавить в nginx конфиг в разделе server следующие строки:
listen 443 default ssl; ssl_certificate /путь/ssl/cert.pem; ssl_certificate_key /путь/ssl/cert.key; ssl_client_certificate /home/ssl/cert.pem; ssl_verify_client off; ssl_ciphers ECDHE-RSA-AES256-SHA:AES256-SHA:CAMELLIA256-SHA:DES-CBC3-SHA; ssl_prefer_server_ciphers on; ssl_protocols TLSv1; ssl_session_cache shared:SSL:10m; ssl_session_timeout 5m;
  1. в файл cert.key необходимо добавить скопированный защитный ключ начинается с BEGIN RSA
  2. в файл cert.pem необходимо добавить сертификат который пришел на почту начинается с --BEGIN CERTIFICATE-- и добавить цепочку сертификатов обычно называется файл bundle

Это то что касается именно установки сертификата. Но вы спросите где его взять? Рассказываю как я получил сертификат сроком на 1 год для 1 домена бесплатно, причём этот сертификат считается доверенным, т.к. официальным и браузеры его принимают на ура!

Для начала перейдём на сайт https://www.startssl.com/ и там регистрируемся, для начала нажмём на фри сертификат, введём свои данные (имя фамилия, адрес проживания, телефон, почта).

На эту почту вам придёт код активации, вы его вводите, потом вводите домен, для которого хотите получить сертификат. Указываете почту администратора (создайте на вашем сервере почту с адресом из предложенных на их сайте, я создал у себя webmaster).

На эту почту вам придёт код, который нужно ввести в следующую форму, это необходимо чтоб подтвердить административный доступ к своему серверу.

После этого вы получите 2 файла, crt и key. Для того чтобы установить ключи на свой сервер через isp manager зайдите в раздел tools на сайте старт ссл, там выберите раскодирование файла ключа, откройте файл формата key в блокноте, скопируйте его содержимое и вставьте в большое поле, ниже введите пароль от этого ключа, который вы указали на этапе его формирования. на выходе вы получите раскодированный текст. Используйте его в качестве рса ключа в isp manager, там же введите пароль к этому ключу, который вы уже указывали ранее.

Перезапустите сервер на всякий случай и попробуйте открыть в браузере https адрес вашего сайта. Если у вас не будет ошибок сертификата - значит всё супер 🙂

Установка SSL сертификата

Для установки сертификата потребуется:

  • Файл сертификата и цепочка сертификата . Центр сертификации присылает эти данные на почтовый ящик владельца сертификата.
  • Ключ сертификата. Он у вас должен быть. Ключ генерируется перед заказом сертификата, на основе ключа генерируется csr запрос.
  • Root доступ к серверу.

Инструкция по установке SSL-сертификата на домен средствами панели ISPmanager

После выпуска заказанного сертификата, на email, который был указан при заказе, Вы получите все необходимые файлы.

1. Зайдите в ISPmanager под пользователем, которому принадлежит домен. Войдя под root"ом это можно сделать так: ISPmanager - Пользователи - выделите пользователя - нажмите "Вход" (справа вверху кнопка с изображением лестницы и двери).

Примечание: не забудьте для пользователя включить SSL (ISPmanager - Пользователи - двойной клик по пользователю - вкладка "Права")

2. В разделе World Wide Web - "SSL-сертификаты" - справа вверху кнопка "Создать". Укажите "Тип сертификата" - существующий и заполните все поля:

Имя сертификата - имя сертификата, под которым он будет отображаться в системе. Может содержать буквы латинского алфавита, цифры, точки, а также знаки _ и -

Приватный ключ - укажите содержимое файла приватного ключа

Сертификат - укажите содержимое файла SSL-сертификата

Пароль - указывайте, если ключ сертификата зашифрован (обычно не требуется)

Цепочка сертификатов - Certificate bundle: цепочка сертификатов, которыми подписан данный сертификат. Подробнее о цепочках, в зависимости от типа сертификата, можно узнать в специальной статье .

3. После успешного добавления сертификата в разделе "WWW домены" можно его включить для сайта (двойной клик - установить галочку "SSL" - выбрать из списка нужный сертификат)

4. Детальная проверка установленного сертификата доступна по ссылкам:

Ручная установка SSL сертификата

Веб-сервер Apache

Если ssl запросы обрабатывает Apache, то сертификат устанавливается в файле конфигурации Apache. Проверить какой веб сервис отвечает на 443 (ssl) порту можно командой:

  • Linux:
# netstat -napt | grep 443 tcp 0 0 188.120.233.16:443 0.0.0.0:* LISTEN 731/apache2
  • FreeBSD:
# sockstat |grep 443 root httpd 83299 19 tcp4 188.120.225.20:443 *:*

Для установки сертификата откройте конфигурационный файл Apache. На FreeBSD это /usr/local/etc/apache22/httpd.conf. Debian - /etc/apache2/apache2.conf. Centos - /etc/httpd/conf/httpd.conf. Найдите VirtualHost вашего домена.

Иногда вы можете найти блоки в отдельных файлах, в директории веб сервера.

Создайте блок для подключения SSL соединения. Пример:

DocumentRoot /var/www/user/data/www/domain.com ServerName domain.com SSLEngine on SSLCertificateFile /path/to/domain.crt SSLCertificateKeyFile /path/to/domain.key SSLCACertificateFile /path/to/ca.crt

  • /var/www/user/data/www/domain.com - путь до домашней директории вашего домена.
  • /path/to/ca.crt - файл корневого сертификата.

Перезапустите Apache командой apachectl restart или apache2ctl restart

Веб-сервер Nginx

Если ssl запросы обрабатывает Nginx, то сертификат устанавливается в файле конфигурации Nginx.

Откройте конфигурационный файл Nginx. На Linux - /etc/nginx/nginx.conf

Создайте серверный модуль для SSL соединения. Пример:

Server { listen 10.0.0.1:443; server_name domain.com; ssl on; ssl_certificate /path/to/domain.crt; ssl_certificate_key /path/to/domain.key ; }

  • domain.com - имя вашего домена.
  • 10.0.0.1 - ip адрес, на котором находится домен.
  • /path/to/domain.crt - файл, в котором находится сертификат.
  • /path/to/domain.key - файл, в котором находится ключ сертификата.

Цепочка сертификатов дописывается в файл с сертификатом.

Возьмем пример с Comodo Positive SSL. Центр сертификации присылает файлы domain.crt, PositiveSSLCA2 и AddTrustExternalCARoot. Цепочкой сертификата будет содержание файла PositiveSSLCA2 + AddTrustExternalCARoot. В итоге файл domain.crt должен содержать сертификат домена + сертификаты PositiveSSLCA2 + AddTrustExternalCARoot.

Перезапустите Nginx

  • Linux:
/etc/init.d/nginx restart

Несколько SSL сертификатов на одном ip адресе

Если используется несколько сертификатов на одном ip адресе, то браузер получит сертификат сервера по умолчанию, независимо от запрашиваемого имени сервера. Это связано с поведением протокола SSL. SSL-соединение устанавливается до того, как браузер посылает HTTP-запрос, и веб сервер не знает имени запрашиваемого сервера. Следовательно, он лишь может предложить сертификат сервера по умолчанию.

Решение для работы нескольких HTTPS-серверов на одном IP-адресе - расширение Server Name Indication протокола TLS (SNI, RFC 6066), которое позволяет браузеру передать запрашиваемое имя сервера во время SSL handshake, а значит сервер будет знать, какой сертификат ему следует использовать для соединения. Почти все современные браузеры поддерживают SNI, однако чтобы использовать SNI, соответствующая поддержка должна присутствовать также в библиотеке OpenSSL. OpenSSL поддерживает SNI начиная с версии 0.9.8f.

Полезные команды Openssl

  • Создание ключа для SSL-сертификата.
openssl req -batch -noout -new -newkey rsa:2048 -nodes -keyout cert.key
  • Генерация CSR-запроса:
openssl req -new -key cert.key -out cert.csr
  • Убрать пароль с ключа:
openssl rsa -in cert.key -out cert.key
  • Посмотреть данные CSR:
openssl req -noout -text -in cert.csr
  • Данные сертификата (проверить кем выдан, например):
openssl x509 -noout -text -in cert.crt
  • Проверить, что ключ соответствует сертификату:
openssl x509 -noout -modulus -in cert.crt | openssl md5 openssl rsa -noout -modulus -in cert.key | openssl md5

Два значения должны совпадать.

  • Узнать длину запроса:
echo "(" `openssl req -noout -modulus -in cert.csr | cut -d"=" -f2 | wc -c` "-1)*4" | bc
  • Проверить выдачу HTTPS:
openssl s_client -host ulanovka.ru -port 443

Создание CSR запроса для Microsoft IIS

  • Нажмите на имя сервера.
  • Затем справа из меню Actions выберите Create Certificate Request. Откроется окно мастера создания запроса.

  • Введите всю необходимую информацию.

Нажмите Next.

  • В следующем окне можно все оставить без изменений. Нажмите Next.
  • Введите имя вашего CSR файла.

  • Откройте файл, используя текстовый редактор. Для оформления сертификата передайте свой CSR вместе с тэгами BEGIN и END.

Установка SSL сертификата на Microsoft IIS

  • Нажмите Start - Administrative Tools - Internet Information Services (IIS) Manager.
  • Нажмите на имя сервера.
  • В разделе IIS откройте Server Certificates.
  • Затем справа из меню Actions выберите Complete Certificate Request. Откроется окно мастера.

  • Загрузите выданный Вам центром сертификации сертификат. Затем введите имя сертификата (оно необходимо только администратору для дальнейшей работы).

  • Нажмите Оk, и сертификат будет установлен на сервер.
  • Для того, чтобы установить данный сертификат на нужный веб-домен, перейдите в раздел Sites и выберите сайт, для которого заказан сертификат. Из меню Actions в правой части страницы нажмите на Bindings. Откроется окно Site Bindings.

  • В окне Site Bindings нажмите Add... Откроется окно Add Site Binding.

  • В меню Type выберите https. В меню IP address должен быть IP адрес сайта или All Unassigned. Порт - 443. В поле SSL Certificate выберите Ваш сертификат.

Нажмите Ok.

  • Ваш сертификат установлен.

При разработке сайта, который работает с личными данными, безопасность должна быть первым приоритетом. Это правило важно не только для интернет-магазинов, но и также для популярных социальных сетей вроде Вконтакте и Фейсбук

SSL представляет собой защищенный протокол наподобие HTTP, так как он способен получать и передавать данные по интернету.

Сама концепция слегка запутана, в принципе ее несложно понять. Если вы владеете сайтом или просто хотите узнать больше о SSL-сертификатах, то это руководство идеально подойдет вам. Сегодня, я постарался собрать вместе самые непонятные термины, и рассказать о них новичкам. Уделите немного времени на прочтение данной статьи, а также не забудьте провести небольшое собственное исследование на данную тему. Безопасность – это неотъемлемый аспект в достижении успеха любого проекта, и SSL представляет собой всего лишь малую часть из всех средств для достижения успеха.

Что такое SSL?

SSL расшифровывается как Secure Socket Layers – протокол безопасности, изначально разработанный компанией Netscape. Это процесс, в котором передача данных между пользователем и сервером происходит в зашифрованном виде, и третьей стороне не удастся подключиться к этому процессу.

Работает по принципу цифрового паспорта, который подтверждает данные как пользователя, так и конечного веб-сервера. Когда обе личности подтверждены, SSL гарантирует защищенное соединение посредством HTTP. Этот процесс производится с использованием сертификатов. Я попытался разложить по полочкам ключевые аспекты, которые включают:

  • Имя владельца
  • Серийный номер для идентификации
  • Дата истечения срока службы сертификата
  • Общий ключ, использующийся для шифрования информации
  • Персональный ключ сертификата, использующийся для расшифровки (обычно этот ключ предоставляется веб-сервером)

Вам не обязательно полностью понимать применение этого всего. В некоторых случаях вы можете получить сертификат даже с большим количеством информации. И при этом ничто из этой информации не влияет на пользователя; она влияет только на соединение между сервером и удаленным компьютером.

Как установить SSL сертификат

Вы наверняка поймете, как работает SSL. Это более комплексная форма передачи данных, нечто вроде передачи сообщения в закрытый сейф. Вам не обязательно запоминать это или знать, каким образом он соединяется с сервером, но было бы неплохо как минимум понимать основу рабочего процесса перед получением собственного сертификата.

Их получают у разных надежных (и не всегда) провайдеров в интернете. У каждого сертификата есть дата истечения срока службы, что означает, что вам нужно будет обновлять его, чтобы сохранять сайт в безопасности (обычно это происходит каждый год). Этот процесс кажется нудным, но к счастью большинство продавцов помогут вам в процессе настройки.

Сначала вам нужно сгенерировать CSR или Certificate Signing Request. CSR нужен до того, как вы сможете получить какой-либо SSL-сертификат. Вы можете создать его самостоятельно, если у вас есть административные привилегии на веб-сервере. Тем не менее, рекомендуется связаться с хостером, так как в большинстве случаев, они не позволяют клиентам делать это самостоятельно. На самом деле, в этом нет ничего плохого, это даже облегчит задачу.

После того, как у вас появится зашифрованный CSR, вы можете связаться с провайдером. Существует множество проверенных профайлов вроде Verysign и Thawte. Лично я пользовался этой страницей с рекомендациями, где можно подобрать себе идеальное решение. Как только вы приобретете сертификат, просто свяжитесь с технической поддержкой, и они без труда установят для вас сертификат.

Различные типы сертификат

В большинстве случаев установка производится на ваш личный IP-адрес. Он будет применен только к доменному имени или веб-серверу. Не у всех есть средства на покупку выделенного хостинга, но к счастью для всех нас, есть и другие доступные решения.

В общем, существует 3 разных типа SSL-сертификатов, которые вы можете купить. Некоторые провайдеры предлагают бесплатные в качестве пробного варианта, но даже такие сертификаты в любом случае более безопасны, нежели HTTP-соединения.

  • Dedicated – это наиболее защищенный тип, который при этом и самый дорогой. HTTPS-соединение – это единственное проверенное соединение для вашего доменного имени, определяемого по указанному ip-адресу.
  • Shared – веб-хостинги, которые предлагают общие хостинги, порой имеют несколько доменных имен, указывающих на единый ip-адресс. В данном случае для хостера будет гораздо проще организовать соединение на каждом сервере, содержащем массив разных веб-сайтов.
  • Wildcard– Эти немного схожи с выделенными или общими SSL-сертификатами, судя по конфигурации сервера. Wildcard будут определять несколько субдоменов. Это очень хорошее решение, если вы разделяете ваш сайт на разные поддомены.

Если вы только начинаете, то я настоятельно рекомендую вам воспользоваться общим SSL. Это в том случае, если вы не можете позволить себе выделенный хостинг или ip-адрес. И даже если можете, стоимость выделенного SSL-сертификата просто ужасает. Но вы все же можете рассмотреть этот вариант, если хотите. Тем не менее, так как это руководство направлено на начинающих, мне кажется, обычного будет больше чем достаточно для начала.

Пошаговое руководство по получению

Лучшим способом научиться – это попробовать. Давайте попробуем изучить предложение от Comodo от Namecheap. У них очень разумный ценник, который идеально подойдет новичкам. И так как нам нужно лишь пройти через этот процесс, этот материал отлично подойдет для целей сегодняшнего руководства.

Генерируем CSR

Чтобы начать, нам нужно создать запрос авторизации на внутреннем интерфейсе нашего сервера. Каждая хостинг-компания отличается друг от друга, но вы всегда можете связаться с технической поддержкой, если возникнут какие-либо проблемы. Этот инструмент можно использовать для генерации CSR .

Обратите внимание на то, что большая часть этой информации должна совпадать с Whois моего доменного имени. Я использую сервис whois-service.ru который позволяет получить всю информацию для данной формы. Если у вас установлены какие-то другие настройки приватности доменного имени, то вам следует брать собственные данные, чтобы CSR совпадал.

Покупка сертификата

Тарифы в Comodo варьируются от 450 рублей в год до практически 4 тысяч. Я предпочитаю пакет EssentialSSL, который обходится всего в 1300 руб в год. Это не такой и плохой вариант, если учитывать другие варианты.

Данный план предусматривает возможность вернуть деньги в течение 15 дней, если вы будете не удовлетворены сертификатом. К тому же, ваше доменное имя будет защищено и на уровне субдоменов и даже при отсутствии www. После того, как мы добавили этот пакет в корзину, можно переходить к процедуре оплаты.

После ввода всех необходимых данных аккаунта, вы будете перемещены на финальную страницу проведения оплаты. У нас есть возможность оплатить пакет при помощи средств, имеющихся на балансе аккаунта, при помощи кредитной карты или платежных систем. Если все будет сделано правильно, вы будете перенаправлены на формы подтверждения заказа (вы также получите на email).

Финальная установка

CSR должен быть представлен в электронном письме, полученным от хостера. Ключ больше похож на блок перемешанных символов и ключевиков. Это нам и потребуется для того, чтобы провести подтверждение SSL. Вернувшись обратно, давайте отыщем страницу SSL-сертификатов и нажмем Активировать.

На этой странице нам нужно выбрать тип сервера и ввести CSR-ключ. Я выбрал Apache+OpenSSL. Это стандартная настройка для Apache, но если вы не уверены, просто перепроверьте эти настройки. Учтите, что вам веб-хостер должен вернуть вам еще более длинный RSA-ключ, который нужен для приватной аутентификации во внутренний интерфейс сервера. Все что нам нужно, это скопировать и вставить короткий CSR-ключ в блок и подтвердить ввод.

Затем мы генерируем email, отправленный к «арендодателю» доменного имени. Это письмо будет содержать информацию о вашем SSL-сертификате, а также о том, как активировать его на хостинге. В этой последней форме подтверждения нам понадобится секретный RSA-ключ, а также некоторая дополнительная информация из SSL-пакета.

Также следует отметить, что на некоторых хостингах у вас может не работать SSL при использовании общих ресурсов сервера. Рег.ру позволяет обновлять собственные аккаунты до отдельных IP-адресов, чтобы у них не возникало проблем. Форма установки SSL-сертификата довольно проста, и на ее подтверждение у вас не уйдет много времени.

После того, как ваш хостер подтверждает все предоставленные данные, все должно быть готово. Вы должны понимать, что это может занимать до нескольких часов, и даже дней. Будьте терпеливыми и не забывайте проверять электронную почту. Как только запрос будет подтвержден, попробуйте зайти на сайт посредством HTTPS, и тогда все подробности должны быть отображены в адресной строке. Всегда сложно делать что-то в первый раз, поэтому не бойтесь задавать вопросы и тому, кто предоставил вам SSL-сертификат.

Управляем защищенным соединением

Хочу предложить вам ознакомиться с этой статьей от поддержки Рег.ру которая поможет вам понять процесс. Даже если вы не являетесь клиентом рег.ру, вы все равно в большинстве случаев будете пользоваться cPanel для управления практически любым удаленным веб-сервером.

Главное преимущество в том, чтобы делать настройку на стороннем хостинге заключается в том, что вам не нужно будет вносить никаких (или по крайней мере совсем малость) изменения в код! После того, как вы приобретете сертификат, большинство хостеров с любезностью установят их для вас. После того, как все будет сделано, работа вашего сайта как посредством HTTP, так и посредством HTTPS будет практически идентичной.

Вы можете проверить, был ли аутентифицирован сертификат, просто введя адрес вашего проекта в адресную строку браузера. Вы увидите небольшую иконку замка, которая указывает то, что между компьютером и удаленным веб-сервером было установлено защищенное соединение. Некоторые браузеры позволяют даже просмотреть сертификат, если вы кликните по иконка замка.

Редиректы.htaccess в Apache

Если вы испытываете какие-то проблемы, удерживая посетителей на протоколе HTTPS, то возможно вам следует рассмотреть вариант с использованием скрипта перенаправления. Обычно, на серверах Apache, это реализуется при помощи файла.htaccess, который многие веб-хостинги позволяют вам настраивать прямо в cPanel.

Ниже я привел примерный код, который вы можете взять для настройки собственного файла.htaccess. Он позволит вам перенаправлять весь входящий трафик на https:// с субдоменом www. Вы можете убрать www, чтобы весь трафик перенаправлялся.

RewriteEngine On RewriteCond %{HTTPS} = off RewriteRule ^(.*)$ https://www.yourdomain.com/$1 RewriteCond %{http_host} ^yourdomain.com RewriteRule ^(.*)$ https://www.yourdomain.com/$1

RewriteEngine On RewriteCond %{HTTPS} = off RewriteRule ^(.*)$ https://www.yourdomain.com/$1 RewriteCond %{http_host} ^yourdomain.com RewriteRule ^(.*)$ https://www.yourdomain.com/$1

Дополнительные файлы

Самая надоедливая проблема, с которой вы столкнетесь, заключается в указании абсолютных URL вместо относительных. Это не позволит вам отображать полностью защищенное соединение, отчего будет отображаться предупреждение об использовании «незащищенных элементов» на странице. Если вы отобразите какие-то внешние медиаресурсы: видео, изображения, каскадные таблицы, то это следует сделать локально. Ниже я привожу пример:

"http://www.domain.com/css/styles.css" rel ="stylesheet" media ="all" type ="text/css" />

В первом отрывке кода вы загружаете потенциально незащищенный документ в защищенную страницу. Это именно тот метод, посредством которого хакеры могут обойти шифрование. В большинстве случаев, я провожу парсинг через javascript или VBScript. Но дабы обезопасить себя, убедитесь, что ни одна процедура (ни один элемент) не проходит напрямую через HTTP.

Если вы по какой-либо причине вам нужно отобразить файл используя абсолютный URL, то используйте вместо этого HTTPS. Если у вас есть файлы, размещенные на внешних веб-сайтах или серверах, это может привести к проблемам, так как вы не сможете подтверждать безопасность других HTTPS-соединений. Старайтесь держать все медиафайлы на одном IP-адресе, тогда у вас получится избежать подобных проблем.

В завершение

Надеюсь, этот вводный курс от сайт пролил свет на мир SSL. Веб-безопасность – это развивающаяся индустрия, которая позволяет обезопасить личные пользовательские данные. Все популярные интернет-магазины, включая используют SSL уже долгие годы, чтобы .

Я признаю, что это на тема, которую можно прочесть и полностью понять. Как и программирование, здесь важно окунуться с головой в документацию, и обязательно провести собственные эксперименты. Конечно же, это довольно нудное и скучное занятие, но в долгосрочной перспективе это даст вам большое преимущество. Если вы знаете какие-либо полезные руководства на эту тему, то обязательно поделитесь ссылками с другими читателями в комментариях!



© 2024 solidar.ru -- Юридический портал. Только полезная и актуальная информация