*Drive*- Здесь рулят padonki

*Drive* - Counter Strike Source
Текущее время: 29 мар 2024, 02:39

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
СообщениеДобавлено: 27 дек 2020, 16:54 
Не в сети
padonki
Аватар пользователя

Зарегистрирован: 14 авг 2006, 20:43
Сообщений: 3750
Благодарил (а): 9 раз.
Поблагодарили: 96 раз.
Let’s Encrypt – это центр сертификации (ЦС), который предлагает простой способ создания и установки бесплатных сертификатов TLS/SSL, тем самым обеспечивая зашифрованные HTTPS-соединения. Let’s Encrypt упрощает процесс генерирования сертификата с помощью клиента Certbot, который автоматизирует большинство (если не все) необходимые этапы. В настоящее время весь процесс получения и установки сертификата полностью автоматизирован как для Apache, так и для Nginx.

1: Установка Certbot

Добавьте этот репозиторий:
Код:
 add-apt-repository ppa:certbot/certbot


Код:
 apt update


Код:
 apt install python-certbot-apache


2: Настройка SSL-сертификата.

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

Код:
vim /etc/apache2/sites-available/drivesource.ru.conf


Найдите строку ServerName:

Код:
...
ServerName drivesource.ru;
...


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

Certbot предлагает различные способы получения сертификатов SSL через плагины. Плагин Apache позаботится о реконфигурации Apache и при необходимости перезагрузит конфигурацию. Чтобы использовать этот плагин, введите:
Код:
certbot --apache -d drivesource.ru -d www.drivesource.ru


Эта команда запустит certbot с плагином –apache, а флаг –d определит имена, для которых предназначен сертификат.

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

4: Проверка автоматического обновления сертификата

Сертификаты Let’s Encrypt действительны только в течение девяноста дней. Потому пользователи должны автоматизировать процесс продления сертификата. Установленный вами пакет certbot позаботится об этом, добавив сценарий обновления в /etc/cron.d. Этот скрипт запускается два раза в день и автоматически обновляет сертификат, срок действия которого истекает через тридцать дней.

Чтобы протестировать процесс обновления, вы можете выполнить сухой прогон certbot:

Код:
certbot renew --dry-run


Если вы не видите ошибок, все настроено правильно. При необходимости Certbot обновит ваши сертификаты и перезагрузит Apache, чтобы активировать изменения. Если процесс автоматического обновления не срабатывает, Let’s Encrypt отправит сообщение на указанный вами адрес электронной почты, предупредив вас о завершении срока действия вашего сертификата.

_________________
Моя характеристика с детского сада: Хорошо кушает, спит, гуляет! Прошло много лет, ничего не изменилось.
Изображение



За это сообщение автора Padonak поблагодарил: Kodla (31 дек 2020, 13:34)
  Рейтинг: 33.33%
Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 31 дек 2020, 13:54 
Не в сети
Аватар пользователя

Зарегистрирован: 18 июл 2007, 21:29
Сообщений: 166
Благодарил (а): 72 раз.
Поблагодарили: 2 раз.
Создание сертификата Let’s Encrypt для Nginx в Debian 10


Let’s Encrypt – это центр сертификации (ЦС, или Certificate Authority, CA), который предоставляет простой способ создания бесплатных сертификатов TLS/SSL, тем самым позволяя шифровать HTTPS на веб-серверах. Этот ЦС упрощает процесс создания сертификатов путём автоматизации большинства необходимых действий при помощи клиентского ПО. Процесс получения и установки сертификата полностью автоматизирован на веб-серверах Apache и Nginx.

Данный мануал поможет вам получить SSL-сертификат для Nginx в системе Debian 10 с помощью Certbot и покажет, как обновлять этот сертификат.

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

Сервер Debian 10.
Доменное имя, которое можно использовать в сертификате (в руководстве используется условный домен your_domain.com).
Записи А, связывающие домены your_domain.com и http://www.your_domain.com с внешним IP-адресом сервера. Они необходимы для того, чтобы Let’s Encrypt мог проверить доменное имя
Установленный сервер Nginx и блок server для вашего домена. Здесь в качестве примера используется хост /etc/nginx/sites-available/your_domain.com.

1: Установка Certbot

Для начала нужно установить клиент Certbot на сервер.

Установка пакета python3-certbot-nginx из репозиториев Debian позволит нам установить и использовать плагин Cerbot для nginx. Использование Python 3 и пакета python3-certbot-nginx увеличивает срок действия этой установки: Python 2 устареет к январю 2020 года, поэтому лучше, если установка обеспечивает совместимость с Python 3. В настоящее время Debian 10 поддерживает как Python 2, так и Python 3.

Прежде чем установить пакет, обновите индекс:

Код:
sudo apt update


Затем установите зависимости пакета python3-certbot-nginx, среди которых пакеты python3-acme, python3-certbot, python3-mock, python3-openssl, python3-pkg-resources, python3-pyparsing и python3-zope.interface:

Код:
sudo apt install python3-acme python3-certbot python3-mock python3-openssl python3-pkg-resources python3-pyparsing python3-zope.interface


Теперь установите пакет python3-certbot-nginx:

Код:
sudo apt install python3-certbot-nginx


Теперь Certbot готов к использованию, но для того, чтобы настроить SSL для Nginx, нужно проверить некоторые параметры конфигурации.
2: Проверка параметров Nginx

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

Если вы следовали разделу по установке виртуального хоста в мануале по установке Nginx, у вас должен быть виртуальный хост для домена сайта в /etc/nginx/sites-available/your_domain.com, где директива server_name уже настроена соответствующим образом.

Чтобы проверить это, откройте файл виртуального хоста, используя nano или другой текстовый редактор:

Код:
sudo nano /etc/nginx/sites-available/your_domain


Найдите строку server_name:

Код:
...
server_name your_domain http://www.your_domain;
...


Если она выглядит так, можете закрыть редактор.

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

Код:
sudo nginx -t


Если команда сообщила об ошибке, вам нужно снова открыть файл и исправить ее. После этого повторите проверку.

Если ошибок в конфигурации нет, перезапустите веб-сервер.

Код:
sudo systemctl reload nginx


Теперь Certbot сможет найти правильный блок server.
3: Настройка брандмауэра

Если у вас на сервере включен брандмауэр ufw, вам нужно настроить его для поддержки соединений HTTPS.

Просмотреть текущие настройки можно с помощью команды:

Код:
sudo ufw status


Скорее всего, брандмауэр пока что поддерживает только трафик HTTP:

Код:
Status: active
To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
Nginx HTTP                 ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
Nginx HTTP (v6)            ALLOW       Anywhere (v6)


Чтобы разблокировать трафик HTTPS, активируйте профиль Nginx Full и удалите профиль Nginx.

Код:
sudo ufw allow 'Nginx Full'
sudo ufw delete allow 'Nginx HTTP'


Теперь параметры брандмауэра будут выглядеть так:

Код:
sudo ufw status
Status: active
To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
Nginx Full                 ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
Nginx Full (v6)            ALLOW       Anywhere (v6)


Теперь пора запустить Certbot и получить сертификаты.
4: Получение SSL-сертификата

Certbot предлагает различные способы получения сертификатов SSL через плагины. Плагин Nginx позаботится о реконфигурации Nginx и при необходимости перезагрузит конфигурацию. Чтобы использовать этот плагин, введите:

Код:
sudo certbot --nginx -d your_domain -d http://www.your_domain


Эта команда запустит certbot с плагином — nginx, а флаг –d определит имена, для которых предназначен сертификат.

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

Если проверка пройдет успешно, certbot спросит, как вы хотите настроить HTTPS:

Код:
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):


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

Код:
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/your_domain/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/your_domain/privkey.pem
Your cert will expire on 2019-10-08. To obtain a new or tweaked
version of this certificate in the future, simply run certbot again
with the "certonly" option. To non-interactively renew *all* of
your certificates, run "certbot renew"
- Your account credentials have been saved in your Certbot
configuration directory at /etc/letsencrypt. You should make a
secure backup of this folder now. This configuration directory will
also contain certificates and private keys obtained by Certbot so
making regular backups of this folder is ideal.
- If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
Donating to EFF:                    https://eff.org/donate-le


Сертификаты будут загружены и установлены. Попробуйте перезагрузить свой сайт, указав https://, и обратите внимание на индикатор безопасности в браузере. Он должен указывать, что сайт надежно защищен (как правило, для этого используется зеленый замочек в адресной строке). Если вы протестируете свой сервер с помощью SSL Labs Server Test, он получит оценку A.

Теперь давайте протестируем процесс обновления сертификата.
5: Проверка автоматического обновления сертификата

Сертификаты Let’s Encrypt действительны только в течение девяноста дней. Потому пользователи должны автоматизировать процесс продления сертификата. Установленный вами пакет certbot позаботится об этом, добавив сценарий обновления в /etc/cron.d. Этот скрипт запускается два раза в день и автоматически обновляет сертификат, срок действия которого истекает через тридцать дней.

Чтобы протестировать процесс обновления, вы можете выполнить сухой прогон certbot:

Код:
sudo certbot renew --dry-run


Если вы не видите ошибок, все настроено правильно. При необходимости Certbot обновит ваши сертификаты и перезагрузит Apache, чтобы активировать изменения. Если процесс автоматического обновления не срабатывает, Let’s Encrypt отправит сообщение на указанный вами адрес электронной почты, предупредив вас о завершении срока действия вашего сертификата.


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 19


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти: