Javascript скрипты. Веб-дизайнеру - полезные ссылки

Google уже предупредил, что защищенные сайты получат преимущества при ранжировании в поисковой выдаче. Это означает, что сайт может быть оценен выше, если его доменное имя начинается с префикса «HTTPS :». Данный тип протокола защищает посетителей сразу от нескольких видов мошенничества за счет шифрования данных. Что значительно затрудняет «отслеживание » и кражу информации. Если вы хотите защитить своих пользователей и улучшить ранжирование страниц, то установка даже бесплатного SSL сертификата для сайта на WordPress является одним из самых простых способов.

Во сколько обойдется использование SSL?

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

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

Установка SSL-сертификата на WordPress относительно проста. За короткий промежуток времени можно выполнить все необходимые действия и предложить своим посетителям безопасные страницы.

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

Получение SSL-сертификата

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

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

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

Использование специализированного плагина для внесения необходимых изменений

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

Really Simple SSL

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

CTW SSL для CLoudflare

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

WP Force SSL

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

Изменение настроек WordPress

После установки плагина для управления SSL нужно будет изменить настройки WordPress . Перейдите в раздел «Настройки» в панели администрирования. Здесь вы увидите текстовое поле «Адрес сайта» . Убедитесь, что префикс вашего домена — «https ». Это поможет перенаправить пользователей на защищенный контент и решит сразу несколько проблем с записями и страницами, которые отображаются не правильно.

Изменение файла.htaccess вручную


Если хотите изменить файл .htaccess вручную, то нужно будет ввести простой код. Откройте файл .htaccess в редакторе и введите следующие строки:

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

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

Какие меры безопасности вы используете на своем WordPress-сайте ? Считаете ли вы, что затраты на установку SSL сертификата на сайт оправдывают себя?

Перевод статьи «How to Install a SSL Certificate On Your WordPress Site» был подготовлен дружной командой проекта

Хорошо Плохо

    В этой статье мы рассмотрим разницу между SSL и HTTPS. А также узнаем, как установить, активировать SSL-сертификат и как перевести WordPress -сайт на HTTPS.

После генерации CSR-запроса и заказа SSL-сертификата через необходимо установить полученные сертификаты .CRT и .CA на сервер. Эта пошаговая инструкция поможет вам установить приобретенный SSL-сертификат на веб-сервер Apache под управлением Linux: Ubuntu, Debian или CentOS .

После получения SSL-сертификата файлы для его установки появятся в :
.CA - файл цепочки сертификатов Центра Сертификации (Certificate Authority).
.CRT - файл сертификата для вашего сайта (сайтов).

Загрузка необходимых файлов на веб-сервер

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

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

Перенос сертификатов с компьютера Linux/Mac OS:

Самый простой способ загрузки сертификатов на сервер - опция SCP , встроенная в возможность терминала вашего компьютера:

  1. Загрузите файлы .CA и .CRT из на локальный компьютер.
  2. Откройте терминал и перейдите в папку, в которую вы сохранили сертификаты (напр., Downloads):
    cd ~/Downloads
    Скопируйте сертификаты вашего сайта и Центра Сертификации на веб-сервер:
    scp crt.crt ca.crt [email protected]:/etc/ssl
    Где:
    scp - команда копирования файлов
    mydomain.ru_crt.crt - имя загруженного из панели файла сертификата вашего веб-сайта
    mydomain.ru_ca.crt - имя загруженного из панели файла сертификата Центра Авторизации
    user - имя вашего пользователя для подключения к серверу через ssh (часто используется root)
    1.22.33.444 - IP-адрес вашего веб-сервера
    /etc/ssl - директория на удаленном сервере, в которую в хотите сохранить загружаемые файлы.

Перенос сертификатов с компьютера Windows:

  1. Установите программу WinSCP . Скачать ее можно .
  2. Запустите WinSCP. В открывшемся окне введите данные, которые вы используете для подключени я к вашему серверу по SSH .
    В левой части окна программы отображаются файлы на локальном компьютере, в правой - на подключенном удаленном сервере. Выберите или создайте директорию, в которую вы хотите сохранить сертификаты, в правой части окна. Перетащите файлы .CA и .CRT в эту директорию из левой части окна.

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

