Как установить SSL-сертификат на VPS или выделенный сервер?

Содержание

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

Центров сертификации достаточно много, а также партнеров, которые продают сертификаты этих центров


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

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

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

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

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

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

Как перенести сайт с HTTP на HTTPS правильно

Если вы переводите существующий проиндексированный сайт на SSL, то сначала рекомендуется, чтобы Yandex склеил и версии сайта. Для этого, вы должны сначала настроить сайт так, чтобы он был доступен и по http, и по https верно, а затем прописать в нужный адрес в директиве Hosts.

Вот, скажем, пример файла для сайта

User-agent: Yandex
Disallow:
Host: https://sheensay.ru

User-agent: *
Disallow:

Sitemap: https://sheensay.ru/sitemap.xml

Далее, рекомендуется, чтобы все внутренние ссылки были относительными либо начинались строго с протокола . У всех внешних javascript скриптов, ссылок, вставленных картинок, аудио- и видеоплееров, и других внешних объектов протоколы заменяются на абсолютные или относительные . Приведу пример:

  • НЕПРАВИЛЬНО:
  • ПРАВИЛЬНО: <img src=»//placehold.it/250×250″>
  • ПРАВИЛЬНО: <img src=»https://placehold.it/250×250″>

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

Далее, дождавшись, когда Яндекс всё склеит правильно, можно настроить 301 редирект с http на https

Где получить бесплатный сертификат?

1. Let’s Encrypt

Это серьезная некомерческая организация, которая предоставляет бесплатные сертификаты. Возможно, вы даже слышали о компаниях, которые спонсируют ее на более $300,000 в год каждая: Facebook, Mozilla, Cisco и Chrome (Google).

На https://clickget.ru, кстати, используется их сертифкат. Можете зайти и посмотреть если хотите.

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

1. Виртуальный хостинг

Если у вас виртуальный хостинг, то, возможно, он уже поддерживает выпуск сертификатов через Let’s Encrypt. Лично я знаю что Timeweb, Reg.ru и многие другие это уже поддерживают.

Покажу на примере Таймвеба (которым мы пользуемся), как выглядит выпуск сертификата. Заходите в “Дополнительные услуги”, потом в “SSL сертификаты” и в поле “Сертификат” выбираете SSL Let’s Encrypt:

Все, сертификат будет выпущен в течении пары минут и будет автоматически продлеваться каждые 3 месяца. То есть это сделать проще простого.

Если ваш хостинг не поддерживает Let’s Encrypt, спросите их, возможно, скоро они добавят эту возможность.

2. Свой сервер

Если у вас свой сервер(облачный, VPS, Dedicated и т.п.), то воспользуйтесь сайтом certbot.eff.org. Выбираете там операционную систему и сервер (Apache/Nginx) и получаете пошаговую инструкцию, как все настроить. Правда сможет сделать это только человек, который в этом разбирается.

По идее, можно еще воспользоваться сайтом sslforfree.com, но имейте ввиду, что Let’s Encrypt выпускает сертификаты только на 3 месяца. И каждые 3 месяца нужно его обновлять. Поэтому устанавливать его руками проблематично. Воспользовавшись же способами выше, сертификат будет продляться автоматически, без вашего участия.

2. CloudFlare

Это бесплатный CDN провайдер, используя который, вы получаете кучу полезного, включая бесплатные SSL сертификаты.

Минимальные требования к браузерам и ОС для работы сертификата можно найти внизу этой страницы (Windows Vista+, Firefox 2+, Android 4.0+ и т.п.)

Если вкратце, вам нужно зайти туда, где покупали домены, и перенастроить DNS сервера на CloudFlare, после этого ваш сайт станет доступен через HTTPS. Если вы в этом не разбираетесь,  вам стоит попросить сделать это другого человека. Процедура не должна занять более 30 минут и стоить будет недорого.

1. Сначала регистрируетесь здесь

2. Вводите ваши домены через запятую в поле:

Cloudflare автоматически просканирует и добавит DNS записи

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

4. На следующем шаге выбираете бесплатный тариф. После этого вы получите имена 2х серверов. Теперь вам нужно зайти туда, где вы покупали домен и сменить (делегировать) ваши неймсервера (nameserver или DNS сервер) на новые:

