В статье мы расскажем, зачем переводить свой сайт на HTTPS, как подключить SSL на WordPress и как настроить редирект с HTTP на HTTPS.
- Зачем переходить на HTTPS
- Как настроить HTTPS для WordPress
- Обеспечьте защиту передаваемых данных
- 1 этап. Заказ, активация и установка SSL-сертификата
- 2 этап. Перевод сайта на HTTPS
- 3 этап. Настройка переадресации с HTTP на HTTPS
- Как настроить редирект с помощью плагина Really Simple SSL
- Как настроить HTTPS для плагина Elementor
- Введение
- Подготовка
- Яндекс
- После склейки зеркал
- Проблема смешанных протоколов
- Шаг 1. SSL-сертификат
- Шаг 2. Перенаправление на HTTPS
- Шаг 3. Дополнительные настройки для CMS
- Joomla
- Bitrix
- Drupal
- MODX Revolution
- OpenCart
- Prestashop
- Шаг 4. Устранение Mixed Content
- Настройки контента в Google Chrome
- Советы и рекомендации
- Что это такое и зачем на него переходить
- Переходим на HTTPS
- Подготовка сайта
- Настройка редиректа на HTTPS
- Настройка для поисковых систем
- Шаг 1. Выбор и покупка SSL-сертификата
- Защита данных c SSL
- Шаг 2. Активация SSL-сертификата
- Шаг 3. Установка SSL-сертификата
- Шаг 4. Изменение внутренних ссылок на относительные
- Плагины в WordPress для замены HTTP на HTTPS
- Работа с плагином Search Regex
- Работа с плагином Easy HTTPS Redirection
- Шаг 5. Редирект
- Шаг 6. Оповещение поисковых систем
- Шаг 7. Проверка правильности установки SSL-сертификата
- Защитите данные с помощью SSL
- Проверка статуса UFW
- Включение UFW
- Отключение UFW
- Блокировка обращения IP-адреса
- Заблокировать подсеть
- Блокирование входящих подключений к сетевому интерфейсу
- Разрешить обращения IP-адреса
- Разрешение входящих подключений к сетевому интерфейсу
- Удалить правило брандмауэра
- Список доступных профилей приложений
- Включить профиль для определенного приложения
- Отключить профиль для определенного приложения
- Разрешить SSH
- Разрешить входящий SSH с определенного IP-адреса или подсети
- Разрешить входящий Rsync с определенного IP-адреса или подсети
- Разрешить Nginx HTTP / HTTPS
- Разрешить Apache HTTP / HTTPS
- Разрешить все входящие HTTP (порт 80)
- Разрешить все входящие HTTPS (порт 443)
- Разрешить все входящие HTTP и HTTPS
- Разрешить подключение к MySQL с определенного IP-адреса или подсети
- Разрешить подключение к PostgreSQL с определенного IP-адреса или подсети
- Как настроить 301 редирект с HTTP на HTTPS
- Настройка редиректа в ISPmanager
Зачем переходить на HTTPS
Любое действие в Интернете — это обмен данными. Каждый вбитый в поисковую строку запрос проходит путь от пользователя к серверу и обратно. В основе этого обмена лежит работа интернет-протоколов.
Раньше информация передавалась только через незащищенный протокол HTTP. При таком обмене данные (пароли, реквизиты, номера банковских карт) могли легко перехватить злоумышленники. Поэтому разработали HTTPS — протокол безопасного соединения. Защищенный протокол HTTPS работает по принципу непрерывного обмена ключами шифрования между сервером и браузером.
Чтобы сайт стал работать по безопасному соединению HTTPS, нужен SSL-сертификат. SSL-сертификат — это виртуальный документ, который подтверждает подлинность веб-сайта и гарантирует безопасное соединение. Благодаря SSL-сертификату пользователи понимают, что сайту можно доверять. Для сайтов с активным обменом данными (интернет-магазинов, корпоративных сайтов, крупных проектов) установка SSL не просто хороший тон, а необходимость. Подробнее читайте в статье В чём фишка HTTPS, или зачем мне SSL-сертификат?
Как настроить HTTPS для WordPress
Для сайта, созданного на WordPress, переход с HTTP на HTTPS состоит из трёх этапов:
- заказ, активация и установка SSL-сертификата на хостинг;
- перевод сайта с HTTP на HTTPS в WordPress;
- переадресация с HTTP на HTTPS.
Рассмотрим каждый из этапов подробнее.
Обеспечьте защиту передаваемых данных
Установите SSL-сертификат, и ваш сайт будет работать по безопасному соединению HTTPS

