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

Приветствую вас, друзья! 🙂

В сегодняшней статье будет рассмотрена установка SSL сертификата. Мы поговорим о том, как создать SSL сертификат самому и подключить его к сайту для осуществления обмена информацией с пользователями по защищённому протоколу HTTPS.

Сразу скажу, что установить SSL сертификат на сайт можно двумя путями: через интерфейс панели управления сервером и с помощью ручного копирования файлов сертификата с последующими настройками веб-сервера (Apache или Nginx) в случае, если ваш хостинг не имеет графической панели управления.

Информация по установке SSL сертификата будет представлена в виде пошаговой инструкции, при составлении которой я воспользовался первым способом и своим хостингом TheHost , к панели управления которого (используется ISPManager) у меня есть доступ.

TheHost позволяет как устанавливать SSL сертификаты, приобретённые у него, так и выполнять подключение SSL сертификата, приобретённого у других поставщиков.

Также в панели управления хостингом есть возможность сделать бесплатный SSL сертификат от Let’s Encrypt и самоподписанный с последующей их установкой.

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

Поехали 🙂

Как установить SSL сертификат на сайт: этапы

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

Если говорить о том, как подключить SSL сертификат к сайту, то весь процесс состоит из нескольких этапов:

  1. Генерация SSL сертификата. Заключается в создании самоподписанного сертификата на сервере самостоятельно либо в формировании запроса на выпуск данного документа в центр сертификации (CA).
  2. Подключение SSL сертификата к сайту.

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

Итак, рассмотрим каждый этап подробнее, начиная с создания SSL сертификата.

Создание SSL сертификата

Поскольку все сегодняшние действия будут производиться на хостинге TheHost, то сперва нужно создать учётную запись, чтобы они были возможны.

Для этого регистрируемся на сайте thehost.ua, после чего вам на электронную почту придёт письмо с учётными данными пользователя, а также ссылкой на кабинет пользователя и панель управления хостингом.

Как я уже сказал, SSL сертификаты можно создавать разные и различными способами. Начнём с самого простого с технической точки способа, который потребует от вас минимума знаний.

Как заказать SSL сертификата на хостинге?

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

Во-первых, сгенерировать SSL сертификат данного типа сможет даже ребёнок: не нужно скачивать и запускать какие-то утилиты, а также вникать в тонкости того, как установить SSL сертификат на сервер.

Всё, что от вас потребуется — просто ввести нужную информацию о сайте и свои персональные данные. Создание и установка SSL сертификата на сайт произойдёт автоматически.

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

Официальные регистраторы, насколько я знаю, таким покупателей не балуют.

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

И не дай Бог вам забыть это сделать — пользователи ваш сайт вообще не увидят, а только лишь сообщение об угрозе безопасности на весь экран браузера.

Чтобы сделать заказ, сперва нам нужно зайти в кабинет пользователя через сайт thehost.ua либо по ссылке, содержащейся в письме, сгенерированном при регистрации. После того, как войдёте в систему, выберите пункт бокового меню «SSL сертификаты» и нажмите кнопку «Заказать» вверху страницы.

После проделанных действий на экране появится диалоговое окно, которое выглядит так:

Здесь нам нужно выбрать тип SSL сертификата, который вы хотите купить и срок его действия. Цена услуги, естественно, будет зависеть от этих двух параметров.

Более подробно о доступных SSL сертификатах, которые можно заказать через TheHost, можете прочитать здесь — https://thehost.ua/services/ssl

Сразу скажу, что у данного провайдера цены на сертификат безопасности SSL начинаются от 7$ за год использования, чего я не встречал больше ни у кого на данный момент.

В зависимости от того, какой тариф вы выберете, у вас могут присутствовать или отсутствовать некоторые из приведённых далее шагов. Имейте ввиду!

После выбора необходимого тарифа нажимаем Далее и переходим к следующему шагу создания SSL сертификата:

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

Запрос должен быть в виде файла с вашими зашифрованными персональными данными с расширением csr .

Если вы его уже сгенерировали (а о том, как это сделать прямо в ISPManager админки TheHost, я расскажу вам дальше), то на данном шаге просто введите его содержимое.

Для этого нужно выбрать для пункта «Способ ввода CSR» значение «Ввод имеющегося CSR», которое выбрано по умолчанию.

Если же такового файла у вас ещё нет или формат вашего запроса был не принят, то сгенерировать его можно здесь же, не вникая в подробности.

Для этого выберите в качестве способа ввода CSR в выпадающем списке значение «Генерация CSR и Private key».

При этом данное диалоговое окно примет следующий вид:

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

О том, какие данные следует вводить и откуда их брать, вы можете прочитать в статье о том, .

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

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

На следующем шаге от нас снова требуется ввод контактной информации администратора и технической поддержки, с которыми могут связаться представители CA для подтверждения информации, введённой в заявке на выпуск SSL сертификата:

Следующим этапом является ввод email, на который будет высылаться ссылка для подтверждения генерации SSL сертификата:

Если у вас нет готового email, присутствующего среди вариантов выпадающего списка, то заведите его.

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

Что вполне справедливо, т.к. TheHost сам сертификат не выпускает, а заказывает его у официальных сертификационных центров.

Ну, и на финальном этапе от вас потребуется выбрать способ оплаты и срок продления SSL сертификата, на который он будет автоматически выпускаться при истечении своей действительности:

Нажимаем на Готово и всё, что теперь остаётся — это дождаться запроса подтверждения выпуска SSL сертификата из центра сертификации и самого сертификата.

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

Создание самоподписанного SSL сертификата

Итак, как сделать заказ генерации SSL сертификата у официальных центров сертификации, я вам показал.

Однако, бывают ситуации, когда нужны и другие виды сертификатов. Например, для тестирования настроек движка сайта для HTTPS передачи данных на локальном сервере и тестовом домене.

В таком случае вполне подойдёт бесплатный самоподписанный SSL сертификат, который создать у TheHost можно за считанные секунды.

Для этого заходим в ISPManager по ссылке из письма, пришедшего при регистрации на thehost.ua, либо в панель управления сервером можно попасть прямо из кабинета пользователя следующим способом:

Если вам плохо видно изображённое на картинке, то для перевода в ISPManager из кабинета пользователя нужно выбрать пункт меню «Хостинг», выбрать необходимый сервер (может быть несколько в одной учётке юзера) и нажать на кнопку «На сервер», которая становится доступной после выбора сервера.

Находясь в ISPManager, выбираем пункт меню SSL сертификаты и нажимаем на кнопку «Создать в самом» верху страницы.

В появившемся диалоговом окне выбираем для поля Тип сертификата значение «самоподписанный», после чего окно примет следующий вид:

Вводим необходимую информацию, аналогичную той, которую мы указывали при оформлении SSL сертификата в CA, после чего нажимаем «ОК».

Сертификат появится в списке существующих SSL сертификатов.

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

Минусом же выступает то, что он не обеспечивает безопасность данных, что помечается в браузерах и отпугивает ваших клиентов.

Подключение SSL сертификата, оформленного в другом месте

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

Сделать это можно в том же диалоговом окне, которое использовалось для создания самоподписанного SSL сертификата.

Только для добавления на сервер TheHost существующего документа нужно будет в поле «Тип сертификата» выбрать значение «существующий», после чего всё диалоговое окно примет следующий вид:

Вводим информацию, содержащуюся в вашем готовом SSL сертификате для домена, в соответствующие поля и нажимаем «ОК».

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

Создание запроса SSL сертификата у CA

Ну, и ещё одной возможностью, доступной в данном диалоговом окне создания SSL сертификата, является генерация запроса на выпуск данного документа в центре сертификации.

Данная возможность вам может пригодиться, как уже говорилось ранее, при заказе SSL сертификата не через своего хостинг провайдера, а через других, в том числе и при обращении в CA
напрямую.

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

Наиболее распространённой является OpenSSL, которая доступна как под Linux, так и под Windows благодаря CygWin или использованию других эмуляторов консоли Linux (та же самая командная строка Git поддерживает Linux команды или утилита PuTTY).

Также есть масса онлайн генераторов запросов на выпуск SSL сертификата. Вот наиболее популярные из них:

  • https://www.rapidsslonline.com/ssl-tools/csr-generator.php
  • https://csrgenerator.com/
  • https://www.ssl.com/online-csr-and-key-generator/

Также, данные генераторы предоставляют все официальные сертифицирующие центры и многие хостинг провайдеры.

Есть такой и у TheHost, который доступен в данном окне.

Чтобы его запустить, выбираем в поле «Тип ключа» значение «Запрос», после чего диалоговое окно примет следующий вид:

Вводим необходимую информацию и нажимаем ОК. После этого на сервере TheHost сгенерируются файлы csr и key, которые вы сможете в дальнейшем использовать для выпуска сертификата.

Чтобы можно было использовать их содержимое, вам нужно будет выбрать запись с типом «Запрос» в списке всех SSL сертификатов в панели управления хостингом TheHost и нажать кнопку «Скачать» в самом верху экрана, после чего вам на компьютер будет загружен архив с указанными файлами.

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

Как получить бесплатный SSL сертификат Lets Encrypt?

Ну, и напоследок я решил оставить обзор способа создания самого нужного и востребованного у большинства вебмастеров варианта SSL сертификата для домена, который существует у TheHost.

Речь идёт о генерации бесплатного SSL сертификата LetsEncrypt, создать который можно за считанные секунды.

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

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

Итак, чтобы создать SSL сертификат от Lets Encrypt, заходим на страницу «SSL сертификаты» в ISPManager и нажимаем на кнопку «Lets Encrypt», после чего откроется следующее диалоговое окно:

Выбираем из списка домен, для которого сертификат будет выпускаться, и нажимаем «ОК».

После этого, без всяких лишних вопросов, сертификат добавится в список. Если просмотреть информацию, содержащуюся в нём (нужно выбрать сертификат и нажать на кнопку «Информация»), то можно увидеть следующее:

Как видите, для всех LetsEncrypt SSL сертификатов TheHost указывает абсолютно идентичную информацию, упрощая и ускоряя процедуру их выпуска.

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

Отсутствие персональных данных владельца в нём может серьёзно насторожить их, а для некоторых может даже послужить сигналом отказа от использования данного сайта.

Итак, создание SSL сертификата, я надеюсь, прошло у вас успешно. Теперь всё, что осталось сделать для успешной передачи данных по HTTPS, — это подключить SSL сертификат к сайту, для которого он оформлялся.

В качестве наглядного примера я решил продемонстрировать подключение SSL сертификата к своему тестовому сайту, для которого с этой целью был специально зарегистрирован поддомен — ssl.сайт. О том, в ISPManager на примере TheHost вы можете прочитать в статье по указанной ссылке.

Итак, для подключения SSL сертификата к сайту в панели управления хостингом ISPManager открываем пункт меню «WWW домены», выбираем необходимый и нажимаем на кнопку «Изменить», которая становится доступной в самом верху страницы.

После этого на экране появляется следующее диалоговое окно:

Чтобы установить SSL сертификат на выбранный домен, нам нужно поставить галочку в поле «SSL» и выбрать из выпадающего списка имя нужного документа.

Вот и всё. SSL сертификат на сайт установлен. Сами могли убедиться, насколько это просто и быстро благодаря TheHost и ISPManager, в частности.

Да, пусть он выглядит неказисто, но со своими задачами справляется на отлично 🙂

Теперь нам останется только произвести настройки движка сайта, чтобы он корректно работал по новому HTTPS протоколу. Среди них будут редиректы с HTTP на HTTPS, настройка зеркал, правки карты сайта и robots.txt, а также много другое.

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

В завершение обзора настроек сайта в ISPManager, связанных с SSL, хочу обратить ваше внимание на поле «Только SSL» в диалоговом окне, изображённом на скриншоте выше. С помощью него возможно сделать редиректы с HTTP на HTTPS для URL сайта на уровне веб сервера Nginx.

Установив галочку в данном поле, в файл конфигурации веб сервера Nginx на хостинге добавится следующий код:

If ($ssl_protocol = "") { rewrite ^ https://$server_name$request_uri? permanent; }

Можете взять данный способ организации редиректов с HTTP на HTTPS себе на заметку, особенно, если вы не пользуетесь услугами shared хостингов и панелями управления хостингом, в частности, а редирект настроить нужно.

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

Проверка правильности установки SSL сертификата

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

Они могут быть разнообразны: начиная от несовпадения информации в сертификате с той, которая хранится в центре сертификации, заканчивая ошибками в работе самого сертификата.

Чтобы получить полный список проблем и просканировать свой сайт на их наличие, я рекомендую воспользоваться следующими сервисами:

  1. https://www.ssllabs.com/ssltest
  2. https://www.digicert.com/help

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

А это, надо сказать, неплохая мотивация пользоваться первым типом хостеров, где от пользователя не требуется много времени и знаний.

Особенно ценен данный аргумент для людей, которые никогда не были связаны с веб-программированием и созданием сайтов, но установка SSL сертификата на их сайты необходима.

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

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

На этом всё. До новых встреч! 🙂

P.S. : если вам нужен сайт либо необходимо внести правки на существующий, но для этого нет времени и желания, могу предложить свои услуги.

Более 5 лет опыта профессиональной разработки сайтов. Работа с PHP , OpenCart , WordPress , Laravel , Yii , MySQL , PostgreSQL , JavaScript , React , Angular и другими технологиями web-разработки.

Опыт разработки проектов различного уровня: лендинги , корпоративные сайты , Интернет-магазины , CRM ,

Вступление

Если у вас безопасный веб-сервер, пользователи, волнующиеся за безопасность своих данных, могут быть уверены, что запросы зашифрованы, поэтому их данные в безопасности. Лучшим путем для этого является использование Apache 2, лидирующего веб-сервера под Linux и Secure Sockets Layer, протокол безопасной передачи данных. Transport Layer Security (TLS) является развитием SSL, но они работают практически одинаково. Я буду ссылаться только на SSL.

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

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

Протокол SSL работает следующим образом:
1. Клиент подключается к веб-серверу и дает список доступных кодов.
2. Сервер берет наиболее устойчивый код, который поддерживает и он, и клиент, и посылает сертификат со своим именем и ключ кодирования, подписанный доверенным Удостоверяющим Центром (Certificate Authority, далее - CA), таким как Verisign.
3. Клиент проверяет сертификат с помощью CA. На практике, хранят набор CA локально, поэтому это может быть сделано без контакта в реальном времени с CA, и поэтому более быстро.
4. Клиент посылает назад случайное число, зашифрованное с помощью публичного ключа сервера. Только клиент знает это число, и только сервер может его расшифровать (используя личный ключ); вот где реализуется безопасность от участия третей стороны.
5. Сервер и клиент используют случайное число для генерирования содержимого ключа, который используется на протяжении передачи данных.

Мы хотим сделать это на стороне клиента настолько прозрачным, насколько это возможно, чтобы сделать передачу данных настолько легкой, насколько возможно.

Настройка Apache для работы с SSL проста, но есть несколько необходимых шагов. Эта статья рассказывает, как получить сертификат, подписанный CA и как скомпилировать и настроить Apache для работы с SSL. Я использую Apache 2 с mod_ssl . ApacheSSL (реализация Apache с возможностями SSL) также доступен, но сейчас он уже устарел; mod_ssl намного лучше.

Создание сертификата.

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

Теоретически, преимуществом использования пароля являтся повышение защиты. Хотя, на практике пароли не дает такой большой защиты. Если кто-то сможет прочитать или скопировать приватный ключ, значит, у него уже есть доступ к системе и возможность получить пароль, например, используя такую программу, как кейлоггер. Пароль защитит от скрипт-кидди, но не от серьезного взломщика. Возможно, для большинства людей нет смысла его использовать.

Для тестовых целей, или для небольшой локальной сети, вы можете создать сертификат, подписанный вами. Вы можете сделать это, выполнив команду:
openssl req -new -x509 -days 365 -sha1 -newkey rsa:1024 \ -nodes -keyout server.key -out server.crt \ -subj "/O=Company/OU=Department/CN=www.example.com"
Давайте рассмотрим опции более подробно:
- -x509 означает, что сертификат обязателен, правильнее, чем просто запрос сертификата (смотри ниже)
- -days 365 устанавливает время истечения сертификата, равное году. Вы можете увеличить этот срок. Запомните дату истечения срока, чтобы обновить её при необходимости.
- -sha1 указывает, что будет использован SHA1 для шифрования.
- rsa:1024 делает ключ 1024 битным RSA.
- -nodes указывает отсутствие пароля.
- -keyout и -out указывают, где хранить сертификат и ключ. Ключ должен быть доступен для чтения только для root; сертификат может быть доступен для чтения для world, но должен быть доступным для чтения пользователю, который запускает Apache.
- -subj устанавливает имя компании, имя отделения компании и адрес веб-сайта. Если вы это пропустите, вас попросят это сделать. CN должен совпадать с адресом сайта, иначе сертификат не будет соответствовать, и пользователи будут получать предупреждение при подключении. Убедитесь, что вы не запрашиваете пароль.

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

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

Чтобы получить сертификат, подписанный CA, прежде всего вы должны создать криптографическую пару и запрос сертификата:
openssl req -new -sha1 -newkey rsa:1024 -nodes \ -keyout server.key -out www.example.com.csr \ -subj "/O=Company/OU=Department/CN=www.example.com"
Этот пример работает так же, как и предыдущий, но на этот раз мы не используем опцию -x509. Выполнение этой команды приведет к генерации ключа и запроса сертификата, но не самого сертификата. Если вы ввели CN и так далее, вы не должны вводить адрес e-mail или пароль.

Ключ сервера (файл server.key, который, опять же, должен быть доступен для чтения только для root) остается на вашем веб-сервере; запрос (файл www.example.com.csr) отправляется в CA. Вы можете назвать файл запроса так, как вам вздумается, но назвав его по своему доменному имени, вы упростите задачу для CA.

Следующей стадией будет послать этот файл www.example.com.csr в CA, с вашей оплатой. Они должны вернуть его достаточно быстро, если вы предоставили всю требуемую информацию в вашем запросе. Выбранный вами CA объяснит их действия на своем сайте. Вам может понадобиться поменять формат файла на PEM, но, в случае Verisign, этого делать не придется.

Когда вы получите файл назад в PEM формате, переименуйте его в server.crt (это не является строгой необходимостью, но соответствует условиям Apache) и проверьте его:
openssl verify -CAfile /path/to/trusted_ca.crt \ -purpose sslserver server.crt
Затем проверьте, что результат выполнения этих двух команд одинаков, т.е., что сертификат соответствует приватному ключу:
openssl x509 -noout -modulus -in server.pem | openssl sha1 openssl rsa -noout -modulus -in server.key | openssl sha1
Теперь установите ваш ключ (сгенерированный выше как server.key) и сертификат (server.crt) в /etc/apache2/ssl или предпочитаемый вами каталог настроек, если он другой. Как указано выше, очень важно убедиться, что server.key доступен для чтения только для root, в то время как сертификат сервера может быть доступен для чтения для world, но принадлежать и быть доступным для записи только для root.

Компиляция Apache с SSL.

Итак, ваш сертификат сгенерирован. Теперь вам надо настроить свой сервер для его использования.

Для подавляющего большинства людей, лучшим способом установить и управлять Apache2 - модули, полученные через менеджер пакетов вашего дистрибутива. Apache2 из Debian идет вместе с модулем SSL, но он не включен по умолчанию. Для его включения вы должны выполнить команду: a2enmod ssl и перезапустить веб-сервер.

Чтобы сделать это, добавьте строчку
Include /etc/apache2/mod_ssl.conf
в ваш /etc/apache2/apache2.conf (этот файл может также называться httpd.conf). Вы должны исправить её, обозначив соответствующее расположение файла mod_ssl.conf. Затем перезапустите веб-сервер.

Если вы хотите скомпилировать Apache2 из исходных кодов, в зависимости от того, какие установки вы до этого использовали, вы можете уже иметь или не иметь поддержку SSL. Проверьте это командой apache2 -l. Если перекомпиляция понадобится, запустите./configure со всеми опциями, которые вы использовали до этого, добавив к ним --enable-ssl и --enable-setenvif (последняя нужна для совместимости с капризами Internet Explorer). Затем установите его как обычно, с помощью make;make install и проверьте правильность прав доступа.

Настройка Apache с SSL.

Следующим шагом будет настройка Apache2. Следующие инструкции приведут к запуску сервера как безопасного (порт 443) и как обычного веб-сервера (порт 80). Прежде всего, вам надо настроить сервер на принятие запросов на оба порта. Или отредактируйте /etc/apache2/ports.conf (в Debian, это входит в apache2.conf), или отредактируйте /etc/apache2/apache2.conf, включив строки:
Listen 80 Listen 443
Затем отредактируйте /etc/apache2/sites-enabled/yoursite для использования настроек SSL. Разделение настроек обычного и безопасного сервера с помощью VirtualHost - простейший способ из соображений условий эксплуатации. Любые настройки вне секций VirtualHost (например, установка ServerAdmin) будут применяться для обоих (и любых других) VirtualHost. Добавьте следующий текст в файл конфигурации:
# ================================================= # SSL/TLS settings # ================================================= NameVirtualHost *:443 DocumentRoot "/local/www/ssl_html" SSLEngine on SSLOptions +StrictRequire SSLRequireSSL SSLProtocol -all +TLSv1 +SSLv3 SSLCipherSuite HIGH:MEDIUM:!aNULL:+SHA1:+MD5:+HIGH:+MEDIUM SSLRandomSeed startup file:/dev/urandom 1024 SSLRandomSeed connect file:/dev/urandom 1024 SSLSessionCache shm:/usr/local/apache2/logs/ssl_cache_shm SSLSessionCacheTimeout 600 SSLCertificateFile /etc/apache2/ssl/server.crt SSLCertificateKeyFile /etc/apache2/ssl/server.key SSLVerifyClient none SSLProxyEngine off AddType application/x-x509-ca-cert .crt AddType application/x-pkcs7-crl .crl SetEnvIf User-Agent ".*MSIE.*" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0
Несколько замечаний об этой конфигурации:
- SSLEngine должен быть включен, обозначая, что сервер использует SSL.
- DocumentRoot устанавливает корневой каталог виртуального хоста. Это значит, что вы можете отделять безопасное содержимое от обычного.
- SSLRequireSSL запрашивает использование SSL (на этом виртуальном сервере), то есть, пользователь не может подключиться к этому виртуальному хосту с помощью обычного HTTP-запроса. Вот зачем мы разделили безопасное и обычное содержимое.
- SSLProtocol отключает все протоколы, отличные от TLS v1.0 и SSL v3.0. Для современных браузеров все будет работать хорошо.
- SSLCipherSuite устанавливает использование только HIGH и MEDIUM шифров. SHA1 считается более безопасным, чем MD5, поэтому выбран он.
- SSLCertificateFile и SSLCertificateKeyFile указывают расположение файлов сертификата и ключа.
- SSLVerifyClient должна быть установлена как "none", если не используется аутентификация примера.

Чтобы запускать обычный сервер на 80 порту, добавьте следующий текст в конфигурационный файл:
NameVirtualHost: *.80 DocumentRoot "/local/www/html"
После сохранения отредактированного конфигурационного файла, перезапустите сервер. Если вы использовали пароль при генерации сертификата, вам понадобится ввести его при запросе.

Тестирование.

Создайте базовую страницу index.html в корневой директории вашего сервера, если у вас ещё нет содержимого там.

Затем направьте свой браузер на https://yoursite.com. Вы должны увидеть открытие SSL-соединения и загрузку страницы. Если вы используете сертификат, подписанный вами, ваш браузер даст предупреждение о том, что подлинность сервера не может быть проверена. Вы можете выбрать просмотр сертификата и принять его. Если вы используете внешний сертификат, все должно пройти без проблем.

Убедитесь, что не можете получить доступ к безопасному содержимому, используя http://. Если вы попробуете, вы должны получить сообщение об ошибке.

Устранение проблем.

Если это работает не так, как ожидалось, прежде всего, проверьте, что ваш сервер вообще запущен с помощью команды ps -a | grep apache. Если она не вернет результата, попробуйте перезапустить сервер и проверьте сообщения об ошибке в консоли.

Также проверьте, что права доступа к файлам сертификата и ключа установлены правильно (см. выше), также, как и права к тестовому HTML-файлу и директории, в которой он находится.

Затем, проверьте логи. Вы должны проверить как логи сервера, так и логи SSL, которые вы настроили в конфигурационном файле выше. Если вы не нашли там ничего полезного, попробуйте поменять значение LogLevel в файле конфигурации Apache2 на "debug", перезапустите Apache2 и протестируйте снова. Это должно дать больше данных в логах.

Если вы запускаете веб-сервер на 80 порту, попробуйте запросить страницу с помощью http://, вместо https://, чтобы понять, заключается ли проблема в веб-сервере или в SSL-соединении. Учтите, что в приведенных выше установках, корневые каталоги веб-сервера разные для http:// и https://, так что вы не можете (или не должны!) получить доступ к тому же содержимому. Если ваша тестовая страница в корневом каталоге http:// работает, в то время, как тестовая страница в корневом каталоге https:// не работает, это поможет вам более точно указать на проблему.

Если проблема в SSL соединении, удобным инструментом будет s_client, который является диагностической утилитой для решения проблем в TLS/SSL-соединениях. Обычное его использование: /usr/bin/openssl s_client -connect localhost:443. Также существует множество других опций, которые вы можете узнать из документации. Если вы получили сообщения об ошибках, это должно вам помочь в определении проблемы.

Заключение.

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

Компания «Окна Рехау» специализируется на производстве и установке пластиковых окон и дверей в Москве. С момента разработки сайта компания заказывает услуги SEO и интернет-рекламы в WebCanape, поэтому специалисты по продвижению тщательно следят за позициями сайта в поиске и планируют долгосрочное развитие ресурса.

После появления новости, что с 1.01.2017 сайты, на которых собираются данные кредитных карт или пароли, будут отмечаться в браузере Google Chrome как потенциально опасные для пользователей, принято решение об установке SSL-сертификата и переводе сайта на защищенный протокол.

HTTPS (от англ. HyperText Transfer Protocol Secure) — расширение http-протокола, которое поддерживает шифрование данных и обеспечивает их защиту от прослушивания и изменения.

Зачем нужен https-протокол?

  • Обеспечивает безопасный обмен информацией между сайтом и девайсом пользователя
  • Повышает доверие к сайту и поддерживает его репутацию в глазах посетителей
  • Число сайтов, которые работают по незащищенному http-протоколу сокращается. HTTPS становится основным стандартом
  • HTTPS входит в перечень ранжирующих факторов при поисковой выдаче Google

Как он работает?

Для корректной работы HTTPS используется сертификат, состоящий из открытого и приватного ключа.

Первый нужен клиенту, другой — серверу для шифрования и дешифрования запросов.

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

Почему это важно для сайта?

  1. С начала 2017 года Google Chrome помечает некоторые сайты без https как небезопасные и понижает их в выдаче поисковых систем.
  2. Если сайт обеспечивает надежную передачу данных (то есть использует протокол https), он может рассчитывать на дополнительный бонус при ранжировании.

Покупаем и устанавливаем SSL-сертификат — 7 простых шагов

Шаг 1 . Переходим на страницу заказа SSL-сертификатов.

Шаг 2 . Выбираем нужный тип сертификата.

Шаг 3 . Генерируем CSR-запрос.

CSR (Certificate Signing Request) — запрос на получение сертификата. Это текстовый файл, содержащий открытый ключ и закодированную информацию об администраторе домена.

Важно! Обязательно сохраните полученный при генерации CSR-запроса файл ключа. Он еще понадобится.

Шаг 4 . Заполняем анкетные данные сертификата (на английском языке), оплачиваем услугу любым удобным способом.

Шаг 5 . Подтверждаем владение доменом. Потребуется электронная почта в зоне вашего домена, куда будет отправлено письмо с кодом. Вы можете перейти по ссылке в письме или скопировать код и ввести его на странице центра сертификации.

Важно! Письмо может быть отправлено только на «approver email», который вы указываете при заказе сертификата.

При необходимости отправку письма подтверждения SSL-сертификата можно повторить.

Письмо подтверждения выглядит так:

Шаг 6 . Дожидаемся выпуска сертификата и скачиваем его с сайта сертификационного центра или сайта-партнера.

Шаг 7 . Устанавливаем сертификат на хостинг, где размещается сайт. Для этого используем файл(ы) сертификата и файл ключа, полученный на 3-м шаге.

Предварительная подготовка сайта к переходу на https

Подготовка проходит в девять этапов.

  1. Меняем все ссылки на страницы сайта (и элементы страниц), для которых устанавливается защищенное соединение.
  2. Весь контент сайта, в том числе внешние модули, фото и скрипты, тоже должен подгружаться по протоколу https. Иначе браузер посчитает, что на странице есть небезопасные материалы и не покажет в адресной строке зеленый значок. Несмотря на то, что страница будет загружена по https.

Самая распространенная ошибка — размещение на сайте, который работает по https, не только защищенного, но и обычного контента. В таких случаях один или несколько элементов (обычно изображения, скрипты, Flash-файлы или CSS) загружаются на странице https с использованием незащищенного внешнего URL, начинающегося с http://.

Список незащищенных элементов на страницах со смешанным содержанием можно найти в консоли JavaScript (в некоторых браузерах она может называться отладчиком JavaScript) либо в инструментах разработчика браузера.


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

Убедитесь, что SSL-сертификат корректно настроен. Получить подробный анализ конфигурации SSL можно с помощью специального сервиса >>


  1. Версия сайта с https должна быть доступной и работать без ошибок, как и версия с http. Для обеих версий файл robots.txt должен быть одинаковым.

Важно! Ранее рекомендовалось использовать параллельно два файла robots.txt и на период переклейки в Яндекс закрыть https-версии сайта от индексации Google. Сейчас этого не требуется. Был протестирован и утвержден вариант без закрытия от индексации в Google. Если доступны обе версии сайта, Google по умолчанию показывает в выдаче https-версию, а Яндекс делает это только после переиндексации.

В robots.txt должна быть строчка:

Host: https://www. адрес-сайта.ru/

Это значит, что https-версия является главным зеркалом.

Если все сделано верно, результат будет выглядеть так:


  1. Добавляем обе версии сайта в Вебмастер Яндекса, указываем предпочтительный протокол в разделе «Настройка индексирования — Переезд сайта».


  1. В Google Search Console добавляем сайт с протоколом https и подтверждаем права.

Google понимает, что http и https являются разными протоколами одного и того же сайта. Если он найдет работающий https протокол, по ходу переиндексации контента заменит http на https. Это произойдет даже без перенаправления и добавления https-версии в Google Search Console.

  1. Ждем переиндексации сайта в Яндекс. Это произойдет, когда в индекс зайдут версии страниц с https, а версии с http выпадут из него.

Переклейка начинается через 2-3 недели. К сожалению, повлиять на ее скорость невозможно — это автоматический процесс.

Когда начнется переклейка, в Вебмастере Яндекса появится уведомление:


Также можно увидеть, что https-версия стала отображаться как основная:


Неглавное зеркало начнет выпадать из индекса Яндекса, главное — попадать в него:


У крупного ресурса все страницы не переиндексируются мгновенно.

  1. После склейки сайтов настраиваем постраничный 301-редирект со страниц с http на страницы с https (за исключением файла robots.txt).

Нежелательно делать это прежде чем сайты будут признаны зеркалами. Иначе по правилам Яндекса при обработке перенаправлений страницы с редиректами исключатся из поиска.

На период склейки зеркал сайт должен оставаться доступным по обоим адресам.

Для перенаправления с http:// на https:// в.htaccess можно воспользоваться тремя способами:

  • ручной корректировкой файла htacces;
  • настройкой редиректов через панель управления хостингом;
  • написанием программного скрипта настройки редиректов.

Результаты

Приведенный алгоритм действий подтвержден Яндексом и протестирован при переезде нескольких сайтов с хорошей историей. Он позволяет свести к минимуму потери трафика и позиции сайта в результатах поиска.

Однако служба поддержки Яндекса отвечает, что не может гарантировать 100% сохранение позиций сайта при склейке зеркал.


Как правило, на время переклейки сайта наблюдается временное ухудшение позиций в результатах поиска как в Яндекс, так и в Google. Но позиции в течение одного-двух месяцев полностью восстанавливаются.


Что еще нужно помнить?

  1. Базовый алгоритм перевода сайта на https, который используем при переездах, доступен по ссылке >>
  2. Удостоверьтесь в работоспособности и наличии доступов к почтовому ящику, на который высылается письмо со ссылкой на подтверждение выпуска сертификата.
  3. Созданная версия с https доступна наряду с версией с http. Причем в robots.txt должна быть прописана строчка, указывающая на то, что https-версия является главным зеркалом.
  4. После того как сайты склеятся, нужно настроить постраничный 301-редирект с http на https.
  5. Если домен https был признан зеркалом домена http до переклейки (то есть https-версия была признана неглавным зеркалом), нужно расклеить зеркала, а затем выбрать https-версию в качестве главного зеркала.

Хотите заказать установку SSL-сертификата? Свяжитесь с нами по телефону: 8-800-200-94-60 , доб. 321 или оставьте запрос на

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

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

Получения и установка SSL-сертификата Let’s Encrypt

1. Для получения сертификата воспользуемся сайтом https://www.sslforfree.com/ . Переходим по ссылке и прямо на главной странице видим основное поле. Вбиваем туда имя нашего домена и нажимаем кнопку “Create Free SSL Certificate” .

2. Далее сайт нам предлагают на выбор несколько вариантом подтверждения домена. Нажимаем “Manual Verification” , после “Retry Manual Verification” . В итоге, мы получаем два файла которые необходимо залить на сайт в папку /.well-known/acme-challenge . Выполняем данные действия и нажимаем “Download SSL Certificate” .

3. Наш SSL-сертификат готов, срок его действия 90 дней , после необходимо повторить процедуру. Остается только установить его на сайт.

4. Процесс установки сертификата на каждом хостинге может немного отличаться, если у вас установлена какая-либо панель управления (ISP Manager, cPanel и т.д.), то сделать через нее не составит большого труда. Для этого переходим в раздел “SSL сертификаты” и выполняем установку по инструкции. В случае отсутствия панели установка происходит через конфиги web-сервера, подробнее о процессе установки SSL-сертификата на Apache в CentOS.

5. Настройка редиректа с http на https . Сделать это можно несколькими способами, через панель хостинга, через файл.htaccess, через конфигурацию вашего web-сервера или через PHP (любой другой язык, на котором сделан сайт).

Все способы рассматривать не будем, это материал для другой статьи. Самый распространённый пример, редирект с http на https через.htaccess . Добавляем нижеуказанный код в начало файла.htaccess:

RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI}

< IfModule mod_rewrite . c >

RewriteEngine On

RewriteCond % { HTTPS } off

RewriteRule ^ (. * ) $ https : //%{HTTP_HOST}%{REQUEST_URI}

< / IfModule >

6. Процесс установки закончен, теперь необходимо проверить сайт, чтобы все картинки, стили, скрипты подгружались по https соединению , в противном случае сайт не будет помечаться как безопасный. Проще всего вообще удалить “http:” из подключаемых файлов, то есть сделать так.

К концу 2018 года я стала замечать все больше и больше сайтов с установленным SSL – сертификатом, и соответственно изменённым адресом сайта с http на https.

Хотя многие не предали особое значение новости от компании Google, о том, что сайты с протоколом http будут понижены в поисковой выдаче, а также браузер Google Chrome будет помечать такие сайты как небезопасные.

Но сейчас все изменилось, появились инструкции по переходу, многие хостинги предлагают данную услугу при регистрации домена. Я тоже установила SSL – сертификат на своем сайте и настроила переезд адреса на новый с https.

Признаюсь честно этап покупки, установки и настройки сертификата совсем не легкий. Я использую сервер от компании REG.RU, там достаточно полная инструкция, поэтому «танцев с бубном» не было.

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

Что такое HTTPS

HTTPS – HyperText Transfer Protocol Secure, это все тот же протокол http, только с функцией шифрования.

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

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

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