Если все DNS записи вы перенесли корректно, то ваши посетители никаких изменений не заменят(то есть сайт будет работать без перебоев).

5. Когда все перенесется, зайдите в настройки вашего домена на вкладку “Crypto” и там где SSL выберите “Flexible”. Все, теперь SSL соединение с вашим сайтом будет работать

Другие варианты:

  1. Еще бесплатные сертификаты выдает StartCom. Я пользовался им пока, в конце 2016 Mozilla, Apple и Google решили перестать доверять этим сертификатам в новых версиях браузеров. И, пока что, StartCom это не исправил.

На будущее:

  • Перед тем как ставить переадресацию с HTTP на HTTPS проверьте все ли работает (переадресацию обычно можно настроить в панеле хостинга)
  • Нужно заменить все пути к картинкам и т.п. в коде сайта с http:// на // иначе соединение не будет считаться защищенным. Для WordPress можно воспользоваться плагином типа этого.
  • При переадресации с HTTP на HTTPS, используя CloudFlare, будьте аккуратны, плагин переадресации должен их поддерживать, иначе будет бесконечная переадресация. Для Вордпресса есть вот этот плагин. Дело в том, что запрос на ваш сайт идет через HTTP в любом случае, нужно читать данные, посылаемые CloudFlare, чтобы понять, открыт ли ваш сайт через HTTP или HTTPS у посетителя.

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

P.S. Если же ваш хостинг не поддерживает это, или, по каким-то причинам, вы хотите сертификат от известной компании, попробуйте этот сайт (там самые дешевые).

Установка SSL вручную

Apache

  1. Для начала необходимо переместить все файлы сертификата на сервер (например, через FTP). Желательно сохранять файлы с пометкой «только чтение».
  1. Далее редактируем файл конфигурации Apache (путь по умолчанию /etc/httpd/httpd.conf). На всякий случай рекомендуется создать резервную копию файла.

Создайте блок виртуального хоста <VirtualHost> и скопируйте туда следующие строчки:

<VirtualHost 10.0.0.1:443>  DocumentRoot /home/user/data/www/domain.com  ServerName domain.com  SSLEngine on  SSLCertificateFile /path/to/domain.crt  SSLCertificateKeyFile /path/to/domain.key  SSLCACertificateFile /path/to/ca.crt</VirtualHost>

Где:

domain.com — это имя вашего домена;

10.0.0.1 — ip-адрес, на котором располагается домен;

/home/user/data/www/domain.com — путь до корневой директории вашего домена;

/path/to/domain.crt — файл сертфиката;

/path/to/domain.key — файл с ключом сертификата;

/path/to/ca.crt — файл корневого сертификата.

  1. Перезапускаем Apache

Перезапускаем Apache командой apachectl restart или apache2ctl restart. Если где-то была допущена ошибка, перезапустить не получится.

Nginx

  1. Перемещаем все файлы сертификата на сервер (например, через FTP). Желательно сохранять файлы с пометкой «только чтение».
  1. Необходимо соединить сертификат с промежуточным сертификатом (intermediate.crt) или с цепочкой сертификатов (ca-bundle.crt). Можно сделать это двумя способами:

а) черезUNIX-команду cat:

cat intermediate.crt >> domain.crt

б) редактированием файла домена: после текста основного сертификата в файле domain.crt вставляем текст из файлов остальных сертификатов — причём, каждый сертификат указывается с новой строчки.

  1. Редактируем файл конфигурации Nginx (путь в Linux /etc/nginx/nginx.conf).

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

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

Где


domain.com — это имя вашего домена;

10.0.0.1 — ip-адрес, на котором располагается домен;

/path/to/domain.crt — файл сертфиката;

/path/to/domain.key — файл с ключом сертификата.

  1. Перезапускаем Nginx:

а) Linux

etc/init.d/nginx restart

б) FreeBSD

/usr/local/etc/rc.d/nginx restart

Как скопировать сертификат в реестр

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

Настройка считывателя

Для установки реестра в список считывателей ключевых носителей пользователь должен:

запустить КриптоПро от имени администратора;

через «Оборудование» нажать «Настроить считыватель»;