1 этап. Заказ, активация и установка SSL-сертификата
На первом этапе настройки HTTPS в WordPress нужно заказать SSL-сертификат. Выберите SSL для вашего проекта: Виды SSL-сертификатов, а затем переходите к покупке. Вам помогут инструкции:
- Как купить SSL-сертификат;
- Как заказать бесплатный SSL-сертификат. Вы можете заказать SSL бесплатно на 6 месяцев, если у вас есть домен или хостинг в REG.RU (например, WordPress hosting или бесплатный хостинг для сайтов WordPress).
После оплаты заказа вам на почту придёт письмо с данными для активации SSL. Следуйте одной из инструкций: Как активировать сертификаты: OrganizationSSL и ExtendedSSL и Как активировать сертификаты: AlphaSSL и DomainSSL.
После активации SSL установите SSL-сертификат на хостинг. Не забудьте проверить правильность установки сертификата.
Если вы установили SSL-сертификат на хостинг, переходите к настройке сайта на HTTPS в WordPress.
2 этап. Перевод сайта на HTTPS
Чтобы ваш сайт открывался по защищённому протоколу, переведите его с HTTP на HTTPS в админ-панели WordPress. Для этого поменяйте две основные ссылки в базе данных сайта.
Готово, теперь ваш сайт доступен по протоколу HTTPS. Однако все ссылки на сайте и в административной панели продолжат работать по протоколу HTTP.
Чтобы перевести все ссылки на HTTPS, переходите к следующему шагу.
3 этап. Настройка переадресации с HTTP на HTTPS
На этом этапе нужно настроить 301 редирект — он перенаправит все ссылки вашего сайта со старого URL-адреса (http://) на новый (https://). Без редиректа на сайте вместо зелёного замка в строке браузера будет отображаться ошибка смешанного содержимого — «Mixed Content». Также 301 редирект позволит не потерять SEO-позиции сайта.
Настроить редирект с HTTP на HTTPS можно двумя способами:
- на хостинге: в панели управления ISPmanager или в конфигурационном файле .htaccess через панели cPanel и Plesk по инструкции Редирект с http на https для Linux;
- установить плагин Really Simple SSL на Wordpress по инструкции ниже.
Мы рекомендуем использовать плагин. Он позволяет настроить редирект на уровне PHP и меняет все ссылки в базе данных сайта автоматически.
Как настроить редирект с помощью плагина Really Simple SSL
Чтобы настроить редирект с помощью плагина:
- Перейдите в раздел «Плагины». Нажмите кнопку Добавить новый и в строке поиска введите «Really simple ssl». Затем нажмите Установить:
- После установки нажмите Активировать:
- Чтобы подтвердить активацию, нажмите Активировать SSL:
- Чтобы завершить активацию, нажмите Go to Dashboard:
Готово, вы активировали плагин Really Simple SSL. Если вы хотите скорректировать действие плагина, во вкладке Настройки пролистайте до блока «Общее», затем укажите нужные параметры и нажмите Сохранить:
Если после активации и настройки плагина на вашем сайте по-прежнему отображается ошибка «Mixed Content», проверьте все ссылки на внешние ресурсы. Если они ведут на сайты с протоколом HTTP — замените их. Если это не поможет, обратитесь в службу поддержки.
Теперь ваш сайт в WordPress будет работать по защищённому протоколу HTTPS. Посетители не будут беспокоиться о сохранности своих данных при работе с вашим сайтом.
Как настроить HTTPS для плагина Elementor
Если вы используете плагин Elementor, то ссылки можно заменить в разделе «Инструменты». Для этого:
- Перейдите в раздел Elementor — Инструменты. Выберите вкладку Сменить URL:
- http://old-url.com — укажите ссылку на ваш сайт с протоколом HTTP,http://new-url.com — укажите такую же ссылку, но с протоколом HTTPS.Затем кликните Сменить URL:
- http://old-url.com — укажите ссылку на ваш сайт с протоколом HTTP,
- http://new-url.com — укажите такую же ссылку, но с протоколом HTTPS.
Готово, вы настроили HTTPS.
Введение
Вопрос переезда сайтов с HTTP на HTTPS волнует все больше пользователей. Тех, чей сайт занимает лидирующие позиции в поисковиках, больше всего пугает подобное изменение – а вдруг позиции сайта значительно просядут? О том, как правильно организовать переход на HTTPS, и будет рассказано в этой статье.
Начнем с того, зачем это вообще нужно? Если кратко и в пределах поисковых систем, то использование на вашем сайте протокола HTTPS повышает рейтинг сайта в глазах Google и Яндекс. Это логично – сайты, обеспечивающие надежную передачу данных, вызывают большее доверие, чем остальные, и поэтому имеют право получать некое преимущество в поисковых системах.
Сейчас, если у сайта есть две версии (и ), то Google в первую очередь показывает версию сайта с безопасным протоколом. Более того, в январе 2017 года браузер Chrome начнет помечать как небезопасные все сайты, которые передают данные о паролях и банковских картах, и при этом работают по протоколу (по крайней мере, такая информация в сентябре появилась в блоге компании). Но это будет лишь шаг к тому, чтобы в будущем помечать как сомнительные все сайты с небезопасным протоколом.
Переход на – это уже не возможность, а необходимость, если вы хотите развивать свой сайт и привлекать на него новых пользователей.
Следующим будет логичный вопрос: почему смена протокола так важна для поисковых систем? Дело в том, что хотя чисто внешне меняется немногое (название-то сайта остается прежним, как и его содержание!), но передающиеся по двум разным протоколам ( и ) сайты поисковая система воспринимает как два разных ресурса. Поэтому происходит то же самое, что и при смене одного домена на другой – позиции сайта могут просесть, количество страниц в выдаче и их позиции также могут измениться.
Подготовка
Теперь давайте разберемся в том, как максимально правильно и безболезненно осуществить перенос своего сайта на . В данной статье я делаю акцент именно на самый комфортный перенос с точки зрения поисковых систем Google и Яндекс.
Первым делом вам необходимо начать с главного – приобрести и установить SSL-сертификат. Если вы являетесь клиентом Timeweb, то у вас есть два основных варианта: Comodo Positive SSL и Let’s Encrypt. Более подробно о них вы можете прочитать в этой статье. Перейдем к самому процессу перехода.
1. Создайте новую версию, копию вашего сайта, которая будет работать по протоколу . На данном этапе у вас должно работать два сайта: один по , другой по . Обязательно проверьте, что они оба работают корректно (особенно сайт, доступный по !).
2. Оба сайта должны содержать файл robots.txt (который помогает ботам индексировать сайт); в нем необходимо прописать сайт, который будет являться главным зеркалом вашего ресурса.
Речь о директиве Host, в которой вы можете задать главное зеркало вашего сайта, которое и будет в итоге показываться в поисковой выдаче (в данном случае речь, конечно, идет о -сайте).
Обратите внимание, что в файле robots.txt должно быть указано только одно доменное имя в одной единственной директиве Host! Если вы укажете несколько директив Host, то к рассмотрению будет принята только первая. Если же вы захотите в одной директиве написать сразу несколько доменов, то такая директива будет проигнорирована.
В итоге ваша директива должна выглядеть примерно вот так:
Обязательно пропишите протокол – собственно, это основное, ради чего вы и прописываете эту директиву. Но на этом работа с файлом robots.txt не заканчивается.
3. В robots.txt закройте -версию вашего сайта от индексации в Google и других поисковых системах. Это необходимо сделать для того, чтобы исключить появление копии вашего сайта в поисковой выдаче. При этом ваш сайт останется в выдаче – его версия.
Для этого в robots.txt необходимо прописать следующее:
4. Также проверьте, что в атрибутах rel=”canonical” и rel=”alternate”, а также в файле sitemap.xml в -версии сайта все ссылки были прописаны по соответствующему протоколу.
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Яндекс
Следующий шаг – известить о тех изменениях, которые вы произвели, поискового бота Яндекса.
1. Новый сайт необходимо добавить в форму «Переобход страниц» (addurl): http://webmaster.yandex.ru/addurl.xml
Либо добавить сайт отдельно в список своих сайтов в Яндекс.Вебмастере: https://webmaster.yandex.ru/sites/add/
Далее нужно понимать, что на индексирование и процесс склейки зеркал потребуется время, которое может варьироваться от одного до трех месяцев. По сути, вы должны заметить, что -сайт пропал из выдачи, в то время как сайт, работающий по протоколу , наоборот, попадет в нее. При этом в это время оба сайта должны работать параллельно.
1. Откройте для индексации сайт, работающий по -протоколу, и добавьте его в Google Search Console. Вам больше ничего не нужно делать, т.к. система Google воспринимает — и -сайт как один и тот же сайт, доступный по двум протоколам, поэтому после переиндексации вы автоматически увидите в выдаче ссылки не на , а на -версию сайта.
2. Если на -сайте вы использовали Disavow Tool (инструмент для отклонения обратных ссылок), то обязательно добавьте его и для -версии сайта.
После склейки зеркал
После того, как в Яндексе ваши сайты были склеены, нужно настроить редирект с -сайта на -сайт.
Установите серверный 301 редирект; при этом, если это возможно, желательно для каждой страницы старого сайта прописать редирект на соответствующую страницу нового сайта.
Для данной настройки лучше обратиться к специалистам, т.к. вам необходимо отредактировать важный конфигурационный файл .htaccess.
Обычно для перенаправления нужно добавить вот эти строки:
Если этот вариант оказался нерабочим, посмотрите другие возможные варианты в разделе «Типовые перенаправления» Справочного центра Timeweb.
Если же самостоятельно решить данные вопросы не получилось, тогда вам точно лучше обратиться с этой работой к программистам.
После всех правок проверьте, что все работает корректно!
Поздравляю, теперь ваш ресурс полностью перешел на -протокол. Даже если позиции сайта все-таки просели, не стоит сразу отчаиваться – скорее всего, через некоторое время они восстановятся.
Проблема смешанных протоколов
Когда ваш сайт начинает работать сразу на двух протоколах – и , и – есть вероятность возникновения проблемы смешанных протоколов. Это происходит обычно тогда, когда на -странице доступны ресурсы, запрос которых происходит по небезопасному -протоколу.
На деле это выглядит примерно так: у вас есть страница https://mysite.com/, на которой должен загружаться скрипт http://mysite.com/script.js или картинка http://mysite.com/image.png. Оба этих элемента относятся к смешанному контенту и, скорее всего, будут заблокированы вашим браузером (если речь идет о скриптах, то страница просто не будет отображаться).
Что же делать в таком случае?
Нужно заменить все полные ссылки на относительные.
Вместо http://mysite.com/script.js вам нужно прописать //mysite.com/script.js, то есть убрать протокол, либо даже /script.js, убрав также и домен. Ваш код будет выглядеть примерно так:
Имейте в виду: ссылки нужно менять только на свои ресурсы, менять адреса чужих сайтов не нужно! Однако если вы не знаете, доступен ли данный сайт по защищенному протоколу или нет, поставьте ссылку без указания протокола – браузер самостоятельно выберет подходящую версию.
Если же вы используете чьи-то чужие скрипты, то желательно у них также изменить адреса на ссылки без указания протокола либо вообще загрузить их себе на сервер.
На сегодняшний день использование протокола HTTPS на сайте необходимо не только для защиты данных, но и для поддержания его позиций в выдаче — поисковые системы учитывают наличие SSL в качестве фактора ранжирования. Чтобы перевести сайт на HTTPS вам необходимо установить SSL-сертификат, а после провести дополнительные настройки, чтобы все работало корректно.
Если вы не хотите заниматься настройкой самостоятельно, рекомендуем вам сертификат SSL Timeweb Pro — при его заказе все необходимые работы по установке и настройке SSL, а также по настройке вашего сайта выполнят наши специалисты. Вы также можете заказать отдельную услугу по настройке сайта при заказе сертификата
Шаг 1. SSL-сертификат
В Timeweb вы можете заказать как сертификаты Rapid SSL, так и бесплатный Let’s Encrypt. Подробнее о типах сертификатов, их заказе и установке см. в разделе
После того, как сертификат установлен, потребуется выполнить определенные настройки на сайте и устранить Mixed Content.
Шаг 2. Перенаправление на HTTPS
Включить перенаправление на протокол HTTPS можно через панель управления или с помощью директив в файле .htaccess
В панели управления:
- Перейдите в раздел «Сайты» — «Мои сайты» и нажмите на значок шестеренки у нужного сайта.
- В открывшемся окне настроек включите опцию «Использовать безопасное соединение https://» и сохраните изменения.
Чтобы настроить перенаправление на HTTPS вручную, нужно добавить соответствующие директивы в файл .htaccess. Стандартная конструкция выглядит следующим образом:
Также возможны другие варианты настроек; примеры директив и информацию о работе с .htaccess можно найти
Шаг 3. Дополнительные настройки для CMS
Далее для корректной работы сайта по HTTPS потребуется выполнить дополнительные настройки, в зависимости от вашей CMS.
В случае с WordPress можно обойтись без настройки вручную и воспользоваться специальными плагинами (например, Really Simple SSL), которые настроят сайт для работы по HTTPS, а также устранят Mixed Content (по крайней мере, частично).
При ручной настройке:
- В админ-панели сайта перейдите в раздел «Настройки» — «Общие».
- Укажите протокол HTTPS в полях «Адрес WordPress» и «Адрес сайта», то есть замените s
- В конфигурационный файл
Joomla
- В админ-панели сайта перейдите в раздел «Система» — «Общие настройки» — вкладка «Сервер».
- В пункте «Включить SSL» выберите «Весь сайт» и сохраните изменения.
- В конфигурационном файле в строке с параметром укажите URL вашего сайта с протоколом HTTPS:
public $live_site = ‘
Bitrix
Для CMS Битрикс рекомендуется выполнить несколько дополнительных проверок:
- Проверить работу форм обратной связи, так как ajax-запросы могут содержать ссылки на HTTP, которые перестанут работать.
- Проверить интеграцию с 1С. Если ваша версия 1С не поддерживает протокол HTTPS, добавьте следующий код в .htaccess:
- Проверить выгрузки на торговые площадки (Яндекс.Маркет и др). Файлы выгрузки будет нужно сгенерировать заново. В разделе «Рабочий стол» — «Магазин» — «Настройки» — «Экспорт данных» включите опцию «Использовать в выгрузке протокол https» в выгрузке Yandex.
- Если используется CDN, поставьте флажок в поле «Сайт работает по https» в настройках сервиса «Ускорение сайта CDN».
- В настройках модуля «E-mail маркетинг» включите HTTPS для ссылок в письмах.
Drupal
Для Drupal 8 дополнительных настроек не требуется.
Для Drupal 7 в конфигурационный файл
MODX Revolution
- В админ-панели сайта перейдите в раздел «Настройки» — «Системные настройки» — вкладка «Сайт».
- Найдите параметр «Тип сервера» (можно искать по ключу ) и замените HTTP на HTTPS.
- Далее найдите параметр «Схема URL» (ключ ) и замените значение -1 на 1.
Если в работе сайта возникают проблемы, попробуйте дополнительно внести следующие изменения в конфигурационный файл
$isSecureRequest = false;
$isSecureRequest = true;
$url_scheme= $isSecureRequest? ‘https://’: ‘http://’;
OpenCart
- В админ-панели сайта перейдите в раздел «Система» — «Настройки».
- На вкладке «Сервер» в пункте «Использовать SSL» выберите «Да» и сохраните изменения.
- В конфигурационном файле в блоках HTTP и HTTPS укажите URL вашего сайта с протоколом HTTPS:
// HTTPdefine(‘HTTP_SERVER’, ‘https://domain.ru/’);// HTTPSdefine(‘HTTPS_SERVER’, ‘https://domain.ru/’);
Prestashop
- Перейдите в раздел «Параметры магазина» — «Общее» и в самом первом пункте «Включить SSL» нажмите на ссылку для проверки поддержки HTTPS.
- При появлении уведомления безопасности подтвердите переход по ссылке.
- В пункте «Включить SSL» выберите «Да» и сохраните настройки.
- В пункте «Включить SSL на всех страницах» выберите «Да» и еще раз сохраните.
Дополнительно рекомендуется очистить кэш: раздел «Расширенные возможности» — «Производительность» — «Очистка кэша».
Шаг 4. Устранение Mixed Content
Ошибки Mixed Content, то есть ошибки смешанного содержимого, говорят о том, что на сайте, который работает по HTTPS, все еще есть ссылки, которые ведут на HTTP. Это могут быть ссылки как на разделы вашего собственного сайта, так и на сторонние ресурсы. Присутствие смешанного содержимого не только негативно влияет на SEO, но и является проблемой безопасности, так как часть данных оказывается не защищена, несмотря на наличие SSL-сертификата на сайте.
Проверить наличие таких ссылок и ошибок можно:
- С помощью специальных сервисов, например, . Сервис выведет список страниц, на которых обнаружено смешанное содержимое.
- В консоли разработчика в браузере. В Chrome и Firefox ее можно открыть с помощью Ctrl+Shift+J. В поиске введите ‘mixed’, чтобы отфильтровать нужные ссылки.
Для устранения смешанного содержимого нет универсального способа, так как разные сайты имеют свои особенности, однако в целом нужно добиться отсутствия ссылок на HTTP в коде вашего сайта.
В WordPress для этой цели можно использовать специальные плагины, например:
При ручной настройке можно:
1) Заменить во всех ссылках, где возможно, протокол HTTP на HTTPS, то есть вместо ссылок вида:
Если ссылка ведет на сторонний ресурс (), сначала проверьте, что он доступен по HTTPS и ссылка останется рабочей. Если это не так, попробуйте воспользоваться вторым вариантом.
2) Второй вариант — заменить ссылки на относительные вместо абсолютных, то есть вместо ссылок вида:
Это же касается ссылок на сторонние ресурсы, в них необходимо полностью отбросить указание протокола. То есть вместо ссылок вида:
Если ссылка такого вида работает некорректно, а по HTTPS ресурс недоступен, то можно рассмотреть варианты:
- если это медиа-контент (картинки, видео и пр.) — по возможности загрузить их на сервер TImeweb, в директорию вашего сайта, и после обновить ссылки;
- найти аналог этого сайта или ресурса и полностью обновить ссылки на данный элемент;
- не использовать этот файл или скрипт, если есть такая возможность, и полностью удалить его из кода страницы.
Пользователи Chrome могут настроить веб-браузер таким образом, чтобы разрешить обработку определенного контента, например JavaScript или файлов cookies, только на защищенных сайтах HTTPS
Одна из доступных всем пользователям опций усиления безопасности и конфиденциальности – ограничение доступа к некоторым функциям браузера со стороны сайтов и сервисов.
Браузеры поддерживают большое количество различных функций, которые обычно включены по умолчанию и могут использоваться сайтами и приложения. Это очень удобно с точки зрения пользовательского опыта, но представляет дополнительные риски безопасности и конфиденциальности.
Как отключить WebRTC в Google Chrome, Яндекс.Браузере, Mozilla Firefox и Opera
Настройки контента в Google Chrome
Google Chrome предоставляет пользователям возможности детально настраивать доступ к определенным видам контента. Можно разрешить, заблокировать или выборочно настроить доступ к файлам cookies, JavaScript, уведомлениям и всплывающим сообщениям.
Для настройки введите chrome://settings/content в адресную строку браузера.