Например, зашли на сайт и ввели в форму логин и пароль, данные кодируются, и отправляются браузером. Сервер же, используя приватный ключ их расшифровывает и получает в таком же виде как вы ввели. Даже если во время передачи данные были украдены, то злоумышленники не смогу расшифровать без приватного ключа.

Как проверить безопасность соединения с сайтом

Защищенный протокол представляет собой сертификат с содержанием некоторой информацией.

Когда вы посещаете любой веб-ресурс, то сервер передает браузеру информацию о сертификате и ваш браузер сообщает вам о защищенном соединение или об угрозе.

В адресной строке браузера Google Chrome, рядом с URL сайта, можно увидеть иконку, которая показывает о защите соединения.

Каким сайтам нужно переходить на протокол HTTPS

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

Как перейти на https

Для перехода на https необходимо выбрать сертификат, а также на какое количество доменов и поддоменов его нужно установить. После покупки, настроить SSL – сертификат и сделать редирект со старого адреса на новый.

Виды сертификатов

Что такое SSL -сертификат и зачем нужен? SSL – сертификат – индивидуальная цифровая подпись для домена. Какой SSL – сертификат выбрать?

Различают несколько видов:

  • Самоподписанный сертификат SSL – такой сертификат вы сами выпускаете и сами заверяете, но к такому сертификату нет доверия.
  • Доверенный , подписанный центром сертификации – это означает, что информация, содержащаяся в сертификате проверена центром сертификации. Доверие со стороны браузеров к таким сертификат выше, так как в браузерах присутствует цепочка корневых сертификатов. Центры сертификации дают гарантию и денежную страховку в случае взлома. Популярные центры сертификации: Comodo, GlobalSign, AlphaSSL, Symantec, RapidSSL.

