Архив категории ‘Администрирование’

RabbitMQ & PHP & OpenSSL

В прошлом посте я рассказывал про замечательный облачный сервис RabbitMQ as a Service.

Тем кто будет работать с rabbitmq из PHP, стоит детально изучить мануал с сайта (перевод на русский, только код немного устарел), единственная проблема не учтенная в мануале — это безопасность.

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

Как нам защититься?
(далее…)

RabbitMQ as a Service

Последнее время все больше и больше нравятся PaaS (Platform as a Service) и SaaS (Software as a Service) услуги (погружение в azure до добра не доводит, но в целом экономит время).
(далее…)

Большие проблемы маленького расширения

За всю историю блога я достаточно часто писал про все возможные расширения дисковой подсистемы Linux (кому интересно, могут сделать поиск по ключу «Диск»)
В части постов, успешным завершением процесса является выполнение команды «resize2fs«, с которой я получил достаточно интересную проблему на одном из серверов.
(далее…)

PHPUnit: Или еще раз про тестирование кода

Как уже ранее писалось тестирование кода существенно упрощает его эксплуатацию. Я пишу на php, для тестирования использую phpunit.
PHPUnit — средство модульного тестирования веб-приложений, написанных на PHP.
(далее…)

Включаем HTTP/2 (ALPN) на Nginx


Последнее время достаточно часто можно слышать про протокол HTTP/2. Что это такое и зачем нам нужен данный протокол?

Современные сайты состоящие из большого количества статических элементов, при загрузке инициируют на каждый элемент статики отдельное TCP-соединение. Это создает определенную задержку при загрузке сайта. Мультиплексирование позволяет браузеру выполнять множество запросов в рамках одного TCP-соединения — это самое главное преимущество HTTP/2. Также важным требованием протокола HTTP/2 является обязательное шифрование (HTTPS).

Если вы используете HTTP/2 на базе Nginx, то с 31 мая 2016 года он перестал работать в Chrome и остальных браузерах.

Для использования HTTP/2 протокола требуется поддержка переключения с обычного TLS на HTTP/2.  Существует две реализации переключения: NPN (Next Protocol Negotiation) и ALPN (Application-Layer Protocol Negotiation). При этом первая реализация устарела и заменёна второй. При этом для работы второй реализации — ALPN, нужен OpenSSL версии (1.0.2+), более старые поддерживают только NPN.
(далее…)

Миграция с Synology на XPEnology

В далеком 2010 году в качестве внешнего хранилища под виртуальные машины домашней лаборатории я выбрал Synology DS210j. За практически 7 лет, я убедился что сделал правильный выбор (наверное самая лучшая реклама для вендора это время сколько служит их железо), но всегда находится «НО».

Сняв на неделе benchmark с данного массива, я понял, что процессор 800 МГц (MARVELL_88F6281 ARM) и ОЗУ 128 Мбайт DDR 800 МГц уже не могут тягаться по скорости с современными носителями. Так как было желание избавиться от двух железок на антресолях, была рассмотрена возможность покупки нового массива, с расчетом на то, что получиться совместить «все в одном». Но из за отсутствия в прошивке необходимого функционала (мне нужна виртуализация в том числе windows, которая например есть на новых freenas на основе virtualbox, а в synology пока только docker), плюс массив нужной комплектации 2017 году неожиданно дорого стоит, было принято решение сделать наоборот, т.е. смигрировать массив в виртуализацию.
(далее…)

Конфигурации Nginx с FastCGI для osTicket

При переходе на связку Nginx с FastCGI перестала работать тикетница на osTicket. Стандартный рецепт с конфигурацией к сожалению не заработал, пришлось искать решение по форумам. Для ленивых спрятал его подкатом…
(далее…)