Когда ваш веб-сайт запущен и работает, вам необходимо поработать над некоторыми ключевыми моментами, чтобы обеспечить безопасность, доступность и надежность. Первым делом нужно настроить балансировщик нагрузки, и HAProxy оказался надежным вариантом. HAProxy обеспечивает балансировку нагрузки, выступая в качестве обратного прокси-сервера. Даже при наличии HAProxy вам все равно необходимо защищать трафик, шифруя транзакции с помощью HTTPS. Вы можете быстро защитить свой веб-сервер, используя шифрование SSL/TLS. Таким образом, данные между вашим сервером и клиентскими устройствами передаются безопасно и обеспечивается целостность данных. Читайте дальше, чтобы понять, как защитить ваш HAProxy с помощью SSL.
Как работает SSL-шифрование?
Благодаря таким опциям, как Let’s Encrypt, теперь вы можете получить бесплатный сертификат SSL/TLS для шифрования вашего веб-сайта. Let’s Encrypt — это бесплатный открытый центр сертификации, который предоставляет бесплатные сертификаты SSL/TLS со сроком действия 90 дней для действующих доменов. С помощью этих сертификатов ваш веб-трафик между сервером и клиентом передается по протоколу HTTPS. Таким образом, хакеры не смогут подслушивать трафик и манипулировать целостностью общих данных.
Помимо того, что Let’s Encrypt является бесплатным, он также поддерживает автоматизацию. Сертификат SSL/TLS, который вы получаете, автоматически обновляется каждые 90 дней. Таким образом, у вас может быть сценарий, который запускает обновление и обновляет ваш HAProxy каждые 90 дней. Более того, сертификаты Let’s Encrypt совместимы со всеми браузерами и операционными системами, что обеспечивает беспрепятственное их использование для защиты вашего HAProxy.
Пошаговое руководство по защите вашего HAProxy с помощью SSL
Теперь мы понимаем, что делает сертификат SSL/TLS и зачем он вам нужен для вашего веб-сайта. Более того, мы обсудили, как его можно приобрести. Последний шаг — поделиться инструкциями по защите HAProxy с помощью SSL.
Прежде чем мы начнем, убедитесь, что у вас есть действующий и действительный домен, связанный с целевым веб-сервером, который вы используете с HAProxy. Как только все будет готово, выполните следующие действия:
Шаг 1. Обновите репозиторий
Обновление вашей системы гарантирует, что вы получите новейший исходный код пакетов, которые хотите установить.
$ судо подходящее обновление
Шаг 2. Установите HAProxy
В этом случае мы должны установить HAProxy, поскольку мы хотим защитить его с помощью SSL. Если на вашем веб-сервере работает HAProxy, пропустите этот шаг. В противном случае выполните следующую команду «install», чтобы быстро установить HAProxy:
$ судо подходящий установить гапрокси
После его установки выполните настройки, которые идеально подходят для нужд вашего сервера, например, балансировку нагрузки.
Шаг 3. Установите Certbot
Все бесплатные SSL-сертификаты, выпускаемые Let’s Encrypt, предоставляются через Certbot. Вам не нужно устанавливать Certbot, если ваш сертификат приобретен в другом месте. В этом случае мы используем Ubuntu 22.04, а пакет Certbot доступен из репозитория по умолчанию. Чтобы установить его, выполните следующую команду:
$ судо подходящий установить сертификатбот
Шаг 4. Получите сертификат SSL
После установки Certbot вы можете получить сертификат SSL от Let’s Encrypt. Используйте следующий синтаксис и убедитесь, что вы заменили «exampledomain.com» действительным доменом, который вы хотите защитить.
$ судо сертификатбот --автономный -д exampledomain.com -д www.exampledomain.com
После запуска команды появится ряд подсказок. Просмотрите каждую подсказку и ответьте на них, указав правильные данные. Например, вы должны указать адрес электронной почты, связанный с доменом. После того, как вы ответите на запросы и ваш домен будет подтвержден, сертификат SSL будет получен и сохранен на вашем сервере.
Шаг 5. Создайте один файл PEM
Чтобы использовать сгенерированный сертификат SSL с вашим HAProxy, сохраните сертификат и соответствующий закрытый ключ в один файл PEM. Поэтому мы должны объединить файл сертификата полной цепочки с файлом закрытого ключа с помощью следующей команды:
$ судо кот / и т. д. / Letsencrypt / жить / exampledomain.com / Fullchain.pem / и т. д. / Letsencrypt / жить / exampledomain.com / privkey.pem | судо тройник / и т. д. / гапрокси / сертификаты / примердомен.com.pem
Обязательно заменяйте домен всякий раз, когда это необходимо.
Шаг 6. Настройте HAProxy
Если у вас есть один файл PEM, вы должны настроить HAProxy для ссылки на файл для его защиты. В файле HAProxy укажите порт, который вы хотите связать с помощью HTTPS, и добавьте путь к файлу PEM, используя ключевое слово SSL.
Откройте файл с помощью текстового редактора.
$ судо нано / и т. д. / гапрокси / haproxy.cfg
Затем отредактируйте конфигурации, чтобы интерфейс был похож на приведенный ниже, показывая, какой порт защитить и откуда взять файл PEM.
Наконец, сохраните и выйдите из файла конфигурации. Вы можете перезапустить HAProxy, и ваш трафик будет защищен при передаче от клиента на сервер. Весь HTTP-трафик будет перенаправлен на HTTPS благодаря схеме перенаправления, которую мы включили в файл конфигурации.
Вот как защитить ваш HAProxy с помощью SSL.
Заключение
Сертификат SSL/TLS — это удобный способ защиты вашего трафика при использовании HAProxy в качестве балансировщика нагрузки. Вы можете получить бесплатный сертификат SSL от Let’s Encrypt с помощью инструмента Certbot и настроить свой HAProxy на его использование при перенаправлении трафика. Мы представили подробные инструкции и привели пример, который можно использовать при настройке на вашем веб-сервере.