Перехід сайту на використання захищеного прокотолу HTTPS

6 липня 2016

Більше 10% сайтів в усьому світі використовують захищений протокол HTTPS (джерело). Частка таких сайтів неухильно збільшується. Ми стежимо за трендами і вже перевели всі свої власні сайти на використання захищеного з'єднання.

Настійно радимо вчинити такий перехід всім своїм клієнтам.

До нас дослухаються наші клієнти, зокрема, компанія «Мармуровий Світ», що спеціалізується на виготовленні виробів з мармуру — власник сайту marmursvit.com.ua,— в числі перших, що згодилась на такий перехід. Маємо надію, що це допоможе сайту отримувати все більше і більше релевантних відвідувачів.

Що таке протокол HTTPS

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

Докладніше в Вікіпедії.

Навіщо переводити на сайт захищене з'єднання HTTPS

Основні причини:

  1. Захист від перехоплення логіна/пароля та інших даних, що передаються через публічні мережі. Адже ніколи не можна виключити варіанти перехоплення і використання даних, наприклад, у громадських WI-FI мережах.
  2. Більш прихильне відношення пошукових систем до захищених сайтів при всіх інших рівних умовах.

Яка процедура переходу на HTTPS

Для переходу сайту на захищене з'єднання необхіден SSL сертифікат і правильно налаштований веб-сервер хостингу.

SSL сертифікат

SSL сертифікати можуть бути як платними, так і безкоштовними. Важливо, щоб вони були підписані визнаним центром сертифікації. В цьому випадку браузер і роботи пошукових систем будуть ввжати ваш сайт захищеним.

Як правильно вибрати SSl сертифікат, розповідає відомий СЕОшник Devaka, тут мені додати нічого.

Авторові відомо, як мінімум, 3 центри видачі безкоштовних SSL сертифікатів:

  1. startssl.com (Ізраїль), 1 рік
  2. wosign.com (Китай), 1-3 роки
  3. letsencrypt.org (США), 90 днів (можливо і вітається автоматичне подовження)

Отримання сертифікату SSL передбачає генерацію його тим чи іншим чином центром сертифікації, як за гроші, так і безкоштовно.

Налаштування веб-сервера

На своїх серверах для хостингу сайтів з ОС Linux Debian ми використовуємо швидкий та надійний веб-сервер NGINX,— налаштування веб-сервера на використання отриманого SSL сертифікату від startssl.com нижче.

Показати
  1. Генеруємо запит на підпис сертифікату Certificate Signing Request (CSR).
  2. openssl req -newkey rsa:2048 -keyout yourname.key -out yourname.csr

  3. Створюємо зашифрований пароль закритого ключа, щоб веб-сервер при перезапуску його не просив.
  4. cp yourname.key yourname.key.org
    openssl rsa -in yourname.key.org -out yourname.key
    rm yourname.key.org

  5. Переносимо файли сертифікату та ключа в захищену папку.
  6. Створюємо віртуальну мережу для можливості nginx вибирати потрібний сертифікат для певного сайту.
  7. nano /etc/network/interfaces.d/virt

    auto eth0:1
    iface eth0:1 inet static
    address 192.168.1.1
    netmask 255.255.255.0

    Перезапускаємо мережа

    /etc/init.d/networking restart

    Перевіряємо роботу віртуальної мережі

    ifconfig

    Має бути щось на кшталт

    eth0:1 Link euroncap:Ethernet HWaddr XX:XX:XX:XX:XX:XX
    inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
    UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

  8. Налаштовуємо веб-сервер nginx.
  9. #залишаємо 80 порт
    listen *:80;
    listen 192.168.1.1:80;
    #додаємо захищений 443 порт
    listen *:443 ssl;
    listen 192.168.1.1:443 ssl;

    Налаштовуємо 301 редирект з http на https (в мережі могли зберегтися посилання з http)

    if ($scheme = "http") {
    rewrite ^/(.*)$ https://$host/$1 permanent;
    }

    Включаємо оптимальні налаштування

    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers "HIGH:!RC4:!aNULL:!MD5:!kEDH";
    add_header Strict-Transport-Security 'max-age=604800';
    keepalive_timeout 60;

    Підключаємо файли сертифікатів

    ssl_certificate_key /etc/nginx/ssl/yourname.key;
    ssl_certificate /etc/nginx/ssl/yourname.crt;

    Перевіряємо налаштування

    nginx -t

    Якщо все ок, перезавантажуємо nginx

    /etc/init.d/nginx restart

Скільки коштує перевести сайт на використання захищеного протоколу HTTPS

Ціни за посиланням

Оцініть сторінку
(0 голосів, в середньому: 0 з 5)
Ваш відгук стане першим