Хотя можно заблокировать все функции для всех сайтов или добавить некоторые сайты в белый список, вы можете также задать более широкие правила доступа. Одно из таких правил позволяет разрешить определенный контент только на HTTPS сайтах, блокируя его на HTTP-сайтах.
Рассмотрим, как разрешить контент только на HTTPS-ресурсах.
- Откройте страницу chrome://settings/content в браузере для отображения параметров настройки контента.
- Выберите JavaScript, чтобы посмотреть доступные опции.
- Переключите JavaScript в неактивное положение для блокировки.
- Нажмите кнопку «Добавить» рядом с пунктом «Разрешить», чтобы добавить исключение к основному правилу (которое заставляет Chrome блокировать JavaScript на всех сайтах, кроме сайтов в белом списке).
- Введите https://*
- Нажмите кнопку «Добавить», чтобы добавить новое правило в браузер.

В результате Chrome станет блокировать выполнение JavaScript только на HTTP-сайтах. Аналогичное правило можно применить к другим типам контента, например к файлам cookies.
Возможно, после внесения данных изменений, некоторые сайты могут работать некорректно. Если вы уверены в их безопасности, добавьте сайты в список исключений «Разрешить», чтобы они снова заработали в браузере.
По материалам Ghacks
Советы и рекомендации
В 2014 году корпорация Google внесла изменения, благодаря которым у сайтов с протоколом HTTPS появился приоритет в поисковых запросах. Спустя три года алгоритмы ужесточились – без надлежащего сертификата веб-страницы вовсе стали отображаться с надписью «ненадежный». Вместе с этим Google выпустила ряд рекомендаций и правил, которые должны были помочь пользователям перейти на защищенный сертификат, однако у многих все равно возникли некоторые проблемы после переезда: посещаемость сайта заметно упала, страницы стали исчезать из топа и т.п.
В сегодняшней статье мы разберемся, что такое HTTPS-протокол, какие существуют SSL-сертификаты и как с их помощью правильно перевести сайт в защищенный режим.
Что это такое и зачем на него переходить
По умолчанию все сайты начинают свой путь с HTTP-протокола передачи данных в интернете. Он использует технологию «клиент-сервер», работающую следующим образом: клиент инициирует соединение и отправляет запрос серверу, который в свою очередь ожидает соединения для получения запроса, выполняет определенные действия и отправляет обратно сообщение с результатом.
Во время передачи данных по HTTP устанавливается незащищенное соединение, поэтому злоумышленник может легко перехватить запросы: получить пароль пользователя, увидеть данные банковской карты и многое другое.
На смену HTTP пришел HTTPS — особое расширение протокола, включающее в себя настройки шифрования. Благодаря этому все платежи, покупки, пароли и прочие данные защищены, и добраться до них злоумышленнику практически невозможно. Также этот интернет-протокол позволяет повысить доверие пользователей, разместить рекламные баннеры в Google AdWords, получить приоритетное ранжирование в поисковых системах и многое другое.
Использование HTTPS сопровождается получением специального SSL-сертификата. Сертификаты разделяются на три вида:
- Domain Validation — необходим для подтверждения домена. Единственный сертификат, не требующий никаких документов для проверки. Получить его можно примерно через 10 минут после оплаты. Отлично подходит для небольших лендингов и сайтов-визиток.
- Organization Validation — требует подтверждения домена и организации. Получить такой сертификат можно только после проверки документов компании и телефонного звонка. Является более надежным и значимым: подтверждение организации увеличивает доверие клиентов. Рекомендуется использовать для сайтов крупных брендов, юридических компаний, интернет-магазинов.
- Extended Validation — аналогичен предыдущему, но с расширенной проверкой. Отрасли использования: банки, крупные финансовые организации.
Каждый из вышеупомянутых сертификатов обеспечивает шифрование трафика между сайтом и браузером.
Резюмируя, стоит сказать, что переадресация с HTTP на HTTPS — надежный способ обезопасить свой сайт от злоумышленников и обеспечить пользователям конфиденциальность. О том, как правильно перейти на защищенное соединение, поговорим далее.
Переходим на HTTPS
Перенос сайта на другой протокол выполняется в несколько этапов. Сперва нужно приобрести SSL-сертификат у хостинга (достаточно открыть нужный раздел в личном кабинете и заказать сертификат). Также нужно изменить все внутренние ссылки на относительные и установить автоматическую переадресацию сайта на защищенный протокол. Подробнее о том, как это быстро и правильно организовать, поговорим в нижеуказанной инструкции.
Подготовка сайта
Перед выполнением редиректа с HTTP на HTTPS рекомендуется исправить некоторые моменты в строчках кода, чтобы избежать возможных ошибок. Первый — внутренние ссылки.

Чтобы избежать предупреждения, указанного выше, необходимо изменить все внутренние ссылки с абсолютных на относительные. Например, ссылку http://ssl.ru/testpage/ потребуется заменить на /testpage/. Также стоит внимательно проверить все ссылки на скрипты в коде страниц.
Теперь можно переходить к подключению SSL.
Как мы уже выяснили, чтобы перейти на HTTPS, требуется установка специального сертификата. Для начала его нужно заказать — сделать это проще всего в личном кабинете хостинга, обычно такие услуги предоставляются всем пользователям. Алгоритм везде одинаковый, поэтому рассмотрим, как эта процедура выполняется на Timeweb.
- Переходим в личный кабинет хостинг-провайдера и открываем раздел «SSL-сертификаты».
- Здесь мы можем не только заказать новый SSL, но и установить ранее приобретенный. Существует большое количество интернет-ресурсов, на которых продают сертификаты разной категории. Почитать о том, как это сделать, вы можете непосредственно на самих ресурсах, предоставляющих данный тип услуг. Поэтому не будем на этом останавливаться, перейдем сразу к заказу SSL через хостинг-провайдера.
- Выбираем подходящий тип и указываем домен, на который будет установлен новый сертификат.
Проверить подлинность сертификата можно на различных сервисах, например, . Все просто: вводим домен с портом 443 и жмем «Check». При успешной проверке будет отображена надпись «It’s all good. We have not detected any issues».