Если закрытый ключ .key был сгенерирован непосредственно на сервере, то для его копирования в другую директорию вы можете использовать команду:
cp /home/root/private.key /etc /ssl/private.key
Где:
cp - команда копирования
/home/root/ - путь до файла ключа
private.key - имя файла ключа
/etc/ssl/private.key - путь, по которому необходимо скопировать файл ключа

Удалить файл ключа из старого расположения вы можете с помощью команды:
rm /home/root/private.key
(синтаксис команды аналогичен предыдущему примеру)

Настройка веб-сервера Apache на использование SSL-сертификата

После копирования файлов сертификата сайта и Центра Сертификации необходимо отредактировать параметры вашего веб-сервера Apache . Для этого подключитесь к вашему серверу по SSH от имени пользователя root и выполните следующие операции:

  1. Активируйте использование опции SSL веб-сервером Apache:
    Ubuntu/Debian:
    a2enmod ssl
    CentOS:
    yum install mod_ssl
  2. Откройте файл конфигурации сайта, для которого вы хотите установить SSL-сертификат.
    Например, если параметры веб-сайта хранятся в файле /etc/apache2/sites-enabled/000-default.conf :
    nano /etc/apache2/sites-enabled/000-default.conf
    Примечание: На Ubuntu/Debian файлы параметров сайтов Apache как правило находятся в директории /etc/apache2/sites-enabled/ . На CentOS стандартное расположение - /etc/httpd/conf.d/
    Для поиска нужной конфигурации вы можете использовать команду ls /директория/конфигураций (напр. ls /etc/apache2/sites-enabled) , которая отображает полный список файлов в указанной директории.
    Затем с помощью команды nano вы можете открыть определенный файл (напр. nano /etc/apache2/sites-enabled/000-default.conf ). Проверить, что открытый файл действительно является конфигурацией вашего сайта можно, найдя в нем строку ServerName . Ее значение должно соответствовать домену, для которого вы устанавливаете SSL-сертификат (напр. www.mydomain.ru)
    Примечание для CentOS:
    если редактор nano не установлен на вашем сервере, вы можете установить его с помощью команды yum install nano
  3. Добавьте приведенные ниже параметры в открытый файл конфигурации:
    SSLEngine on


    SSLCertificateKeyFile /etc/ssl/mydomain.ru_key.key
    Где:
    /etc/ssl/mydomain.ru_crt.crt - путь до файла сертификата вашего сайта
    /etc/ssl/mydomain.ru_ca.crt - путь до файла цепочки сертификатов Центра Сертификации (CA)
    /etc/ssl/mydomain.ru_key.key - путь к файлу вашего закрытого ключа

    Примечание: если вы хотите, чтобы после установки SSL-сертификата ваш сайт был доступен только по безопасному протоколу https (порт 443) , отредактируйте файл его конфигурации по аналогии с приведенным ниже Примером 1. Если же вы хотите, чтобы сайт также оставался по-прежнему доступен по незащищенному протоколу http (порт 80) , воспользуйтесь Примером 2.
    Вносимые изменения выделены жирным шрифтом.

    Пример 1 (только HTTPS):

    # The ServerName directive sets the request scheme, hostname and port that






    #ServerName www.mydomain.ru

    DocumentRoot /var/www/html



    # modules, e.g.
    #LogLevel info ssl:warn








    SSLEngine on
    SSLCertificateFile /etc/ssl/mydomain.ru_crt.crt
    SSLCertificateChainFile /etc/ssl/mydomain.ru_ca.crt

    Пример 2 (HTTPS + HTTP):



    # the server uses to identify itself. This is used when creating
    # redirection URLs. In the context of virtual hosts, the ServerName
    # specifies what hostname must appear in the request"s Host: header to
    # match this virtual host. For the default virtual host (this file) this
    # value is not decisive as it is used as a last resort host regardless.
    # However, you must set it for any further virtual host explicitly.
    #ServerName www.mydomain.ru
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html
    # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
    # error, crit, alert, emerg.
    # It is also possible to configure the loglevel for particular
    # modules, e.g.
    #LogLevel info ssl:warn
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    # For most configuration files from conf-available/, which are
    # enabled or disabled at a global level, it is possible to
    # include a line for only one particular virtual host. For example the
    # following line enables the CGI configuration for this host only
    # after it has been globally disabled with "a2disconf".
    #Include conf-available/serve-cgi-bin.conf
    SSLEngine on
    SSLCertificateFile /etc/ssl/mydomain.ru_crt.crt
    SSLCertificateChainFile /etc/ssl/mydomain.ru_ca.crt
    SSLCertificateKeyFile /etc/ssl/mydomain.ru_key.key



    # The ServerName directive sets the request scheme, hostname and port that
    # the server uses to identify itself. This is used when creating
    # redirection URLs. In the context of virtual hosts, the ServerName
    # specifies what hostname must appear in the request"s Host: header to
    # match this virtual host. For the default virtual host (this file) this
    # value is not decisive as it is used as a last resort host regardless.
    # However, you must set it for any further virtual host explicitly.
    #ServerName www.mydomain.ru
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html
    # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
    # error, crit, alert, emerg.
    # It is also possible to configure the loglevel for particular
    # modules, e.g.
    #LogLevel info ssl:warn
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    # For most configuration files from conf-available/, which are
    # enabled or disabled at a global level, it is possible to
    # include a line for only one particular virtual host. For example the
    # following line enables the CGI configuration for this host only
    # after it has been globally disabled with "a2disconf".
    #Include conf-available/serve-cgi-bin.conf

  4. Перезапустите сервис apache :
    Ubuntu/Debian:
    /etc/init.d/apache2 restart
    CentOS:
    apachectl restart
  5. Если на вашем сервере настроен файрвола iptables, вам необходимо разрешить входящие подключения по протоколу https (порт 443) для вашего файрвола. Для этого воспользуйтесь документацией к вашей ОС, т.к. в разных дистрибутивах Linux работа с iptables осуществляется по разному. Ниже приведено несколько примеров:
    Ubuntu 16.04:
    ufw allow 443/tcp
    Debian:
    iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
    CentOS:
    iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT

Проверка настроек

На этом процедура установки SSL-сертификата на веб-сервер Apache завершена. Для проверки корректности настроек откройте откройте ваш-веб сайт в браузере по протоколу HTTPS (например, https://mydomain.ru) . Если сертификат установлен корректно, в адресной строке вашего браузера вы увидите иконку замка, при клике на которую будет отображена информация о приобретенном вами SSL-сертификате.

Если в данный момент ваш сайт работает по небезопасному протоколу HTTP, то, скорее всего, вы уже задумались о переходе на HTTPS-протокол. Что такое HTTPS? Если кратко, то это специальное расширение протокола HTTP, которое обеспечивает безопасность передаваемых данных путем их шифрования. В первую очередь это необходимо для всех ресурсов, которые имеют дело с данными своих пользователей - интернет-магазинов, бирж и других веб-сайтов. Однако в последнее время все больше пользователей стремятся установить SSL-сертификат на свой сайт - даже если это персональный блог или рекламный лендинг. Дело в том, что работа по HTTPS-протоколу влияет на множество различных факторов, в том числе на позицию вашего ресурса в поисковой выдаче и доверие пользователей к вашему сайту в целом. В будущем различия между двумя вариантами протокола передачи данных станут еще более заметными. К примеру, корпорация Google уже объявила, что если на сайте можно ввести персональные данные (пароль или номер банковской карты), но при этом он работает по HTTP-протоколу, то с начала 2017 года он будет отмечаться в браузере Google Chrome как небезопасный. И уже сейчас известно, что сайты с установленным SSL-сертификатом воспринимаются поисковыми системами как более доверительные, поэтому в выдаче они занимают более высокие места, чем сайты без сертификатов.

В этой статье мы расскажем о том, как на хостинге Timeweb можно установить один из SSL-сертификатов на свой сайт.

Выбор сертификата

Для начала вам необходимо определиться, какой сертификат вы будете использовать на своем сайте. Главные критерии, от которых следует отталкиваться при выборе сертификата, - это цели его установки и располагаемый бюджет. На хостинге Timeweb представлено несколько возможных вариантов сертификатов; более подробно о них вы можете прочитать в статье « ». Что касается самой установки, то принципиальной разницы между ними нет: Comodo Positive SSL требует чуть больше информации о пользователе, в то время как при заказе Let’s Encrypt вам необходимо только выбрать сайт, на который будет установлен сертификат.

Т.к. Let’s Encrypt является бесплатным, то и время для его установки совсем небольшое - обычно оно составляет порядка 10-15 минут. Для установки Comodo Positive SSL понадобится подождать около 1-2 часов.

В данной статье в качестве примера будет рассказано о том, как установить на свой сайт сертификат Let’s Encrypt.

Заказ и установка сертификата

1. Для того, чтобы заказать сертификат, войдите в панель управления своим аккаунтом Timeweb и выберите раздел «Дополнительные услуги», а затем нажмите на кнопку «SSL-сертификат»:

2. В появившемся окне выберите желаемый сертификат (в нашем случае Let’s Encrypt), домен, для которого вы заказываете данный сертификат, и подтвердите то, что вы согласны с правилами предоставления данной услуги.

(Если вы выбрали один из сертификатов Comodo Positive SSL, то вы должны заполнить все поля анкеты.)

Если все выполнено корректно, вы увидите следующее уведомление:

3. Через некоторое время вам придет письмо с уведомлением о том, что SSL-сертификат был выпущен и установлен:

Подключенный SSL-сертификат вы также увидите в разделе «Дополнительные услуги».

Редактирование.htaccess

Для того, чтобы ваш сайт выглядел так же, как обычно (до перехода на HTTPS), а также использовал правильный код перенаправления, вам необходимо внести изменения в файл.htaccess. В этом файле обычно задаются дополнительные настройки сайта для веб-сервера Apache. Как правило, .htaccess находится в корневой папке сайта. Допустим, если у вас на сайте установлена система управления контентом WordPress, то вы найдете данный файл в папке public_html.

Зайдите в раздел «Файловый менеджер» и откройте.htaccess. В начале текстового файла вам нужно добавить следующие строки:

SetEnvIf X-HTTPS 1 HTTPS RewriteEngine On RewriteBase / RewriteCond %{HTTP:X-HTTPS} !1 RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1

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

Затем сохраните изменения.

Благодаря этой правке весь запрашиваемый контент будет передаваться по HTTPS корректно. Это изменение актуально для популярных CMS на хостинге Timeweb.

Ваш сайт должен выглядеть так же, как и до перехода на HTTPS.

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

Обращаем ваше внимание на то, что сайт будет отображаться по HTTPS только по IPv4 адресу. Для того, чтобы сайт продолжал быть доступным для ресурсов, которые осуществляют запросы приоритетно на IPv6 (например, Яндекс, Google, социальные сети), рекомендуется удалить АААА-запись для домена в разделе « Домены и поддомены» в панели управления аккаунтом.

Редактирование wp-config.php

Эта часть пригодится тем, кто использует на своем сайте именно WordPress. Файл wp-config.php находится в той же корневой папке, что и файл.htaccess, который вы редактировали ранее.

Define("FORCE_SSL_ADMIN", true); define("FORCE_SSL_LOGIN", true);

Как удалить сертификат?

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

Здравствуйте, уважаемые коллеги, гости сайт. Как вы наверное уже слышали, с начала 2017 года поисковая система Google начнет занижать в поисковой выдаче сайты, не имеющие ssl сертификата. Грозятся такие проекты помечать черной меткой слева от URL и тем самым распугивать посетителей. Думаю, Яндекс тоже скоро подтянется. Давайте разбираться, что такое SSL сертификат, какие бывают его разновидности и как установить его на сайт.

1. Что такое SSL-сертификат

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

Как вы уже наверняка замечали, URL большинства веб-проектов начинаются с http , а у других, более продвинутых, с https . Так вот, ресурсы с окончанием "S " на конце протокола http имеют ssl сертификат и ресурс считается безопасным, то есть все данные обмена между браузером пользователя и сервером сайта шифруются. Если http расшифровывается как протокол передачи гипертекста, то https как безопасный протокол передачи гипертекста.

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

2. Какие бывают SSL-сертификаты

По доверию

  • - Самоподписные (self-signed). Браузер о вашем личном сертификате ничего не знает и будет об этом предупреждать посетителей, сгодится только для корпоративных сайтов узкого круга одной компании.
  • - Доверительные (trasted). Выпускаются официальными сертификационными центрами, выбор для любых публичных сайтов.

По уровню проверки

  • - Простая (Domain Validation, DV). В сертификате только домен. Подойдет для блогов, информационных сайтов, сайтов визиток.
  • - С проверкой компании (Organization Validation, OV). В сертификате домен и название компании. Для интернет-магазинов.
  • - С расширенной проверкой (Extended Validation, EV). В сертификате домен и название компании. В адресной строке компании ее название зелеными буквами. Для платежных систем, банков.

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

  • - Для одного домена или поддомена.
  • - До 100 доменов (multi-domen).
  • - На один домен и все его поддомены (wildcard).

По цене

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

Рассмотрим разницу между бесплатным и платным сертификатом. Для примера возьмем сертификаты Lets Encrypt и Comodo Positive SSL соответственно.

Lets Encrypt Comodo Positive SSL
Бесплатно Около 500 руб. в год
Действителен 90 дней (обновляется автоматически) Срок действия от 1 года
Высокое качество и стандарт шифрования
Только на 1 домен
Нет возможности установить на домен в зоне.рф Есть возможность установить на домен в зоне.рф
Нет гарантий при утечке данных Гарантия – 10 000 $
Может быть несовместим с некоторыми старыми браузерами Распознают 99,3% браузеров
Упрощенная процедура проверки (не нужны документы организации).

3. Где и как получить SSL-сертификат

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

Могу порекомендовать партнерский центр – https://www.firstssl.ru/ . Интерфейс сервиса интуитивно понятен, к нашим услугам несколько фильтров, по которым поиск и выбор сертификата значительно упрощается. Посмотрите видео с подробными инструкциями по покупке сертификата Сomodo Рositive SSL у упомянутого партнера.

4. Установка SSL-сертификата на сайт хостинга TimeWeb

Установку будем производить на примере бесплатного сертификата Lets Encrypt на хостинге , поскольку TimeWeb самый популярный хостинг в РФ и он лучше всех остальных подготовился к нововведениям.

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

Заказ SSL-сертификата на хостинге

Зайдите в панель управления хостинга.

  1. Перейдите в раздел "Дополнительные услуги ".

  1. Далее по ссылке "SSL-сертификаты ".
  1. В новом окне в поле "Сертификат " выберите требуемый.
  1. В поле "Домен " выберите свой, для которого заказывается сертификат.

Согласитесь с правилами предоставления услуг и нажмите на кнопку "Заказать ".

Нажмите на кнопку "OK " в новом окошке с сообщением об отправке заказа на SSL-сертификат.

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

Настройка переадресации

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

  1. На главной странице панели управления timeweb перейдите в раздел "Сайты ".

  1. Кликните по шестеренке у своего домена чтобы перейти к настройке переадресации.
  2. В новом окне активируйте опцию "использовать безопасное соединение https// " и не забудьте сохранить изменения.

Веб-мастерам сайтов не на TimeWeb следует поинтересоваться у технической поддержки своего хостинга о том, как сделать переадресацию с http на https (какой код прописать в файл .htaccess ). Хотя и в Интернете этой инфы предостаточно, но не всякий код подойдет именно под ваш хостинг.

5. Разблокировка контента

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

1. В файл .htaccess , или через файловый менеджер панели администратора на хостинге, самой последней строкой вставьте код – "SetEnvIf X-HTTPS 1 HTTPS ".

2. В файл конфигурации wp-config.php вставьте код "define(‘FORCE_SSL_ADMIN’, true); ".

Оба файла находятся в корневой папке сайта (на WordPress public_html ), если кто не знает.

6. Последние штрихи

1. В админке сайта перейдите в раздел "Настройки " и далее "Общие ".

2. В поля "Адрес WordPress (URL) " и " Адрес сайта (URL) " добавьте "s " в конец http . После этого все картинки проекта должны снова появиться там, куда они ранее были загружены.

3. В robots.txt исправьте адрес хоста и путь к карте сайта. Просто добавьте https:// перед URL как на картинке.

7. Проверка работы установленного сертификата

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


8. Устранение проблем смешанного контента

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

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

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

У браузера Google Chrome в этой работе нам в помощь есть один хороший инструмент.

  1. Чтобы его вызвать, на проблемной странице кликните по кружочку с буквой "i " в адресной строке в начале URL страницы.

  1. В открывшемся окошке перейдите по ссылке "Подробнее ".
  2. В появившейся нижней панели перейдите на вкладку "Console ".

Тут для нас информация по всем ссылкам и внешним скриптам, в которых требуется исправить http на https . Друзья, если у вас возникнут трудности по устранению проблемы смешанного контента, пишите мне на почту, помогу, если не лень будет конечно 🙂 .

Внутренние ссылки, в том числе и на картинки, на каждой странице тоже придется исправить. Для ручной работы, чтобы поставить этот процесс на конвейер, открывайте каждую страницу в режиме текст (по старому html), в поиске браузера (вызывается нажатием клавиш ctrl+F ) впишите свой домен, запустите поиск. После подсветки доменов напрягать глаза для поиска внутренних ссылок уже не придется. После каждого http вставьте букву "s ", сохраните изменения и проверьте результат.

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

9. Уведомление поисковиков о новом сайте

Как вы, конечно, понимаете, для поисковых систем http://домен.ru и https ://домен.ru - два разных сайта. После перехода на защищенный протокол ваш старый сайт должен прекратить существование и возродиться с новым адресом. Надо уведомить об этом Яндекс и Google. Сделаем это без шума и пыли.

Зайдите в Яндекс Веб-мастер и следуйте следующей инструкции:

  1. Перейдите в раздел "Настройка индексирования " и далее "Переезд сайта ".

  1. Выберите свой домен, поставьте галочку у "Добавить HTTPS " и сохраните изменения.
  2. Откройте главную страницу "Яндекс Веб-мастер " и перейдите там по ссылке "добавить сайт ".

Старый можно будет удалить.

  1. Загрузите карту сайта в формате xml перейдя в "Настройка индексирования "→"Файлы Sitemap ", для чего укажите путь к карте сайта и нажмите на кнопку "Добавить ".

  1. Последнее, что тут осталось сделать, это убедиться, что все работает, нет ни фатальных, ни критических ошибок, ни каких-либо других проблем. Для этого перейдите в раздел "Диагностика "→"Диагностика сайта ".

Не расслабляйтесь, робот еще не до конца выполнил всю свою работу. Вполне может оказаться что он не сможет загрузить что-нибудь..txt всплывало сообщение: "Сервер отвечает редиректом на запрос /robots.txt".

Пришлось тогда временно отключить на сервере редирект с http на https для загрузки robots.txt. А то уже в индекс стало попадать множество дублей. После включения редиректа обратно, ошибка больше не появлялась.

Что касается Гугла, то там, как ни странно, не все так продумано. Вам придется в кабинете веб-мастера по новой добавить новый старый сайт с https .

Главное, как и в Яндексе, обязательно загрузите карту сайта для более быстрой индексации контента ресурса.

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

Обновлено: Апрель 22, 2017 автором: Роман Ваховский

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

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

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



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: