Устанавливаем ssl. Как установить SSL сертификат на свой веб-сервер (Apache2, Nginx). Как получить бесплатный SSL сертификат Lets Encrypt

Когда вы запускаете ваш собственный веб-сайт, ваши пользователи скорее всего должны будут оставлять там личную информацию. Это означает, что вам необходимо обеспечить соблюдение надежных стандартов безопасности, для обеспечения которой важную роль играют как Secure Sockets Layer (SSL или TLS) , так и Hypertext Transfer Protocol Secure (HTTPS) . К счастью, настройка на платформе WordPress SSL сертификата и установка HTTPS довольно проста и может быть выполнена всего за несколько шагов.

В этой статье мы поговорим о следующем:

  1. Какой сертификат SSL и когда нужно использовать.
  2. Что такое HTTPS и как он работает вместе с SSL.
  3. Как использовать WordPress SSL и настроить HTTPS с помощью двух разных методов.
  4. Две распространенные ошибки, с которыми вы можете столкнуться при использовании на WordPress SSL, и способы их устранения.

Нам предстоит узнать многое и будет ещё над чем поработать, так что, давайте уже приступим!

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

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

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

Что касается вашего собственного сайта, установка SSL сертификата является обязательной. Для этого есть :

  • Если вы запустите веб-сайт, на котором вы предлагаете пользователям регистрироваться и делиться конфиденциальной информацией, их данные будут в безопасности.
  • Ваш сайт будет более надежным.
  • Прикольный зелёный замочек появится рядом с адресом сайта в разных браузерах.
  • Вы улучшите поисковую оптимизацию вашего сайта (SEO) (англ).

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

Кроме того, Google объявил о том, что с момента появления в июле 2018 года Chrome показывает предупреждение “небезопасно”. Поэтому самое время обеспечить безопасность вашего сайта с помощью установки SSL сертификата, если вы ещё этого не сделали.

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

Для всех других типов сайтов бесплатный сертификат обычно выполняет всю работу. Более того, вы можете легко настроить его для работы с Hostinger (англ).

Что такое HTTPS (и как это работает вместе с SSL)

Когда вам нужна установка SSL сертификата для вашего сайта, вам также необходимо настроить его для передачи данных с использованием протокола HTTPS. Каждый посещаемый вами сайт использует HTTP или HTTPS в качестве префикса к URL-адресу, включая Hostinger:

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

Если вы попытаетесь получить доступ к сайту без SSL с помощью HTTPS, вы увидите ошибку, подобную этой:

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

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

Как настроить на WordPress SSL и HTTPS (2 метода)

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

1. Используйте панель инструментов WordPress и переадресацию 301

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

В любом случае, ваш первый шаг должен состоять в том, чтобы зайти в панель управления и открыть вкладку Настройки> Общие . Внутри вы найдете два поля, которые называются WordPress Address (URL) и Site Address (URL) . Адрес вашего сайта должен быть идентичным в обоих полях, и должен использовать HTTP.

Что вам нужно сделать, это заменить префикс HTTP на HTTPS в обоих полях и сохранить изменения в ваших настройках:

Это всё, что нужно, чтобы настроить WordPress на использование HTTPS. Однако, некоторые пользователи могли сохранить старый URL вашего веб-сайта, и он может оставаться в сети. Вы должны убедиться, что эти пользователи используют HTTPS-версию вашего сайта. Для этого вы можете настроить переадресацию URL.

Как только вы подключитесь к своему сайту через FTP, перейдите в папку public_html и найдите файл .htaccess внутри:

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

Для этого вам нужно будет заменить URL-адрес в этом коде на полный HTTPS-адрес вашего сайта. Это перенаправит любое соединение, которое приходит через port 80 , на новый безопасный URL. Как вы знаете, port 80 является стандартным для HTTP-соединений, поэтому он “перехватит” практически всех, кто пытается получить доступ к вашему веб-сайту через старый адрес.

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

2. Установите плагин для WordPress SSL

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

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

Две распространённые ошибки в WordPress SSL (и как их исправить)

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

1. Некоторые файлы не загружаются через HTTPS

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

Если у вас возникла проблема с изображениями вашего сайта, CSS или JavaScript, самый простой способ решить её – сделать несколько дополнений к вашему файлу .htaccess . Однако этот подход применяется только в том случае, если вы использовали ручной метод из предыдущего раздела. Мы поговорим о том, что делать, если вы используете плагин вместо этого чуть позже.

Перейдите на свой веб-сайт через FTP ещё раз и найдите файл .htaccess в каталоге public_html . Откройте его и найдите ранее добавленный код, чтобы установить переадресацию 301. Это должно выглядеть следующим образом:

RewriteEngine On RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://www.yoursite.com/$1 }

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

RewriteEngine On RewriteCond %{SERVER_PORT} !^443$ RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L]

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

Если вы настроили свой сайт для использования HTTPS через плагин, вам не нужно вручную настраивать файл .htaccess . Вместо этого большинство плагинов предложит альтернативное решение. Например, Really Simple SSL может находить на вашем сайте файлы, которые не загружаются через HTTPS, и помогать вам их исправить. Чтобы использовать эту функцию, перейдите во вкладку «Настройки»> «SSL» , а затем перейдите на страницу настроек плагина:

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

