12 Сентябрь 2019

Свой DNS-over-HTTPS сервер на базе веб-сервера H2O


Различные аспекты эксплуатации DNS уже неоднократно затрагивались автором в ряде статей опубликованных в рамках блога. При этом, основной акцент всегда делался на повышение безопасности этого ключевого для всего Интернет сервиса.

До последнего времени, несмотря на очевидность уязвимости DNS трафика, который, до сих пор, по большей части, передаётся в открытом виде, для злонамеренных действий со стороны провайдеров, стремящихся повысить своих доходы за счёт встраивания рекламы в контент, государственных силовых органов и цензуры, а также просто преступников, процесс усиления его защиты, несмотря на наличие различных технологий, таких как DNSSEC/DANE, DNScrypt, DNS-over-TLS и DNS-over-HTTPS, буксовал. И если серверные решения, в некоторые из них существуют уже довольно долгое время, широко известны и доступны, то поддержка их со стороны клиентского программного обеспечения оставляет желать много лучшего.

К счастью, ситуация меняется. В частности, разработчики популярного браузера Firefox заявили о планах по включению по умолчанию режима поддержки режима DNS-over-HTTPS (DoH) в ближайшее время. Это должно помочь защитить DNS трафик пользователя WWW от вышеупомянутых угроз, однако потенциально способно вызвать новые.

Читать далее

27 Сентябрь 2018

Миграция на MySQL 8: проблемы и решения


В начале этого года состоялся релиз новой 8 ветки сервера баз данных MySQL. Нумерация была измененена в связи с новыми принципами версионирования MySQL и, по факту, новый выпуск представляет собой версию 5.8.

Среди целого набора новшеств, включённых в новый выпуск, некоторые из них повлияли на обратную совместимость с кодом, использующим MySQL для хранения своих данных.

Ввиду того, что всем рано или поздно придётся развёртывать новые системы или переносить данные со старых установок, автор на своём примере решил осуществить миграцию с предыдущей версии MySQL 5.7 на новый 8 выпуск. С предварительными результатами о замеченными измненениями, оказавшимися критичными для работы прикладного программного обеспечения, а также путями их решения, вас ознакомит эта статья.

Читать далее

27 Август 2018

Блог переехал на Bludit 3


Вчера мой блог переехал на предрелиз новой версии системы управления контентом Bludit 3.

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

Bludit является представителем семейства flatfile систем управления контентом, которые не используют внешних баз данных, что обусловливает минимальные требования к хостингу. Бэкэнд написан на PHP и совместим с любыми версиями, начиная с 5.3. Я написал и поддерживаю несколько плагинов для Bludit:

  • a2a — кнопки размещения публикации где угодно посредством AddToAny;
  • ads4u — добавляет рекламный (на самом деле, любой) код на страницу;
  • yandextools — подключает Яндекс.Вебмастер и Яндекс.Метрика.

В связи с обновлением API в новом релизе все плагины были модифицированы с учётом изменений. Предыдущие версии перенесены в отдельные репозитории на Github с суффиксами -1 или -2 в зависимости от совместимости со старыми версиями.

Читать далее

30 Март 2018

Переезжаем на wildcard сертификаты Let's Encrypt


Let's encrypt за относительно короткий промежуток времени стал самым популярным в мире центром сертификации (CA) по выпуску TLS-сертификатов. Причиной тому является, во-первых, бесплатность получения сертификата для любого желающего и, во-вторых, удобный механизм его выпуска и продления, когда благодаря множеству способов и программных средств данный процесс можно легко автоматизировать.

Сегодня Let's Encrypt занимает свыше 2/3 общего объёма видимых в Интернет TLS-сертификатов и доля его растёт.

Однако, до недавнего времени эта динамика несколько сдерживалась отсутствием возможности получить т.н. wildcard-сертификат, то есть такой, который покрывает все поддомены в рамках существующего домена более высокого уровня. Несмотря на то, что стандартный механизм Let's Encrypt позволяет иметь в одном сертификате до 200 различных доменов через расширени TLS SNI, это далеко не всегда удобно, ведь для каждого нового домена приходилось включать его в состав уже имеющегося сертификата или выпускать новый.

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

Читать далее

27 Ноябрь 2017

Проблемы учёта доменной квоты в Dovecot 2


Несколько лет назад в статье "Двухуровневое квотирование в Dovecot 2" автором была описана система устройства квот пользователь / домен в популярном IMAP4 / POP3 сервере Dovecot. Вкратце, напомню, что она позволяет ограничивать размер занимаемый как конкретным почтовым ящиком, так и всеми принадлежащими данному домену учётным записям. Это решение нашло применение на многих инсталляциях почтовых систем по всему миру.

Однако, в ходе реальной эксплуатации рядом пользователей были замечены некоторые технические проблемы такого решения. Рассмотрим в чём они состоят и как решаются.

Читать далее

26 Октябрь 2017

Плагин a2a для Bludit CMS


В качестве продолжения недавней статьи посвещённой выходу новой крупной версии системы управления сайтом Bludit представляю вашему вниманию новый модуль расширения для неё "a2a share buttons". Он представляет собой интеграцию популярного набора кнопок AddToAny, который предназначен для лёгкого распространения контента через огромное количество популярных (и не очень) социальных сетей.

Помимо поддержки новой внутренней структуры второй версии Bludit, новый плагин, во-впервых, визуально оптимизирован под используемую по-умолчанию теме оформления Log, а, во-вторых, имеет дополнительную возможность по отличной от принятой в используемой теме стилизации отображения блока AddToAny.

Читать далее