в открывшемся новом окне нажать кнопку «Добавить»;

затем в мастере установки выбрать, какой считыватель необходимо добавить (реестр, смарт-карту, диски и т.д.);

последовательно нажать «Далее» и «Готово».

Для последующей корректной работы необходимо перезагрузить компьютер.

Копирование

Для копирования сертификата в реестр лучше воспользоваться программой КриптоПро. Пользователь запускает программу и нажимает «Запустить с правами администратора».

Затем переходим во вкладку «Сервис» и жмем «Скопировать».

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

В поле «Имя ключевого контейнера» имя отразится в нечитаемом формате. Это нормально.

Нужно нажать «ОК» и «Далее», после чего откроется окно для ввода пин-кода от USB-носителя.

Если пароль не менялся, то стандартный будет:

  • для Рутокен для пользователя: 12345678;
  • для Рутокен для администратора:87654321;
  • для eToken: 1234567890.

Теперь нужно переложить сертификаты в реестр.

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

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

Установка

После копирования установить сертификат ЭЦП на компьютер с флешки в реестр можно 2 способами:

  • через установку личных сертификатов;
  • через просмотр сертификатов в контейнере.

Оба способа используют программу КриптоПро CSP.

Через раздел личных сертификатов

Как установить ЭЦП в реестр при условии, что на ключевом носителе имеется папка *.000 и файл .cer:

Запустить КриптоПро и выбрать «Установить личный сертификат» через вкладку «Сервис».

В мастере установки сертификатов нажать «Далее» и через «Обзор» выбрать расположение файла сертификата.

В новом окне нужно выбрать «Мой компьютер» и далее вид съемного носителя, который содержит закрытый ключ. Затем нажать «Открыть»;


Далее в соответствующей строке прописывают расположения файла сертификата.

  • Затем нужно проверить данные сертификата, который необходимо установить, и нажать «Далее».
  • Следующий шаг — это в новом окне выбор ключевого контейнера через кнопку «Обзор».

  • В списке выбираем реестр, после чего нажимаем «Ок».
  • В строке с именем ключевого контейнера должен автоматически прописаться контейнер с закрытым ключом. Нажать «Далее».
  • Через «Обзор» выбираем хранилище сертификата.

Через папку «Личные» выбираем папку «Реестр», а затем нажимаем «Далее».

Последний шаг — завершить установку нажатием кнопки «Готово».

Через несколько секунд система выдаст сообщение об успешном завершении установки сертификата электронной подписи.

Через просмотр сертификатов

Данный способ подходит в том случае, если имеется только папка вида *.000.

Для установки нужно:

  • Запустить КриптоПро.
  • Через «Сервис» перейти на вкладку «Просмотреть сертификаты в контейнере».

Затем выберите носитель через кнопку «Обзор» и в открывшемся окне выделите нужный реестр.

  • В строке с именем контейнера должна быть информация о контейнере с закрытым ключом, если все верно, то нужно нажать «Ок».
  • Затем в окне с информацией нужно нажать «Свойства».

После проверки данных нажать кнопку «Установить».

В открывшемся мастере импорта нужно выбрать хранилище. Для этого сначала ставят галочку напротив «Поместить все сертификаты в…» и нажимают «Обзор».

Затем через папку «Личные» выбрать папку с носителем реестром и в строке «Название хранилища» нажать «Далее».

В завершении установки нужно лишь «Готово» в мастере установки.

Настройка HTTPS

Обязательно дождитесь установки, после чего продолжите настройку SSL-сертификата на WordPress. 

По умолчанию сайт открывается в браузере по протоколу HTTP. Чтобы автоматически устанавливалось безопасное соединение HTTPS, нужно включить перенаправление с HTTP на HTTPS. Рассмотрим два способа.

Настройка перенаправления в админке WordPress

  1. В меню выберите «Настройки», затем «Общие».
  2. В полях “WordPress Address (URL)” и “Site Address (URL)” к “http” добавьте в конце “s”, чтобы получилось “https”, и сохраните изменения.

Включение перенаправления в панели хостинга. На примере Timeweb

  1. Перейдите в раздел «Сайты». 
  2. Рядом с папкой нужного сайта нажмите на зеленую кнопку в виде шестеренки.
  3. Переведите переключатель «Использовать безопасное соединение https://» в состояние «вкл» и нажмите «Сохранить настройки». 

Проверьте, как ваш сайт открывается в браузере: в адресной строке должен быть «замочек».

Что такое HTTPS

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

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

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

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

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

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

Подтверждение прав владения доменом

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

Возможны последующие проверки:

  • проверка организации;
  • расширенная проверка.

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

Txt запись в DNS

Вам будет предложено добавить запись типа TXT в DNS записи домена

Рассмотрим, как это делается в isp manager

  1. Во вкладке домены нужно выбрать доменные имена

  2. Просмотреть NS записи домена

  3. Создать новую ресурсную запись

  4. Выбрать тип txt и в поле «Значение» вставить текст записи

TXT запись может появиться не сразу, обычно это происходит в течение часа.

Проверить DNS записи домена можно с помощью утилиты dig. Сервисов существует много, возьмем, например, этот.

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

После добавления записи не забудьте вернуться в административную панель хостинга и нажать кнопку «Проверить добавление записи».

Cname запись в DNS

Нужно будет сделать то же самое, что и в предыдущем пункте, только выбрав тип записи CNAME.

Запись имеет вид:

_hash.yourdomain.com CNAME hash.comodoca.com.


Yourdomain.com – имя вашего домена

Подтверждение с помощью доменной почты

При выборе этого способа подтверждения на административную доменную (например, admin@ИМЯ ДОМЕНА, postmaster@ИМЯ ДОМЕНА) почту придет письмо от центра сертификации со ссылкой для подтверждения.

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

Файл на сервере

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

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

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

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

# netstat -napt | grep 443

Для установки сертификата откройте конфигурационный файл Apache.

Debian - /etc/apache2/apache2.conf 
Centos - /etc/httpd/conf/httpd.conf.

Найдите VirtualHost вашего домена. Отредактируйте блок «VirtualHost», добавив в него следующие строки:

<VirtualHost 10.0.0.1:443> 
	DocumentRoot /var/www/user/data/www/domain.com 
	ServerName domain.com SSLEngine on 
	SSLCertificateFile /path/to/domain.crt 
	SSLCertificateKeyFile /path/to/domain.key 
	SSLCACertificateFile /path/to/ca.crt 
</VirtualHost>

10.0.0.1 — ip адрес, на котором находится домен.

/path/to/domain.crt — файл, в котором находится сертификат.

/path/to/domain.key — файл, в котором находится ключ сертификата.

/path/to/ca.crt — файл корневого сертификата.

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

apachectl restart
или
apache2ctl restart

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

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

1. Для начала вам необходимо объединить 3 сертификата (сам SSL-сертификат, промежуточный и корневой сертификаты) в один файл. Для этого создайте на локальном ПК новый текстовый документ с именем your_domain.crt, например, при помощи блокнота.

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

-----BEGIN CERTIFICATE----- 
#Ваш сертификат# 
-----END CERTIFICATE----- 
-----BEGIN CERTIFICATE----- 
#Промежуточный сертификат# 
-----END CERTIFICATE----- 
-----BEGIN CERTIFICATE----- 
#Корневой сертификат# 
-----END CERTIFICATE-----

2. Создайте файл your_domain.key и скопируйте в него содержание приватного ключа сертификата;

3. Загрузите файл your_domain.crt и приватный ключ сертификата your_domain.key на сервер, в директорию /etc/ssl/. Директория может быть и любой другой;

4. Откройте конфигурационный файл Nginx и отредактируйте виртуальный хост вашего сайта, добавив следующие строки:

server{ 
listen 443; 
ssl on; 
ssl_certificate /etc/ssl/your_domain.crt; 
ssl_certificate_key /etc/ssl/your_domain.key; 
server_name your.domain.com;

/etc/ssl/your_domain.crt и /etc/ssl/your_domain.key — пути до загруженных вами файлов.

Если необходимо, чтобы сайт работал и с защищенным соединением (https:// ) и с незащищенным (http:// ), вам необходимо иметь две секции server{} для каждого типа соединения: для этого создайте копию секции server{} и оставьте её без изменения, а вторую отредактируйте согласно коду выше;

5. Чтобы изменения вступили в силу, перезагрузите сервер Nginx командой:

/etc/init.d/nginx restart

Установка бесплатного сертификата на хостинг

Через административную панель хостинга

Выбираем «Установить SSL».

Загружаем все 3 файла.

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

Важно! Срок действия сертификата 3 месяца, после чего его потребуется обновиться, выполнив инструкцию еще раз. Важно! Если сертификат выдается на поддомен, то потребуется подтвердить лишь основной домен (соответственно загрузить лишь 1 файл или установить 1 TXT-запись)

Важно! Если сертификат выдается на поддомен, то потребуется подтвердить лишь основной домен (соответственно загрузить лишь 1 файл или установить 1 TXT-запись)

Через ISPmanager

Следует посетить раздел «WWW»-«SSL-сертификаты», после чего кликнуть на «Создать».

Выбираем пункт «Существующий».

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

Важно! Если не получается воспользоваться ни первым ни вторым способом или данного раздела (SSL) нет в административной панели (как, например, в SprintHost), то Вы можете загрузить сертификаты на свой сервер и создать тикет хостинг-провайдеру для установки

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

openssl req -batch -noout -new -newkey rsa:2048 -nodes -keyout cert.key

Генерация CSR-запроса:

openssl req -new -key cert.key -out cert.csr

Убрать пароль с ключа:

openssl rsa -in cert.key -out cert.key

Посмотреть данные CSR:

openssl req -noout -text -in cert.csr

Данные сертификата (проверить кем выдан, например):

openssl x509 -noout -text -in cert.crt

Проверить, что ключ соответствует сертификату:

openssl x509 -noout -modulus -in cert.crt | openssl md5
openssl rsa -noout -modulus -in cert.key | openssl md5

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

Узнать длину запроса:

echo '(' `openssl req -noout -modulus -in cert.csr | cut -d'=' -f2 | wc -c` '-1)*4' | bc

Проверить выдачу HTTPS:

openssl s_client -host  ulanovka.ru -port 443

Шаг 6. Настраиваем автоматическое обновление

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

Для запуска проверки ежедневных обновлений мы будем использовать Cron — стандартный системный сервис для запуска повторяющихся задач. Задачи Cron указываются в файле под названием :

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

Часть строчки означает «запускай следующую команду в 3:15 ночи ежедневно». Вы можете выбрать любое время.

Команда для Certbot проверит все сертификаты, установленные в системе, и обновит каждый, срок использования которого истекает менее, чем через 30 дней. Ключ говорит Certbot’у ничего не выводить и не ждать ввода от пользователя. перезагрузит Nginx, чтобы он использовал новые файлы сертификата, но только в случае, если произошло обновление.

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

Как настроить на 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.

Существует много типов переадресаций, которые вы можете использовать. Тем не менее, как правило, лучше всего использовать редирект 301, который сообщает поисковым системам, что ваш сайт переместился с одного адреса на другой. Чтобы реализовать это перенаправление, вам нужно отредактировать файл с именем .htaccess, который контролирует взаимодействие вашего сервера с WordPress, а также структуру URL-адреса.

Это потребует от вас прямого доступа к файлам вашего сайта, используя инструмент File Transfer Protocol (FTP), такой как FileZilla. Если вы впервые делаете это, вы можете найти все подробности в нашем руководстве по FTP.

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

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

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

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

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

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

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

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

Мы рекомендуем Really Simple SSL, так как его очень легко настроить. Всё, что вам нужно — это сертификат для WordPress SSL, готовый к работе:

После установки и включения плагина он сканирует ваш сайт на наличие сертификата WordPress SSL. Если найдёт, он поможет вам включить HTTPS на всём сайте всего за один клик. Для этого просто зайдите во вкладку Настройки> SSL на панели управления и нажмите кнопку Перезагрузить в HTTPS. Да, всё настолько просто!

Если плагин Really Simple SSL не кажется вам настолько простым, есть альтернативные инструменты, которые вы можете использовать для достижения тех же результатов. Есть и другие отличные параметры плагина для WordPress SSL, которые включают WordPress HTTPS (SSL) и Force HTTPS.


С этим читают