Nginx

Как зашифровать сервер Nginx с помощью Let's Encrypt в Ubuntu 20.04

Как зашифровать сервер Nginx с помощью Let's Encrypt в Ubuntu 20.04
Центр сертификации, известный как Let's Encrypt, демонстрирует простой метод получения и установки сертификатов для шифрования HTTPS на веб-серверах. Программный клиент Certbot используется для автоматизации необходимых шагов для этого процесса. Установка сертификатов на Nginx и Apache полностью автоматическая. Я покажу вам, как защитить ваш сервер Nginx с помощью бесплатного SSL-сертификата на Ubuntu 20.04.

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

Шаг 1:

Как всегда, сначала обновите свой APT.

$ sudo подходящее обновление

Шаг 2:

Теперь обновите свой APT.

$ sudo подходящее обновление

Шаг 3:

Теперь загрузите и установите программный инструмент Certbot, который поможет вам получить сертификат SSL от Let's Encrypt. Выполните следующую команду терминала для установки Certbot через APT.

$ sudo apt установить certbot python3-certbot-nginx

Это установит certbot, но вам все равно нужно будет настроить файл конфигурации Ngnix для установки сертификата SSL.

Шаг 4:

Вы должны настроить серверный блок, прежде чем переходить к следующему шагу, и это необходимый шаг, если вы размещаете несколько сайтов. Мы создадим новый каталог по пути «/ var / www» и оставим каталог по умолчанию без изменений. Выполните следующую команду для создания нового каталога.

$ sudo mkdir -p / var / www / пример.com / html

Шаг 5:

Теперь предоставьте права собственности на этот каталог с помощью следующей команды терминала.

$ sudo chown -R $ USER: $ USER / var / www / example.com / html

Шаг 6:

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

$ sudo chmod -R 755 / var / www / example.ком

Шаг 7:

Теперь создайте индекс.html с помощью вашего любимого текстового редактора, я использую текстовый редактор gedit.

$ sudo gedit / var / www / example.com / html / index.html

Добавьте следующий текст в этот HTML-файл.



Добро пожаловать в пример.ком!


Успех! Пример.com серверный блок работает!



Сохраните и закройте файл.

Шаг 8:

Теперь создайте новый файл конфигурации в каталоге sites-available с помощью вашего любимого текстового редактора, выполнив следующую команду.

$ sudo gedit / etc / nginx / сайты-доступные / пример.ком

Теперь добавьте следующий текст в этот файл конфигурации для нового каталога и имени домена.

server
слушать 80;
слушать [::]: 80;
корень / var / www / example.com / html;
индекс индекс.html-индекс.индекс htm.nginx-debian.html;
пример server_name.com www.пример.com;
место расположения /
try_files $ uri $ uri / = 404;

Сохраните и закройте этот файл, чтобы изменения вступили в силу.

Шаг 9:

Теперь включите новый каталог для запуска Nginx с помощью следующей команды терминала.

$ sudo ln -s / etc / nginx / сайты доступны / пример.com / etc / nginx / с поддержкой сайта /

Шаг 10:

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

$ sudo gedit / etc / nginx / nginx.conf

Теперь удалите знак # из параметра hash_bucket_size, чтобы раскомментировать его. Сохраните и закройте файл.

Шаг 11:

Теперь введите следующие две команды для удаления синтаксических ошибок и перезапуска сервера Nginx.

$ sudo nginx -t

$ sudo systemctl перезапустить nginx

Шаг 12:

Теперь вам нужно проверить и подтвердить файлы конфигурации Nginx. Поскольку certbot должен найти правильный серверный блок в конфигурации Nginx, он ищет имя_сервера, совпадающее с запрошенным доменом. Чтобы проверить эти файлы конфигурации, введите следующую команду терминала.

$ sudo nginx -t

Шаг 13:

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

sudo ufw разрешить 'Nginx Full'

Шаг 14:

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

$ sudo certbot --nginx -d пример.com -d www.пример.ком

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

Шаг 15:

Теперь вам будет предложено настроить параметры HTTPS, выберите необходимые параметры и нажмите кнопку Enter, чтобы продолжить. Certbot установит все необходимые сертификаты и обновит файлы Nginx; ваш сервер перезагрузится с сообщением, что ваш процесс успешен.

Шаг 16:

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

$ sudo systemctl status certbot.таймер

$ sudo certbot обновить --dry-run

Заключение:

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

Бесплатные движки с открытым исходным кодом для разработки игр для Linux
В этой статье будет рассмотрен список бесплатных игровых движков с открытым исходным кодом, которые можно использовать для разработки 2D- и 3D-игр в L...
Shadow of the Tomb Raider для Linux Учебное пособие
Shadow of the Tomb Raider - двенадцатое дополнение к серии Tomb Raider - франшизе приключенческой игры, созданной Eidos Montreal. Игра была очень хоро...
Как увеличить FPS в Linux?
FPS означает Кадров в секунду. Задача FPS - измерить частоту кадров при воспроизведении видео или во время игры. Проще говоря, количество непрерывных ...