После установки также рекомендуется убедиться, что сайт работает на обоих протоколах. Затем нужно сделать переадресацию с HTTP на HTTPS. Зачем это нужно, расскажем уже в следующем разделе.
Настройка редиректа на HTTPS
Переадресация страниц нужна для того, чтобы пользователи, которые обратились к сайту по старому протоколу, автоматически подключились к новому адресу с HTTPS. Сделать это довольно просто – необходимо в директории сайта открыть файл .htaccess и добавить в него определенный код. Существует несколько вариантов кода.
Также мы можем сделать редирект с HTTP через административную панель CMS системы. В OpenCart для этого нужно открыть файл config.php и прописать в него следующее:
В WordPress изменить wp-config.php:
Для получения подробной информации о редиректах на других CMS обратитесь к их документации.
Настройка для поисковых систем
Если ваш сайт индексируется Google, Яндекс или другими поисковиками, то после перехода на HTTPS необходимо им об этом сообщить. В частности, нужно:
- Изменить все теги «rel=canonical» в HTML-коде. Они должны указывать на ссылки с защищенным протоколом.
- В файлы robots.txt и sitemap.xml необходимо добавить страницы с HTTPS.
- Проверить корректность указанных данных в Яндекс.Метрика и Google Search Console.
- Проверить отображение и доступность вашего сайта через поисковик.
Готово! На этом переход с HTTP на HTTPS завершен. Надеюсь, что у вас не возникло сложностей. Спасибо за внимание!
В этой статье мы расскажем, как перевести сайт на HTTPS.
Cайт без HTTPS ранжируется намного ниже в поисковых системах, в отличие от сайтов, которые используют защищённое соединение. Пользователи больше доверяют сайтам с HTTPS, что может увеличить посещаемость веб-ресурса. Подробнее о преимуществах HTTPS читайте в статье.
Шаг 1. Выбор и покупка SSL-сертификата
- SSL-сертификат с проверкой домена (Domain Validation) — например, DomainSSL (в REG.RU его можно заказать бесплатно) или AlphaSSL. Сертификаты этого типа подойдут физическим и юридическим лицам. Они подтверждают принадлежность домена заказчику. При этом пользователь сайта понимает, что оказался на безопасном сайте. Такой сертификат не содержит информации о владельце, поэтому сайт не считается безопасным для оказания коммерческих услуг.
- SSL-сертификат с проверкой организации (Organization Validation) — например, OrganizationSSL. Этот сертификат подходит только юридическим лицам и ИП. Он подтверждает, что домен принадлежит проверенной организации. Центр авторизации проверяет юридическое и физическое существование компании. Такой сертификат подойдёт, если у вас, например, интернет-магазин.
- SSL-сертификат с расширенной проверкой организации (Extended Validation) — например, ExtendedSSL. Это самый надёжный SSL-certificate для крупных организаций. При выдаче Центр авторизации проводит расширенную проверку юридического лица. Если у вас установлен такой сертификат, в адресной строке браузера рядом с значком замочка будет выделено зелёным цветом название вашей организации.
Также для SSL-сертификата при заказе можно выбрать поддержку Wildcard — это позволит вам защитить не только домен, но и поддомены. Дополнительно с сертификатом можно установить печать доверия SiteSeal, кликнув на которую пользователь может посмотреть данные об организации.
После выбора сертификата закажите его по инструкции:
Защита данных c SSL

Шаг 2. Активация SSL-сертификата
Следующий этап переноса сайта на защищенный протокол — активация SSL-сертификата. После покупки сертификат появится в списке услуг в Личном кабинете.
Активация зависит от вида сертификата:
Шаг 3. Установка SSL-сертификата
Данные для установки сертификата отправляются после его выпуска и активации на контактный e-mail владельца услуги.
- Если ваш сайт размещён на хостинге, вы можете воспользоваться инструкцией: Как установить SSL на хостинг. Сертификат можно установить автоматически в Личном кабинете или провести ручную настройку в панели управления.
- Если сайт размещён на VPS или выделенном сервере, сертификат можно установить автоматически в Личном кабинете, вручную в панели управления ISPmanager или на веб-сервер: Nginx или Apache. Все способы подробно описаны в статье: Как установить SSL-сертификат на VPS или выделенный сервер?
- Если ваш сайт сделан на Конструкторе REG.RU, то установка SSL-сертификата производится автоматически. Инструкция в статье: Работа с услугой Конструктор сайтов REG.RU.
Шаг 4. Изменение внутренних ссылок на относительные
При любых серьезных изменениях сайта рекомендуем сделать бэкап. Если в процессе настройки появится ошибка, сайт можно будет восстановить.
Несмотря на то, что после основной установки сертификата сайт работает по HTTPS-протоколу, внутри сайта могут находиться ссылки на внутренние страницы и файлы (CSS-стили, изображения и т. д.), которые работают по HTTP. В такой ситуации поисковые системы будут считать сайт небезопасным. Чтобы этого избежать, измените все внутренние ссылки на относительные (без указания протокола и домена). Например, http://example.ru/page/ на /page/.
Плагины в WordPress для замены HTTP на HTTPS
Внутри сайта может быть много ссылок, которые работают по протоколу HTTP. Если вы используете WordPress, то изменить протокол можно с помощью плагина. В WordPress есть несколько плагинов с подобной функцией. Мы рассмотрим Search Regex и Easy HTTPS Redirection.
Работа с плагином Search Regex
- Установите и активируйте Search Regex.
- Зайдите в рубрику Инструменты ― Search Regex.
- В строку Search введите старый URL с http://. В строку Replace введите новый URL с https://. В строке Source выберите те виды файлов, которые хотите проверить. Нажмите Search:
Готово, плагин даст полный список файлов, которые надо изменить.
Работа с плагином Easy HTTPS Redirection
- Установите и активируйте Easy HTTPS Redirection.
- Перейдите в Настройки ― HTTPS Redirection.
- Отметьте галочку в строке Enable automatic redirection to the «HTTPS».
- В графе «Apply HTTPS redirection on» выберите The whole domain.
- Поставьте галочку напротив Force resources to use HTTPS URL.
- Нажмите Сохранить изменения:
Готово, теперь все файлы вашего сайта будут работать по протоколу HTTPS.
Шаг 5. Редирект
Чтобы перевести сайт на HTTPS и не потерять трафик, нужно все HTTP-ссылки заменить на HTTPS. Тогда поисковые системы будут считать сайт полностью безопасным.
Сначала настройте редирект 301 (перенаправление) страниц с HTTP на HTTPS для сайта. Этот редирект сообщает поисковым роботам, что страница перемещена на новый адрес и исходную страницу можно исключить из индексации.
- Если сайт размещён на хостинге, настройка редиректа зависит от панели управления. Если у вас панель управления хостингом ISPmanager, настройка происходит в панели, если же cPanel или Plesk, редирект настраивается через конфигурационный файл .htaccess. Подробная инструкция в статье: Редирект с HTTP на HTTPS для Linux.
- Если сайт размещён на VPS или выделенном сервере, вы можете настроить редирект через веб-сервер Nginx: Настройка редиректа с помощью Nginx на VPS.
- Если ваш сайт сделан на Конструкторе REG.RU, редирект можно настроить прямо в Конструкторе: Работа с услугой Конструктор сайтов REG.RU.
Шаг 6. Оповещение поисковых систем
Обратите внимание, что переезд на HTTPS и смена зеркал сайта может занять 2-4 недели, поэтому для этой процедуры выберите подходящее время, чтобы не потерять клиентов.
Если до установки SSL вы пользовались Яндекс.Вебмастером или Google Search Console, то оповестите поисковые системы о переходе на HTTPS по одной из инструкций ниже.
Как добавить сайт в Яндекс.Вебмастер
- В поле укажите адрес сайта. Если на сайте подключён SSL-сертификат, то укажите домен с https, например https://reg.ru. Нажмите Добавить:
- Подтвердите права на данный адрес любым предложенным способом. Нажмите Проверить:
Готово, вы добавили сайт в Яндекс.Вебмастер.
- Затем выполните переезд сайта на HTTPS. Зайдите в старое зеркало сайта. В разделе «Индексирование» ― «Переезд сайта» поставьте галочку Добавить HTTPS. Нажмите Сохранить:Из-за переезда первые несколько недель могут наблюдаться колебания позиций в поисковой выдаче.Как только заявка будет принята, в системе появится уведомление. Если вы подписаны на email-рассылку, Яндекс пришлёт уведомление о склейке зеркал:Теперь главным зеркалом станет версия HTTPS.
- Добавьте новую карту сайта:
- Добавьте новое зеркало с HTTPS. Кликните на меню в левом верхнем углу и нажмите Добавить ресурс:
- Выберите тип ресурса и подтвердите право собственности:
- Добавьте новую карту сайта:
- Если у вас есть отклоненные ссылки в Disavow Tool, то загрузите их заново.
Шаг 7. Проверка правильности установки SSL-сертификата
После переноса сайта на HTTPS проверьте, доступен ли сайт по защищённому протоколу SSL. Введите в браузере URL-адрес вашего сайта вида https://example.ru. Если страница загрузится и в адресной строке браузера появится замочек, значит, сайт стал доступен по HTTPS. Таким образом проверьте и другие страницы сайта.
Проверить правильность установки SSL-сертификата можно с помощью сервиса sslshopper.com. Если результат положительный, вы осуществили переезд сайта на HTTPS правильно.
Готово! Вы настроили для сайта переход с HTTP на HTTPS. С помощью этой инструкции можно любой сайт перенести на HTTPS.
Защитите данные с помощью SSL
Защитите данные на вашем сайте от мошенников. Установите SSL-сертификат, чтобы сайт работал по HTTPS-протоколу.

Инструментом настройки брандмауэра по умолчанию для Ubuntu является ufw. Разработанный для упрощения настройки брандмауэра iptables, ufw предоставляет удобный способ создания брандмауэра на базе хоста IPv4 или IPv6. По умолчанию UFW отключен.
Проверка статуса UFW
Проверить, включен ли брандмауэр, используйте эту команду:
sudo ufw status

Включение UFW
Если при выполнении команды ufw status вы получили сообщение Status: inactive, это означает, что брандмауэр еще не включен в системе. Вам нужно выполнить команду, чтобы включить его.
По умолчанию, когда UFW включен, он блокирует внешний доступ ко всем портам на сервере. На практике это означает, что если вы подключены к серверу по SSH и включите ufw до разрешения доступа через порт SSH, вы будете отключены.
Чтобы включить UFW в вашей системе, выполните команду:
sudo ufw enable

Вы увидите результат, подобный этому.
Чтобы увидеть, что в настоящее время заблокировано или разрешено, вы можете использовать параметр verbose при запуске ufw status, как показано ниже:
sudo ufw status verbose

Отключение UFW
Если по какой-то причине вам нужно отключить брандмауэр, вы можете сделать это с помощью следующей команды:
sudo ufw disable
Будьте внимательны, эта команда полностью отключит службу брандмауэра в вашей системе!
Блокировка обращения IP-адреса
sudo ufw deny from 91.198.174.190


Заблокировать подсеть
sudo ufw deny from 198.174.0/24

Блокирование входящих подключений к сетевому интерфейсу
sudo ufw deny in on eth0 from 91.198.174.192

Разрешить обращения IP-адреса
sudo ufw allow from 198.174.192


Разрешение входящих подключений к сетевому интерфейсу
sudo ufw allow in on eth0 from 91.198.174.22

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

Удалить правило брандмауэра
sudo ufw delete allow from 91.198.174.192

Другой способ указать, какое правило вы хотите удалить, – это указать ID правила. Эту информацию можно получить с помощью следующей команды:
sudo ufw status numbered

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

Если вы снова перечислите свои правила со статусом “sudo ufw”, вы увидите, что правило было удалено.
Список доступных профилей приложений
При установке приложения, которые полагаются на сетевые коммуникации, обычно устанавливают профиль брандмауэра, который можно использовать для разрешения подключения с внешних адресов. Это часто то же самое, что запустить “ufw allow from”, с тем преимуществом, что это ярлык, который абстрагирует конкретные номера портов, используемые службой, и обеспечивает удобную номенклатуру для ссылающихся служб.
sudo ufw app list
Если вы установили службу, например, веб-сервер или другое сетезависимое программное обеспечение, и профиль не был доступен в брандмауэре, сначала убедитесь, что служба включена. Для удаленных серверов обычно доступен OpenSSH:

Включить профиль для определенного приложения
Чтобы включить профиль приложения брандмауэра, выполните команду “ufw allow”, за которой следует имя профиля приложения, который вы хотите включить и который можно получить с помощью команды “sudo ufw app list”. В следующем примере мы включаем профиль OpenSSH, который разрешит все входящие SSH-соединения на стандартном порту SSH.
sudo ufw allow OpenSSH

Отключить профиль для определенного приложения
Чтобы отключить профиль приложения, который вы ранее настроили в брандмауэре, вам нужно удалить соответствующее правило. Например, рассмотрим следующий вывод из “sudo ufw status”

Этот вывод указывает на то, что профиль приложения “Nginx Full” в настоящее время включен, разрешая любые соединения с веб-сервером как через HTTP, так и через HTTPS.
Если вы хотите разрешить только HTTPS-запросы к вашему веб-серверу, вам нужно сначала включить наиболее ограничивающее правило, которым в данном случае будет “Nginx HTTPS”, а затем отключить активное правило “Nginx Full”:
sudo ufw allow «Nginx HTTPS»
sudo ufw delete allow «Nginx Full»
Помните, что вы можете перечислить все доступные профили приложений с помощью “sudo ufw app list”.
Разрешить SSH
Следующая команда включит профиль приложения OpenSSH для брандмауэра и разрешит все соединения с портом SSH по умолчанию на сервере:
Хотя это менее удобно для пользователя, альтернативным синтаксисом является указание точного номера порта службы SSH, который по умолчанию обычно установлен на 22:
sudo ufw allow 22

Разрешить входящий SSH с определенного IP-адреса или подсети
sudo ufw allow from 91.198.174.33 proto tcp to any port 22

Вы также можете использовать адрес подсети в качестве параметра “from”, чтобы разрешить входящие соединения SSH из всей сети:
sudo ufw allow from 91.198.174.0/24 proto tcp to any port 22

Разрешить входящий Rsync с определенного IP-адреса или подсети
Программа Rsync, которая работает на порту 873, может использоваться для передачи файлов с одного компьютера на другой.
sudo ufw allow from 91.198.174.33 to any port 873

Чтобы разрешить всей подсети 91.198.174.0/24 возможность “rsync” на ваш сервер, выполните команду:
sudo ufw allow from 91.198.174.0/24 to any port 873

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

Чтобы разрешить трафик HTTP и HTTPS, выберите Nginx Full. В противном случае выберите либо Nginx HTTP, чтобы разрешить только HTTP, либо Nginx HTTPS, чтобы разрешить только HTTPS.
Следующая команда разрешит трафик HTTP и HTTPS на сервере (порты 80 и 443):
sudo ufw allow «Nginx Full»

Разрешить Apache HTTP / HTTPS
При установке веб-сервер Apache устанавливает несколько различных профилей UFW внутри сервера. После установки и включения Apache в качестве службы выполните следующую команду, чтобы определить, какие профили доступны:

Чтобы включить трафик HTTP и HTTPS, выберите “Apache Full”. В противном случае выберите либо “Apache” для HTTP, либо “Apache Secure” для HTTPS.
Следующая команда разрешит HTTP и HTTPS трафик на сервере (порты 80 и 443):
sudo ufw allow «Apache Full»

Разрешить все входящие HTTP (порт 80)
Веб-серверы, такие как Apache и Nginx, обычно прослушивают HTTP-запросы на порту 80. Если ваша политика по умолчанию для входящего трафика настроена на отклонение или запрет, вам необходимо создать правило UFW для разрешения внешнего доступа к порту 80. В качестве параметра этой команды можно использовать либо номер порта, либо имя службы (http).
Чтобы разрешить все входящие HTTP-соединения (порт 80), выполните команду:
sudo ufw allow http

Альтернативным синтаксисом является указание номера порта службы HTTP:

Разрешить все входящие HTTPS (порт 443)
HTTPS обычно работает на порту 443. Если ваша политика по умолчанию для входящего трафика настроена на отклонение или запрет, вам нужно создать правило UFW для разрешения внешнего доступа по порту 443. В качестве параметра этой команды можно использовать либо номер порта, либо имя службы (https).
Чтобы разрешить все входящие соединения HTTPS (порт 443), выполните:
sudo ufw allow https

Альтернативным синтаксисом является указание номера порта службы HTTPS:

Разрешить все входящие HTTP и HTTPS
Если вы хотите разрешить трафик HTTP и HTTPS, вы можете создать одно правило, которое разрешает оба порта. Это использование требует, чтобы вы также определили протокол с помощью параметра “proto”, который в данном случае должен быть установлен на tcp.
Чтобы разрешить все входящие соединения HTTP и HTTPS (порты 80 и 443), выполните команду:
sudo ufw allow proto tcp from any to any port 80,443

Разрешить подключение к MySQL с определенного IP-адреса или подсети
MySQL прослушивает клиентские соединения на порту 3306. Если ваш сервер баз данных MySQL используется клиентом на удаленном сервере, вам необходимо создать правило UFW, чтобы разрешить такой доступ.
sudo ufw allow from 91.198.174.33 to any port 3306

Чтобы разрешить всей подсети 91.198.174.0/24 возможность подключения к вашему серверу MySQL, выполните команду:
sudo ufw allow from 91.198.174.0/24 to any port 3306

Разрешить подключение к PostgreSQL с определенного IP-адреса или подсети
PostgreSQL прослушивает клиентские соединения на порту 5432. Если ваш сервер баз данных PostgreSQL используется клиентом на удаленном сервере, вам необходимо разрешить этот трафик.
sudo ufw allow from 91.198.174.33 to any port 5432

Чтобы разрешить всей подсети 91.198.174.0/24 возможность подключения к вашему серверу PostgreSQL, выполните команду:
sudo ufw allow from 91.198.174.0/24 to any port 5432
Почтовые серверы, такие как Sendmail и Postfix, обычно используют порт 25 для SMTP-трафика. Если ваш сервер не должен отправлять исходящую почту, вы можете заблокировать этот вид трафика. Чтобы заблокировать исходящие SMTP-соединения, выполните команду:
sudo ufw deny out 25

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

Обращаем внимание, что редирект стоит настраивать только в том случае, если в панели управления уже установлен SSL-сертификат: Как установить SSL-сертификат на хостинг?
Как настроить 301 редирект с HTTP на HTTPS
- Если у вас на хостинге панель управления ISPmanager, переадресацию можно настроить в несколько кликов средствами панели управления.
- Если у вас на хостинге панель управления — cPanel или Plesk, редирект настраивается только через конфигурационный файл .htaccess
Настройка редиректа в ISPmanager
Откройте панель управления ISPmanager и перейдите в раздел «Сайты». Выберите домен, который должен открываться по HTTPS, и нажмите на него двойным кликом:
Поставьте галочку напротив пункта Перенаправлять HTTP-запросы в HTTPS и нажмите ОК, чтобы сохранить изменения:
Готово, теперь ваш сайт будет работать по протоколу HTTPS.

