Вы научитесь настраивать в CentOS7 прокси-сервер Nginx с поддержкой SSL Let’s Encrypt для балансировки между двумя upstream-серверами.
Nginx часто используется не как самостоятельный Web-сервер, а как обратный прокси, который, который распределяет трафик на обрабатывающие серверы (в общей терминологии — upstream), которые уже выполняют всю работу. Эта схема часто применяется даже там, где вы ее не ожидаете, например, для взаимодействия с PHP-FPM или для передачи обработки на сервер Apache2.
Вы научитесь развертывать WordPress в форме приложения Docker, узнаете как настроить каталоги хост-системы для долгосрочного хранения данных WordPress и MySQL.
Все руководство будет состоять из блоков шагов:
Установка Docker в вашу операционную систему.
Настройка WordPress и MySQL с помощью Docker Compose.
Настройка проксирования с помощью Nginx с поддержкой сертификата Let’s Encrypt.
Вы научитесь настраивать прокси-сервер Nginx с поддержкой SSL Let’s Encrypt для балансировки между двумя upstream-серверами. Данное руководство для ОС семейства Debian — Ubuntu Linux, Debian Linux и других, которые используют схожие пакеты и методы их установки.
Nginx часто используется не как самостоятельный Web-сервер, а как обратный прокси, который, который распределяет трафик на обрабатывающие серверы (в общей терминологии — upstream), которые уже выполняют всю работу. Эта схема часто применяется даже там, где вы ее не ожидаете, например, для взаимодействия с PHP-FPM или для передачи обработки на сервер Apache2.
Что такое CDN? Если коротко, CDN (Content Delivery Network) — глобальная сеть, которая служит для ускорения доставки трафика от поставщиков к получателям. К примеру, когда вы смотрите видео с Youtube, это видео не отправляется из единого датацентра, а обслуживается ближайшим к вам сервером CDN. Таким образом поставщики контента не только повышают качество обслуживания, но и снижают затраты на доставку трафика.
Среди покупателей услуг CDN есть самые разные потребители:
поставщики стримингового медиа-контента;
разработчики программного обеспечения;
сервисы доствки рекламы;
контентные сайты.
Разные сети CDN организованы по-разному, в зависимости от целей сети. Часто применяется принцип организации с помощью Anycast IP — способ, при котором владелец сети CDN публикует одни и те же IP-сети из разных точек с помощью протокола BGP. Таким образом, для пользователя из Москвы, некоторый IP A.B.C.D может видеться как московский, а для пользователя из Берлина как находящийся в Нидерландах.
Это позволяет избежать ряда проблем, например, с DNS, когда компьютеры пользователей помнят старые адреса, которые уже находятся в аварийном состоянии.
С другой стороны, Anycast IP не гарантирует лучшего маршрута трафика, поскольку это достаточно грубый инструмент. Однако, он надежен и применяется в CDN широко.
Не стоит думать, что CDN полезен только для огромных проектов и стоит кучу денег. Далее, мы рассмотрим как можно использовать CDN с обычным сайтом, какие преимущества это дает и что необходимо предусмотреть при использовании.
В этой статье мы рассмотрим как быстро установить Docker CE в операционной системе CentOS Linux версии 7. Эта инструкция разработана по рекомендациям разработчика системы Docker и переведена на русский язык для большего удобства.
В стандартных репозиториях ОС Debian уже присутствует пакет для Docker, однако, обычно, это не то, что требуется разработчикам, поскольку эти версии считаются устаревшими.
Правильный подход — установить пакет Docker Community Edition (CE) из официального репозитория Docker, что бы и рассмотрим далее.
В стандартных репозиториях ОС Ubuntu уже присутствует пакет для Docker, однако, обычно, это не то, что требуется разработчикам, поскольку эти версии считаются устаревшими.
Правильный подход — установить пакет Docker Community Edition (CE) из официального репозитория Docker, что бы и рассмотрим далее.
В данном руководстве мы рассмотрим как реализовать концепцию большого динамического черного или белого списка с помощью веб-сервера Nginx, сервера Redis и скрипта расширения Nginx, реализованного на Lua.
В данном руководстве все программное обеспечение будет устанавливаться в Ubuntu 16.04 или 18.04. Практически без изменений данные решения можно применить и в других дистрибутивах, основанных на Debian.
Nginx содержит встроенный механизм обработки черных или белых списков, который подходит в случае использования небольших списков. Однако, этот механизм неудобен, когда требуется работать с большими списками адресов, когда списки формируются динамически.
К счастью, Nginx поддерживает модули расширения на языке Lua, которые совместно с кэшу в памяти Redis позволяют реализовать требуемую функциональность черных и белых списков.
WordPress — самый популярный движок для CMS, который использует более 30% всех сайтов мира, что делает его самым популярным инструментом для разработки как небольших, так и больших сайтов. Основа популярности — поддержка огромного количества расширений и тем, которые позволяют разработчикам собирать сайт из как из конструктора с минимальным набором необходимых изменений. При этом вполне рабочий сайт можно получить в течение одного дня.
Однако, именно такая гибкость и доступность множества расширений и методов модификации делает WordPress и одним из самых уязвимых движков для сайтов, в котором постоянно находят новые ошибки, а сайты являются источником спама, участвуют в атаках и взломах других ресурсов, крадут пользовательские данные, участвуют в тайной добыче криптовалюты, чем нагружают ваши серверы.
В этой статье мы рассмотрим подход, который позволит вам обезопасить свой сайт на WordPress от злоумышленников, даже если он использует ненадежные компоненты.
О том, как настроить минималистичный сервер с Nginx, WordPress, MariaDB и поддержкой сертификатов Let’s Encrypt читайте в нашем руководстве.
Часто встречающаяся ситуация: виртуальный или аппаратный сервер завис и не отвечает. Заходите на него с помощью инструмента удаленного управления IPMI или консоли VNC, видите только черный экран и ничего кроме. Скорее всего, ядро Linux вошло в режим паники (Kernel Panic), который вызван сбоем одного из модулей ядра, ошибкой в самом ядре, критической аппаратной ошибкой.
Вы перезагружаете сервер, ищите журналы на предмет релевантных сообщений, а в ответ пустота — ничего криминального нет. На самом деле, сообщения сопровождающую возникшую ошибку были, но они не дошли до файла журнала. Связано это с тем, что, когда ядро Linux сталкивается с критической ситуацией, особенно, если она связана с файловой системой, то ему не удается использовать модули файловых систем, чтобы записать данные в файл журнала. Как результат, записи, сопровождающие ошибку теряются.