Типы сертификатов

  • Domain Validated (DV – проверка домена) – для получения такого сертификата не нужно предоставлять документы, так как он подтверждает, что действительно домен принадлежит вам, но такой сертификат не дает гарантии, что компании или владельцу сайта можно доверять. Больше всего такой тип сертификата подойдет – всем, кроме интернет-магазинов и банковских организаций. Для получения сертификата достаточно потвердеть владение доменом. Выдача сертификата обычно происходит достаточно быстро. Кстати, такой тип SSL-сертификата самый дешевый. SSL-сертификат доступен физическим лицам и юридическим компаниям.
  • Organization Validated (OV – с проверкой организации) – такой тип сертификата выдается компаниям, которые прошли дополнительную проверку, а именно проверку регистрационных документов организации или индивидуального предпринимателя. Также проводят проверку на владение доменом. Такой сертификат необходим компаниям, которые хранят и обрабатывают персональные данные. Например, интернет-магазинам.
  • Extended Validation (EV – с расширенной проверкой) – при посещении такого сайта, в адресной строке пользователь видит зеленую строку с названием компании. Получить такой сертификат сложнее, но и доверие к такому сайту намного выше. Посетители сайта могут быть уверены, что такая компания точно существует и этот сайт принадлежит ей. Получать такой сертификат необходимо компаниям, связанным с финансовой деятельностью, например банкам, платежным системам. Получение такого сертификата может занять до 9 дней, из-за проверки документов организации. Такой тип сертификата самый дорогой.

SSL – сертификат для домена и поддомена.

Сертификаты отличаются по количеству доменов, на которые распространяется их действие.

  1. SSL-сертификат для одного домена - действие сертификата распространяется на один домен (на поддомены будет не действителен)
  2. Мультидоменный SSL-сертификат (Multi-domain) - обычно такой сертификат возможно установить на 100 доменных имен, но в первоначальную стоимость входит защита трех доменов, а остальные докупаются по мере необходимости.
  3. SSL-сертификат Поддомены (Wildcard) - действует на домен и все его поддомены.
  4. SSL – сертификаты с поддержкой национальных доменов – возможность защитить домен в зоне. рф и другие.

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

Как и где заказывать сертификат?

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

У крупных центров сертификации таких как Comodo , GlobalSign , AlphaSSL , Symantec , RapidSSL , с корневыми сертификатами все в порядке, поэтому смело можно покупать сертификат у одного из центров сертификации, либо у партнеров.

Самые дорогие сертификаты, как правило у центров сертификации, а дешевые SSL – сертификаты у партнеров.

Партнерами также являются хостинг-провайдеры и регистраторы доменов.

Я купила Comodo SSL – сертификат у партнера firstssl.ru . Именно на примере этого сайта, покажу, как происходит покупка и установка SSL – сертификата.

Как установить бесплатный SSL – сертификат для сайта, на примере t.

Как SSL – сертификат купить у партнера центра сертификации

Заходим на главную страницу сайта firstssl.ru и выбираем подходящий SSL-сертификат.


После выбора необходимого сертификата, выберите срок действия SSL – сертификата (сейчас доступно 1-2 года), далее нажимаем кнопку Купить.

Регистрируемся , и попадаем в личный кабинет FirstSSL .


Личный кабинет находится по адресу my.firstssl.ru , сейчас компания работает на новым интерфейсом, я использовала пока старую версию личного кабинета.



В меню сбоку – выбираем Товары -> SSL – сертификат -> Заказать .


Теперь шаг за шагом, начинаем покупать сертификат.

Шаг 1 . Выбираем подходящий тип сертификата на один или два года (необходимо если не выбрали на главной странице), далее нажимаем кнопку Параметры .


Шаг 2. Запрос на получение сертификата -> сгенерировать запрос, ниже заполняем данные запроса. В поле организация, если у вас нет ИП, то можно указать ФИО владельца сайта.


Шаг 3. Секретный ключ сертификата. На этот этапе получаете тот самый секретный ключ, который будет использовать хостинг-провайдер, для расшифровки данных.


Шаг 4. Контактные данные. Указываем контакт администрации сайта и контакт технического специалиста, если у вас на сайте это один человек, отметьте галочку использовать данные администратора.


Шаг 5. Подтверждение сертификата. Подтвердить необходимо владение доменом, для подтверждения доступны три варианта:


Далее в зависимости от метода подтверждения следуем инструкции, я выбрала подтверждение по e-mail-адресу, через несколько минут пришло письмо в котором было необходимо пройти по ссылке и ввести код, отправленный в этом же письме.


После успешного подтверждения, увидите следующие окно.


Шаг 6. Оплачиваете SSL-сертификат, если не сделали это раньше. После оплаты нужно еще немного подождать, так как идет процесс выпуска сертификата.

После успешного выпуска сертификата придет сообщение на почтовый адрес или будет видно в строке состояние в личном кабинете.


Скачиваем все три файла на свой компьютер и приступаем к следующему шагу установки SSL – сертификата на хостинг.

Подготовка сайта к установке сертификата

Я использую CMS WordPress, если используете другие CMS настройки могут отличаться.

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

Изменение абсолютных ссылок на относительные

  • http://site/ – абсолютная ссылка с http
  • https://site/ – абсолютная ссылка с https
  • //site/ – относительная ссылка

HTTP / HTTPS Remover

Плагины -> Добавить новый, вводим HTTP / HTTPS Remover в строку поиска, а после активируем. Готово.


Такой способ быстрый, а значит не без минусов. Проблема возникнет в каноническом URL.

При проведении планово аудита сайта, с помощью программы ComparseR, увидела, что URL и rel=”canonical” не совпадают.


Атрибут rel=”canonical” важен, так как не правильно указанный атрибут может привести к ненужным дублям или вовсе неиндексации страниц.

Поэтому было принято решение о переходе на абсолютную ссылку с https.

Измение ссылок необходимо проводить в phpMyAdmin, поэтому я сделала с помощью скрипта Search Replace DB.

Search Replace DB


Такой отчет увидите, если все правильно.

Ошибки при редиректе

Ошибка: Сервер отвечает редиректом на запрос /robots.txt

Так как после редиректа сайт будет доступен по новому адресу, и склейка адресов будет не быстрой (где то около двух недель), файл robots.txt в Яндекс Вебмастере не будет доступен по старому адресу, и за это время в поисковую выдачу могут попасть ненужные страницы.


Для того чтобы это не произошло, нужно исключить файл robots.txt при редиректе. Строка RewriteCond %{REQUEST_URI} !^/robots.txt

После того как сайт стал доступен по новому адресу, заходим в панель Яндекс Вебмастер -> Индексирование -> Переезд сайта.


После этого появятся все данные по сайту.


В Google Search Console переезд сайта на новый адрес настроить проще, нужно просто добавить свой сайт как новый и все.



Ну вот и все, статья получилась очень большая, но я думаю достаточно подробная. Смело осуществляйте перевод сайта на https. Появились вопросы напишите в комментарии, я обязательно отвечу.



Просмотров