2. Ваш плагин для кэширования WordPress вызывает проблемы

Если у вас установлен плагин для кеширования WordPress, ваш браузер может попытаться загрузить кешированную версию вашего веб-сайта по HTTP, что может привести к некоторым ошибкам. Самый быстрый способ решить эту проблему – очистить кеш в WordPress.

Как будет происходить процесс кэширования зависит от того, какой плагин вы используете. Тем не менее, это не займет у вас больше нескольких минут. Для получения более подробной информации вы можете ознакомиться с нашим в WP Super Cache (англ), W3 Total Cache (англ) и WP Fastest Cache (англ). Если вы используете другой плагин для кеширования, вам может потребоваться заглянуть в справку для получения инструкций о том, как действовать.

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

Вывод

Раньше WordPress SSL сертификаты были зарезервированы только для деловых веб-сайтов, которые сталкивались с большим количеством конфиденциальной информации. В наши дни сертификаты SSL и HTTPS стали обычным явлением. Фактически, сами поисковые системы, такие как Google, рекомендуют их использовать. К счастью, как вы видите, установка SSL сертификата и использование HTTPS для вашего сайта в WordPress – довольно простая задача.

У вас есть вопросы о том, как использовать WordPress SSL и настроить HTTPS? Давайте поговорим о них в разделе комментариев ниже!

С каждым днем необходимость в защищенном соединения стает все острее. Во-первых, это более безопасная работа с сайтом, потому что все данные передаются в шифрованном виде, во-вторых, это зелёный замочек рядом с адресом сайта, что вызывает некое доверие к порталу, в-третьих, по заявлению представителей 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:” из подключаемых файлов, то есть сделать так.

Всем привет.

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

А также некоторые мои читатели могли заметить сильное падение трафика примерно на 10 дней. Это произошло, так как все мои статьи временно исчезли из поиска яндекса. А это кстати произошло из-за немного неправильного перехода на https. Об этом расскажу чуть ниже

А в этой статье я на личном примере расскажу, как установить SSL сертификат на свой сайт и при этом не потерять трафик с поисковиков. Я трафик потерял временно, а вы не потеряете, если прочитаете всё от начала до конца

Зачем я перешёл на защищенный протокол

Это всё современные тенденции в сфере сайтов и блогов в интернете. Совсем скоро практически все web-сайты перейдут на этот протокол.

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

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

Итак. Зачем всем web-ресурсам в интернете необходим сертификат SSL, мы определились.

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

Сертификаты бывают всякие разные.

В первую очередь их можно разделить на два вида:

  1. Самоподписанные
  2. Выданные центрами сертификации

Первый вид нас не интересует. Этот вид сертификата вы можете создать сами, но должного уровня доверия вы не получите. Приведу такое сравнение:

Cамоподписанный сертификат — это тоже самое, что документ, например, паспорт, который вы нарисовали сами.

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

  • количество (один или много)
  • поддержка национальных доменов, например, кириллических
  • распространение защиты на поддомены
  • уровень проверки и соответственно доверия

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

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

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

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

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

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

В лаборатории бизнес кейсов также есть отличная партнерка. Предлагаю зарегистрироваться по моей ссылке .

Как подключить ssl сертификат

Расскажу на своём примере.

Лично мне пришла идея приобрести SSL довольно спонтанно. Не люблю я торопиться, да и вообще я любитель откладывать дела потом — есть такой недостаток.

А подтолкнуло меня к этому предложение от регистратора доменных имён RegRu , которым я активно пользуюсь.

Суть предложения: если ваш домен находится на РегРу, то вы можете подключить SSL сертификат на год бесплатно от компании GlobalSign. Бесплатно предоставляется DomainSSL — начальный уровень доверия. Его стоимость 8850 рублей в год, но для клиентов РегРу 3000 рублей в год, а первый год вообще бесплатно.

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

Кстати совсем недавно нашел еще одну компанию, занимающуюся реализацией SSL сертификатов — sslcertificate.ru . Можете ознакомиться и с их предложениями.

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

В поддержке регистратора есть также инструкции по установке SSL сертификата на сайт.

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

Что вообще нужно сделать:

  1. Приобрести сертификат
  2. Установить его на сайт
  3. Заменить все ссылки внутри сайта на https
  4. В панели вебмастеров яндекса и гугл добавить новый сайт с https
  5. Указать главное зеркало
  6. Сделать переадресацию с http на https.

По сути это всё. Но здесь кроется несколько подводных камней.

Подводные камни

Третий пункт — замена всех ссылок

Пятый пункт — указать главное зеркало

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

Если не совсем понятно, то посмотрите как это сделано .

А также в вебмастере яндекса есть специальный инструмент «переезд сайта» в разделе «настройки индексирования». Там необходимо поставить галочку напротив https. Склейка зеркал произойдет в течение пары недель.

Когда переезд завершится, вы увидите примерно вот такую картину:

