Настройка позволяет шифровать с помощью Nginx в Ubuntu 16.04

Let's Encrypt - это центр сертификации (CA), который предоставляет бесплатные SSL-сертификаты с помощью автоматизированного клиента. Используя SSL-сертификат Let's Encrypt, вы можете зашифровать трафик между вашим сайтом и посетителями. Весь процесс прост, и обновления могут быть автоматизированы. Также обратите внимание, что установка или обновление сертификатов не приводит к простоям.

В этом руководстве мы будем использовать Certbot для получения, установки и автоматического обновления вашего SSL-сертификата. Certbot активно разрабатывается Electronic Frontier Foundation (EFF) и является рекомендуемым клиентом Let's Encrypt.

Предпосылки

  • Экземпляр Vultr под управлением Ubuntu 16.04
  • Зарегистрированное доменное имя, указывающее на ваш сервер
  • Nginx

Установить Certbot

Чтобы получить SSL-сертификат Let's Encrypt, вам необходимо установить клиент Certbot на свой сервер.

Добавьте репозиторий. Нажмите ENTERклавишу, когда будет предложено принять.

add-apt-repository ppa:certbot/certbot

Обновите список пакетов.

apt-get update

Продолжите, установив Certbot и пакет Nginx Certbot.

apt-get -y install python-certbot-nginx

Настройка Nginx

Certbot автоматически настраивает SSL для Nginx, но для этого ему нужно найти блок сервера в файле конфигурации Nginx. Это делается путем сопоставления server_nameдирективы в файле конфигурации с именем домена, для которого вы запрашиваете сертификат.

Если вы используете файл конфигурации по умолчанию, /etc/nginx/sites-available/defaultоткройте его в текстовом редакторе, таком как nanoи найдите server_nameдирективу. Замените подчеркивание _на свои доменные имена:

nano /etc/nginx/sites-available/default

После редактирования файла конфигурации server_nameдиректива должна выглядеть следующим образом. В этом примере я предполагаю, что ваш домен - example.com, и вы запрашиваете сертификат для example.com и www.example.com.

server_name example.com www.example.com;

Продолжайте, проверяя синтаксис ваших правок.

nginx -t

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

systemctl restart nginx

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

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

certbot --nginx -d example.com -d www.example.com

Вы также можете запросить сертификат SSL для дополнительных доменов. Просто добавьте -dопцию " " столько раз, сколько хотите.

certbot --nginx -d example.com -d www.example.com -d example.net -d example.net

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

certbot --nginx certonly -d example.com -d www.example.com

Если вы запускаете Certbot в первый раз, вам будет предложено ввести адрес электронной почты и принять условия обслуживания. Этот адрес электронной почты будет использоваться для уведомлений об обновлении и безопасности. После того как вы предоставили адрес электронной почты, Certbot запросит сертификат у Let's Encrypt и запустит запрос, чтобы убедиться, что вы контролируете данный домен.

Если Certbot может получить сертификат SSL, он спросит, как бы вы хотели настроить свои HTTPSпараметры. Вы можете либо перенаправить посетителей, которые посещают ваш сайт через незащищенное соединение, либо разрешить им доступ к нему через незащищенное соединение. Обычно это должно быть включено, потому что это гарантирует, что посетители получают доступ только к версии вашего сайта, защищенной SSL. Выберите ваш выбор, затем нажмите ENTER.

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
-------------------------------------------------------------------------------
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
-------------------------------------------------------------------------------
Select the appropriate number [1-2] then [enter] (press 'c' to cancel):

Наконец, Certbot подтвердит, что процесс прошел успешно и где хранятся ваши сертификаты. Ваши сертификаты теперь загружены и установлены.

Автоматизация обновления

Поскольку Let's Encrypt - это бесплатный центр сертификации, и для поощрения пользователей к автоматизации процесса обновления сертификаты действительны только в течение 90 дней. Certbot позаботится о продлении сертификатов автоматически. Это делается путем запуска certbot renewдважды в день через systemd.

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

certbot renew --dry-run

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

certbot renew

Улучшенная конфигурация

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

certbot --nginx --rsa-key-size 4096 --must-staple -d example.com -d www.example.com

--rsa-key-size 4096Использует 4096-битный RSA ключ вместо 2048 - битного ключа, который является более безопасным. Недостатком этого является то, что больший ключ приводит к небольшому снижению производительности. Кроме того, старые браузеры и устройства могут не поддерживать 4096-битные ключи RSA.

--must-stapleДобавляет расширение скрепок OCSP Must к сертификату и настраивает Nginx для OCSP сшивания. Это расширение позволяет браузерам проверять, что ваш сертификат не был отозван и ему можно доверять. Однако не все браузеры поддерживают эту функцию.



Leave a Comment

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

6 невероятных фактов о Nintendo Switch

6 невероятных фактов о Nintendo Switch

Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.

Технические обещания, которые все еще не выполнены

Технические обещания, которые все еще не выполнены

Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.

Функциональные возможности уровней эталонной архитектуры больших данных

Функциональные возможности уровней эталонной архитектуры больших данных

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

Как ИИ может вывести автоматизацию процессов на новый уровень?

Как ИИ может вывести автоматизацию процессов на новый уровень?

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

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

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

Технологическая сингулярность: далекое будущее человеческой цивилизации?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

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

Телемедицина и удаленное здравоохранение: будущее уже здесь

Телемедицина и удаленное здравоохранение: будущее уже здесь

Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше