Июль 26, 2018

Как переместить с HTTP на HTTPS в WordPress с помощью бесплатного SSL с Let's Encrypt

Известно, что переход на HTTPS имеет свои преимущества в основном с точки зрения безопасности, конфиденциальности и повышения рейтинга в поисковых системах. За последний год или около того на графике веб-сайтов, использующих HTTPS, произошел огромный скачок, и он не остался неопознанным. Теперь веб-мастера осознают важность перехода с HTTP на HTTPS. Раньше основными проблемами, с которыми сталкивались веб-мастера, были цены и сложность установки SSL для своего домена. Это не требовалось блоггерам, у которых нет критически важных порталов.

Теперь есть много поставщиков SSL, таких как Comodo, Старт SSL, Letsencryptи т. д., которые предоставляют бесплатные SSL-сертификаты для всех. В настоящее время Let's encrypt - один из наиболее широко используемых бесплатных поставщиков SSL с простой установкой.

Преимущества использования Let's encrypt:

  • Бесплатный SSL. (очевидно)
  • Простая установка по сравнению с другими поставщиками.
  • Доступно во всех регионах.
  • Проверяет домены, не требуя записей MX / доступа к электронной почте.
  • Автоматическое продление.

Недостатки использования Let's encrypt:

  • Нет сертификатов расширенной проверки.
  • Нет подстановочных сертификатов.
  • Пределы ставок для выдачи сертификатов.

Несмотря на недостатки, я бы порекомендовал вам использовать Let's encrypt. Эти моменты важны только для законных веб-сайтов и критически важных порталов. Обычный блог ни на что из этого не повлияет.

Как защитить Cpanel WordPress с помощью Letsencrypt Free SSL

Самый простой способ - воспользоваться хостингом, на котором есть встроенная программа Let's encrypt. Не каждый хостинг-провайдер предоставит вам эту предустановленную функцию, но источники говорят, что многие уже начали добавлять функцию Let's encrypt в свою систему хостинга. Как видите, очень мало поставщиков виртуального хостинга уже включили эту функцию. Так что, вероятно, вам придется пойти с Dreamhost or SiteGround на данный момент.

Настройка Let's encrypt в Dreamhost и Siteground:

Будучи одними из популярных хостинг-провайдеров WordPress, они в настоящее время предлагают встроенную интеграцию с Letsencrypt, что очень просто.

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

Dreamhost Letsencrypt

Затем нажмите «Добавить безопасный хостинг». На следующей странице вам просто нужно выбрать домен и нажать «Добавить сейчас». Это запустит процесс, и ваш бесплатный сертификат SSL с Let's encrypt будет готов.

В Siteground, войдите в свою Cpanel и прокрутите вниз до раздела безопасности. Под ним вы найдете значок Let's encrypt; нажмите здесь.

сайт

Вы попадете на страницу установки, где вам нужно выбрать домен и нажать «Установить».

Для веб-хостов, которые не предоставляют эту функцию, вы должны выполнить длительную процедуру, которая отличается от одного хоста к другому. У большинства поставщиков есть руководство по установке сторонних SSL-сертификатов на их веб-хостинг, например Bluehost & Hostgator. Если вы не можете найти такую ​​документацию, обратитесь к провайдеру хостинга.

Как защитить Apache с помощью Let's Encrypt Free SSL на Ubuntu

Для веб-сайтов, размещенных на Apache, вам нужно выполнить несколько простых команд на сервере, чтобы установить и настроить Let's encrypt. Команды легко выполнять, если у вас есть базовые знания, но не возитесь с сервером, если вы просто новичок.

Шаг 1. Войдите на сервер

Убедитесь, что вы входите в систему с именем пользователя, у которого есть доступ sudo к серверу.

Шаг 2: Обновите и установите Git

Вам необходимо обновить сервер и установить git, чтобы загрузить Let's encrypt прямо с github. Вот команды.

sudo apt-get update sudo apt-get install git

Шаг 3. Загрузите и установите клиент Let's encrypt

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

sudo git clone https://github.com/letsencrypt/letsencrypt / opt / letsencrypt

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

Шаг 4. Создайте и установите сертификат SSL.

Затем войдите в каталог letsencrypt.

cd / opt / letsencrypt

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

./letsencrypt-auto --apache -d example.com -d www.example.com

(Замените example.com на свое доменное имя.)

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

Шаг 5. Настройка автоматического продления. Давайте зашифруем сертификаты.

Let's encrypt предоставляет бесплатные SSL-сертификаты, действительные только 90 дней. Таким образом, вам необходимо обновлять сертификат каждый раз, что является напряженным процессом. Чтобы преодолеть это, у нас есть так называемое задание cron, которое будет периодически выполнять автоматическое обновление.

Теперь нам нужно отредактировать crontab и создать новое задание cron, которое будет запускаться каждую неделю. Выполните следующую команду:

sudo crontab -e

Добавьте это в конец crontab:

30 2 * * 1 / opt / letsencrypt / letsencrypt-auto Renew >> /var/log/le-renew.log

Как защитить Nginx с помощью Let's Encrypt Free SSL на Ubuntu

Для веб-сайтов, размещенных на сервере Nginx, нам необходимо установить Let's encrypt, выполнив несколько команд в консоли сервера. Как я уже упоминал, не делайте этого, если вы не знакомы хотя бы с основами управления сервером.

Шаг 1. Войдите на сервер

Убедитесь, что вы входите в систему с именем пользователя, у которого есть доступ sudo к серверу.

Шаг 2: Обновите и установите Git

Вам необходимо обновить сервер и установить git, чтобы загрузить Let's encrypt прямо с GitHub. Вот команды.

sudo apt-get update sudo apt-get -y install git

Шаг 3. Установите клиент Let's encrypt

Выполните эту команду, чтобы загрузить клиентский репозиторий Let's encrypt в каталог / opt.

sudo git clone https://github.com/letsencrypt/letsencrypt / opt / letsencrypt

Шаг 4. Создайте и установите сертификат SSL.

Есть разные способы создания SSL. Здесь мы собираемся использовать один из плагинов или аутентификаторов под названием «webroot» для получения сертификата SSL.

Перейдите к файлу по умолчанию в каталоге с поддержкой сайта:

sudo nano / etc / nginx / sites-available / default

Добавьте указанный ниже блок местоположения в блок сервера. Сохранить и выйти.

location ~ /.well-known {разрешить все; }

Затем перейдите в каталог Let's encrypt:

cd / opt / letsencrypt

Теперь, чтобы начать установку, запустите эту команду.

./letsencrypt-auto certonly -a webroot --webroot-path =/ Вар / WWW / HTML -d example.com -d www.example.com

Примечание: Замените выделенный текст на путь к корню вашего сервера и доменное имя.

Теперь начата установка Let's encrypt. Вам будет предложено ввести свой адрес электронной почты и согласиться с условиями. Как только все это будет сделано, на консоли отобразится поздравительное сообщение.

Вы сгенерировали необходимые ключи и файлы для работы SSL в домене. Все эти файлы хранятся в подкаталоге Let's encrypt.

Закрытый ключ:

/etc/letsencrypt/live/example.com/privkey.pem

Ваш сертификат:

/etc/letsencrypt/live/example.com/cert.pem

Промежуточные сертификаты:

/etc/letsencrypt/live/example.com/chain.pem

Ваш сертификат и промежуточные сертификаты объединены в правильном порядке:

/etc/letsencrypt/live/example.com/fullchain.pem

 Шаг 5: Настройка SSL с веб-сервером

Отредактируйте файл конфигурации Nginx, содержащий серверный блок (как мы это делали ранее). По умолчанию это:

sudo nano / etc / nginx / sites-available / default

В блоке сервера найдите следующие строки и удалите или закомментируйте их.

слушаем 80 default_server; слушать [::]: 80 default_server ipv6only = on;

Добавьте эти строки в тот же серверный блок

слушайте 443 ssl; имя_сервера example.com www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;

Замените домен своим доменным именем.

Наконец, добавьте этот новый серверный блок над предыдущим. Это перенаправит все HTTP-запросы на HTTPS.

сервер {слушать 80; имя_сервера example.com www.example.com; return 301 https: // $ host $ request_uri; }

Сохраните файл и выйдите.

Шаг 6. Настройка автоматического продления. Давайте зашифруем сертификаты.

Let's encrypt предоставляет бесплатные SSL-сертификаты, действительные только 90 дней. Таким образом, вам необходимо обновлять сертификат каждый раз, что является напряженным процессом. Чтобы преодолеть это, у нас есть так называемое задание cron, которое будет периодически выполнять автоматическое обновление.

Теперь нам нужно отредактировать crontab и создать новое задание cron, которое будет запускаться каждую неделю. Выполните следующую команду:

sudo crontab -e

Добавьте это в конец crontab:

30 2 * * 1 / opt / letsencrypt / letsencrypt-auto Renew >> /var/log/le-renew.log 35 2 * * 1 /etc/init.d/nginx reload

Проблемы, возникающие при использовании Let's encrypt:

Изначально Let's encrypt имел много проблем на стадии бета-тестирования, которые со временем были исправлены. Тем не менее, я столкнулся с одной серьезной проблемой:

Ошибка слишком большого количества перенаправлений. Давайте зашифруем [ERR_TOO_MANY_REDIRECTS]:

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

Решение: Используйте CloudFlare. На панели управления перейдите к Crypto. Установите для шифрования SSL значение «Полный (Строгий)». 

настройка облачной вспышки

Заключение

Я лично использовал Let's encrypt для различных блогов, и до сих пор он у меня неплохо работает. Но поскольку в настоящее время он все еще не поддерживается напрямую многими общими веб-хостами, возможно, вам придется подумать об этом. Если вы размещены на VPS или выделенных серверах, не сомневайтесь. Несмотря на несколько проблем, с которыми я столкнулся, Let's encrypt выглядит многообещающим.

Об авторе 

Анвеш


{"email": "Адрес электронной почты недействителен", "url": "Адрес сайта недействителен", "обязателен": "Отсутствует обязательное поле"}