На скриншоте можно заметить, что ТИЦ сейчас 0, а был 20. Это временное явление — всё вернется, надо только подождать

А с гугл по моему проблем вообще не возникает

Шестой пункт — переадресация

Это самый коварный и в то же время простой пункт.

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

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

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

Вообще жуткий график!

Кстати а как выполнить эту самую переадресацию, о которой говорится в шестом пункте. Лично я это сделал поставив всего одну галочку в панели управления своим хостингом. Если на вашем хостинге нет такой функции, то вам придется прописать эту переадресацию в файле.htaccess — google или яндекс вам в помощь.

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

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

Жду ваших комментариев!

Всем пока и до скорых встреч!

С уважением! Абдуллин Руслан

Обратите внимание!

Если вы приобретаете SSL для работы магазина ВКонтакте, вам нужно покупать SSL для адреса вида "vk.домен" , например vk.mysite.ru

Если вы приобретаете SSL для работы магазина facebook, вам нужно покупать SSL для адреса вида "fb.домен" , например fb.mysite.ru

Если вы приобретаете SSL для работы платёжного сервиса, обратите внимание что для работы платёжного сервиса "Касса от ЯндексДенег" для сайтов на облаке (только), нет необходимости приобретать SSL

Немного о Secure Sockets Layer (SSL)

SSL (англ. Secure Sockets Layer — уровень защищённых сокетов)

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

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

SSL сертификат необходимо приобретать отдельно, за отдельную стоимость. Сертификат, в зависимости от типа, присваивается только к конкретной А записи.

Если магазин открывается как с www, по www.mysite.com, так и без www, по mysite.com, то SSL сертификат можно прикрепить только для одного из вариантов, либо приобрести 2 сертификата для каждого варианта. На страницы сайта и всякого рода ссылки данное правило не влияет, речь идет только о доменном имени, о А-записях.

При использовании SSL сертификата вы так же обращаетесь к странице не по http:// протоколу, а по https :// (добавляется буква s, secure)

Необходимые данные для сертификата

Главное требование которое нужно сделать до покупки сертификата - это создать (или проверить наличие) почтового ящика вида admin@домен.ru. Если такого почтового ящика у вас нет, то стоит заняться его созданием, т.к. без него не получиться завершить процедуру регистрации SSL сертификата.

Но, если, всё же, Вы по какой-то причине, решили сами пройти все этапы и самостоятельно зарегистрировать сертификат, то тут мы опишем шаги.

И так, чтобы зарегистрировать SSL, нам нужно приобрести сертификат через регистратора доменов, например https://www.reg.ru/

Сравнение сертификатов - https://www.reg.ru/ssl-certificate/

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

Обратите внимание!

Браузер Chrome, а так же смежные проекты на его базе (Opera, Microsoft Edge, Yandex Browser) отказываются от поддержки сертификатов выданных центром Symantec®, так же, все суббренды (GeoTrust®, Equifax®, Thawte®, RapidSSL® и VeriSign® включая сам Symantec®)
с 1 декабря 2017 года не считаются доверенными - мы крайне не рекомендуем их приобретать.

Для интернет магазина вполне подойдет сертификат от Comodo, под названием “Comodo SSL” рассмотрим его как пример.


Рисунок 2. Выбор типа сертификата. Цены на скриншоте могут отличатся как вверх так и вниз.


Рисунок 2.1 Выбор срока действия для сертификата.

Нажимайте на “выбрать”


Рисунок 3. Выбор адреса для сертификата.

Для этого нажимаем на кнопку "Получить CSR автоматически" и переходим на страницу генерации, где указываем данные, и, самое главное, сохраняем результат в 2 отдельных тестовых файла.

Это очень важно!

Сохраните (скопировать текст и вставить) коды приватного ключа и запроса.

Если вы пропустите сохранение, восстановить эти данные уже не получится, придется заново перевыпускать весь сертификат.

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

Пример полученного запроса (рис 4)


Рисунок 4. Пример, сгенерированного CSR запроса. Анкетные данные.

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

Далее необходимо заполнить все предлагаемые поля, в основном это контактные данные. В поле программное обеспечение сервера из списка выберите "Microsoft IIS 5.x" (возможно 6,7,8), либо если есть полное название, то выберите "Microsoft Internet Information Services" любой версии, роли не играет.

После того, как все поля заполнены, необходимо оплатить услугу и ждать уведомления на почтовый ящик admin@мойдомен.ru .

В письме будет ссылка, по которой необходимо перейти на нажать на “Утверждаю”, с этого момента начнется процедура выдачи сертификата (ответа). В среднем для "простого" SSL сертификата процедура может занять до 1 дня, но как правило, проходит быстрее, примерно за 10-20 минут.

По завершении выдачи, Вам придет ещё одно письмо с кодом ответа уже не на admin@мойдомен.ru, а на email который вы указали в анкете.

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

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

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


Рисунок 5. Пример сертификата.

После установки SSL на сайт можно обращаться по адресу https://сайт.ру

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

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 уже долгие годы, чтобы .

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