Рейтинг
0.00

Apnscp.com Панель

1 читатель, 7 топиков

26 декабря ApisCP исполняется 18 лет



26 декабря ApisCP исполняется 18 лет, что является важной вехой, поскольку кодовая база теперь может покупать фейерверки, покупать аэрозольную краску и делать татуировки без согласия родителей.

Чтобы начать празднование и помочь всем пережить 2020 год, я возвращаю популярную скидку 50% (код купона: ANNIVERSARY), действующую для всех бессрочных лицензий. Эта скидка действительна до 1 января или до официального запуска поддержки реселлеров, в зависимости от того, что произойдет позже.

Лицензии Pro (без ограничений по доменам) стоят 249 долларов, Startup (ограничение на 30 доменов) — 79 долларов, а Mini (ограничение на 10 доменов) — 49 долларов. Все это разовые затраты. При необходимости лицензии могут быть отозваны и перевыпущены через портал лицензирования my.apiscp.com.

Переходим к интересным событиям. Как мы знаем, сейчас CentOS переключается на RHEL, а не вниз по течению. Я поделился своими мыслями по этому поводу и зарегистрировал несколько дней сборки на тестах E2E. Если к Лету не случится чего-то катастрофического, ApisCP продолжит фокусироваться на экосистеме Red Hat / CentOS, чтобы обеспечить максимальную интеграцию, обеспечиваемую этим дистрибутивом. Более короткие циклы выпуска критически важного программного обеспечения, такого как systemd, позволяют мне создавать более связанные платформы с меньшими накладными расходами. Это победа.

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

Учитывая амбициозный подход к поддержке реселлеров, ApisCP будет поддерживать реселлеров только на CentOS 8 или Stream с файловыми системами xfs. ext4 поддерживает квоты проектов для ядер 4.x; однако я не исследовал его в той же степени, что и квоты проекта / группы / пользователя xfs.

Наконец, прокси-сервер панели, о котором говорилось ранее, позволяет запускать несколько узлов ApisCP с одного портала входа в систему. Это было частью волшебства Hostineer в течение последних 5 лет, и теперь оно стало доступным для более широкой аудитории. В этом помогли несколько великих умов ApisCP Discord. Это так же просто, как пара параметров конфигурации на каждом узле. Прокси-сервер Panel разбит на 3 отдельных компонента для повышения безопасности. Каждый компонент может работать с бесплатной лицензией только для DNS, выданной через my.apiscp.com. После того, как реселлер будет реализован, я расширю это, чтобы позволить администратору переходить из одного места в другое.

my.apiscp.com

Поддерживаются AlmaLinux и Rocky Linux



Начиная с версии 3.2.26, ApisCP поддерживает установку на машины AlmaLinux и Rocky Linux, а также преобразование существующей машины CentOS 8 или CentOS Stream. AlmaLinux и Rocky Linux являются клонами Red Hat Enterprise Linux, ошибка за ошибкой, которая возникла в ответ на решение Red Hat в начале этого года сделать CentOS исходным дистрибутивом для RHEL. CentOS 8 прекращает производство в конце года, а Stream является де-факто дистрибутивом CentOS.

Чтобы переключиться на AlmaLinux, запустите:
cpcmd scope: установить system.distro alma
Чтобы переключиться на Rocky Linux, запустите:
cpcmd scope: установить system.distro rocky
ApisCP запустит соответствующие сценарии миграции в фоновом режиме, выбрав отправку электронной почты после завершения миграции. Вы можете проверить адрес с помощью cpcmd common: get-email. Нужно сменить электронную почту? Сделайте это в настройках панели управления как admin или cpcmd common: set-email you@address.com.

После переключения с Stream или CentOS 8 вы не можете вернуться в Stream, поскольку не существует сценария миграции, поддерживаемого поставщиком. Если AlmaLinux или Rocky Linux вам не подходят, вы всегда можете переключиться на другой дистрибутив, используя cpcmd scope: set system.distro.

Будущее CentOS в ApisCP



Ранее сегодня Red Hat / CentOS объявили о значительном изменении работы выпусков CentOS. Начиная с января 2022 года, вместо того, чтобы оставаться производной от RHEL, он станет собственным отслеживанием текущих выпусков перед выпусками RHEL, которые являются синонимом стабильности предприятия. CentOS будет RHEL тем же, чем Rawhide для Fedora, возможностью исследовать новые технологии в более быстром темпе, чем то, что предлагает ее целевая ОС.

Эта стратегия вводит довольно много неизвестного, за которым мы будем внимательно следить в течение следующих 6 месяцев.

Во-первых, нам нужно посмотреть, как отреагирует сообщество, а также как IBM (владеющая Red Hat) справится с этим заявлением, поскольку некоторые предсказания весьма сбивают с толку.

Если вы используете CentOS Linux 8 в производственной среде и обеспокоены тем, что CentOS Stream не удовлетворит ваши потребности, мы рекомендуем вам связаться с Red Hat по поводу вариантов.
Во-вторых, ApisCP работает с CentOS 8 Stream прямо из коробки, фактически с E2E сегодня утром, сборка просто прекрасна. Я переместил демонстрационный сервер в Stream, потому что лучший способ проверить, работает ли парашют, — это прыгнуть с ним. Переместить сервер CentOS 8 в Stream очень просто,
dnf install centos-release-stream
dnf distro-sync
upcp -sb


В-третьих, RHEL — это де-факто ОС для банков, больниц, государственных учреждений и других крупных корпоративных организаций, которые превыше всего ценят стабильность. Предприятие — это большой бизнес. Выручка Red Hat за 2019 финансовый год составила 3,36 миллиарда долларов (Canonical, производители Ubuntu, ~ 111 миллионов долларов). У Red Hat есть все необходимое для найма компетентных инженеров, и их репутация подтверждает эту способность, но эти организации, составляющие ядро ​​Red Hat, ненавидят перемены.

Что касается хостинга, мы имеем дело с множеством новых технологий, которые не развиваются такими же темпами, как выпускает RHEL. Я сообщил об ошибке в tmpfiles, из-за которой на перенос довольно простого патча в апстрим ушёл год. Совсем недавно появилась неприятная ошибка с systemd-resolved, которая не работает при запуске, блокируя разрешение DNS из-за внутренних изменений в политиках безопасности systemd. На его включение в RHEL после отчета ушло 5 месяцев; Спустя 8 месяцев после сообщения он все еще не завершен в CentOS (был выпущен неработающий пакет с ProtectSystems = [sic]). Не из тех, кто ждет, пока под моими ногами вырастет трава, я выпустил исправление перед CentOS.

С другой стороны, мы можем создать ОС-солянку во многом так же, как cPanel сделала со своей собственной сборкой OpenSSL для TLSv1.3 в Apache под CentOS 7 (C8 был первым, кто официально поддержал TLSv1.3). «Франкенсерверы» создают закрытые сети зависимостей, которые являются громоздкими без той же строгой процедуры тестирования, которую может предоставить Red Hat. ApisCP полагается на системные пакеты, иногда при необходимости копируя новые выпуски в их первоначальном виде. Модель с подвижным выпуском обеспечивает постоянную подачу новых технологий без хирургического извлечения.

Наличие более быстрых выпусков в сочетании с инженерным талантом Red Hat также позволяет быстрее встраивать исправления и функции в стабильную ОС, что, в свою очередь, может позволить Red Hat догнать Canonical в области новых технологий. Следует отметить, что ApisCP запускает нестандартные пакеты: Apache, Postfix, Dovecot, PHP, MySQL, PostgreSQL, Node, Python и Ruby, потому что RHEL так сильно отстает от этих жизненно важных компонентов. Поддержка реселлеров, запуск которой запланирован на первый квартал 2021 года, будет использовать квоты проектов в поддеревьях xfs + cgroupv2 для обеспечения онлайн-контроля над перепродажей. По сравнению с периодическим автономным учетом в cPanel, это обеспечивает принудительное ограничение потребления ресурсов операционной системой. Эта технология не была стабильной / возможной в CentOS 7. Более быстрые циклы выпуска помогают нам создавать лучшие технологии, пока программное обеспечение остается стабильным; это цель Fedora.
www.kernel.org/doc/html/latest/admin-guide/cgroup-v2.html

Может ли IBM закрыть CentOS? Нет, это слишком ценно для них как посредника между Fedora и RHEL. Как аналог RHEL, CentOS предлагает худшую ценность, чем если бы она стала трамплином для RHEL. Более того, чтобы мы не забыли, что Red Hat по-прежнему состоит из программного обеспечения под лицензией GPL / BSD / MIT, а Грегори Курцер, первоначальный основатель CentOS, похоже, запускает свой движок, чтобы создать еще одну производную от RHEL.

Наконец, давайте подумаем под другим углом, что через 6 месяцев это катастрофа, и у нее мало надежды на спасение будущего CentOS. В худшем случае я откажусь от разработки и оценю альтернативные дистрибутивы в июне, чтобы разместить ApisCP 4.0 в новом дистрибутиве. Зная, какая неопределенность впереди, разработка в течение следующих 6 месяцев будет учитывать возможность нового дистрибутива, а также наращивание тестирования E2E на платформах CentOS 8 Stream, так что у меня будет более четкая картина по мере приближения июня.
api.ara.apiscp.com/?label=c8s

Продолжение следует.

Выпущен ApisCP 3.2



Выпущена версия 3.2! 3.2 — это переработанная подсистема веб-приложений, которая добавляет множество новых функций, включая:
  • Поддержка Nextcloud одним щелчком мыши с усиленной безопасностью через Fortification
  • общий модуль webapp для взаимодействия с независимыми веб-приложениями
  • Манифесты веб-приложений для расширения базовых функций
  • парсер AST для мощной интеграции с WordPress
  • Поддержка клонирования / переименования в один клик для WordPress
  • поддержка сторонних веб-приложений
  • Взгляд Аргоса
  • панель уведомлений
  • Поставщики DNS для сервисов Katapult и Hetzner.

Давайте рассмотрим некоторые из новых функций, помимо столь необходимой подтяжки лица.


Поддержка Nextcloud

Неудивительно, что Nextcloud зарекомендовал себя как неукротимое универсальное решение для управления всем вашим. Мы перенесли Nextcloud в ApisCP одним щелчком мыши и повысили его безопасность с помощью нашей подсистемы Fortification. По умолчанию Nextcloud устанавливается без возможности управлять собственными приложениями, но это можно легко изменить, перейдя в Интернет> Веб-приложения> Выбрать домен> Фортификация> Повышение (MIN). Рекомендуется включить MAX Fortification после того, как вы установили нужные приложения.

Для дополнительного спокойствия Nextcloud автоматически обновляется при выходе новой версии. Вы всегда будете получать электронное письмо при каждом обновлении, если вы не настроили иное в разделе «Учетная запись»> «Настройки»> «Настройки приложения».


Улучшения веб-приложений
Веб-приложения стали умнее и мощнее, чем когда-либо прежде. ApisCP 3.2 теперь включает веб-приложение независимого модуля, которое запрашивает API нужного модуля. Не знаете, что находится под mydomain.com, но хотите его обновить? webapp: update-all («mydomain.com»). ApisCP будет смотреть на свои сохраненные метаданные и соответствующим образом направлять вызов API. Аналогичным образом webapp: discover ($ domain, $ path = '') перечислит каждое известное веб-приложение, чтобы определить, соответствует ли оно, а затем обновит свои внутренние записи.

Манифесты
Веб-приложения также расширились, чтобы разрешить определяемое пользователем поведение с помощью Fortification и управления базами данных через манифесты. Манифесты — замечательное дополнение, которое может переопределить задачи. Поддерживаются db_config (), fortify () и unfortify () с планами расширения, чтобы охватить все функции API webapp ().

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


Манифесты следуют интуитивно понятному формату YAML, для которого требуется указание после редактирования в разделе Поведение> Манифест.


Улучшения WordPress
ApisCP начинался как хостинговая платформа для WordPress, среди других приложений PHP, в начале 2000-х годов. Дизайн платформы развился в ответ на усиление безопасности в результате распространения плохого кода, который за последние 20 лет повлиял не только на WordPress, но и на другие приложения PHP. Безопасность можно и нужно ставить в центр внимания не только потому, что она снижает административную нагрузку, но и заставляет внимательнее относиться к новым целям.

WordPress здесь, чтобы остаться. Он прошел долгий путь от своего скромного истока, когда Мэтт Малленвег наткнулся на свой потерянный инвестиционный чек на 500 000 долларов. ApisCP продолжает адаптироваться к новым тенденциям, помогая владельцам сайтов опережать возникающие угрозы, обеспечивая превосходный баланс между защитой и производительностью. Мы улучшаем интеграцию Fortification, добавляя мощный парсер AST, который может буквально переконфигурировать wp-config.php одним щелчком переключателя.

3.1 добавлена ​​скрытая функция FS_METHOD при новых установках. Сегодня мы используем эту функцию, чтобы сообщить WordPress, как он должен обрабатывать ваши файлы надежным программным способом. При вызове wordpress: fortify () ApisCP ищет define ('FS_METHOD', XXX); и заменяет XXX на типизированное свойство. У вас есть старые версии импорта из cPanel, которые вы хотели бы зарегистрировать в этом средстве? Используйте ловушку API, чтобы добавить их:
<?php
        \a23r::registerCallback('wordpress', 'valid', function ($ret, $args) {
        if (!$ret) {
            return;
        }

        $approot = $args[0];

        if ($approot[0] !== '/') {
            // passed as $hostname, $path
            $approot = $this->getAppRoot($args[0], $args[1] ?? '');
        }

        $pairs = [
            'FS_METHOD'           => false,
            'FTP_USER'            => $this->username . '@' . $this->domain,
            'FTP_HOST'            => 'localhost'
        ];

        return $this->updateConfiguration($approot, $pairs);
    });


wordpress: valid () запускается во время перечисления плагинов / тем как часть периодических обновлений. Запуск обновления вручную обновит все допустимые установки WordPress с новой конфигурацией:

cpcmd admin: update-webapps '[тип: wordpress, assets: true]'

Клонирование / переименование сайта
Благодаря почти 2500 командам API, которые постоянно растут, каждый найдет что-то для себя. Одна из малоизвестных функций, представленных при миграции cPanel, — это конвейерные операции импорта / экспорта как для PostgreSQL, так и для MySQL. Смешайте вышеуказанный парсер AST с операцией копирования, и мы получим надежный механизм клонирования.

Демо веб-приложение
Появился новый дом для веб-приложений config / custom / webapps. Пример веб-приложения доступен через @ apisnetworks / apiscp-webapp-demo, который представляет нестандартный модуль API и сопутствующий обработчик веб-приложения. Эта функция еще только зарождается, хотя, если у вас есть какие-либо вопросы, не стесняйтесь заглядывать в чат за помощью. Раскадровки помогают создавать более сильные продукты.


Взгляд Аргоса
Argos — это комплексный пакет мониторинга для ApisCP, который даже может пересылать события на ваше мобильное устройство. Это отличный способ пассивно и активно отслеживать ваши серверы на предмет чрезвычайных событий. 3.2 переносит Argos на административную панель инструментов для более быстрого распознавания проблем.


Уведомления
Уведомления будут расширены в версии 3.2 и будут включать установки веб-приложений. Это все еще в стадии RFC. Более подробная информация будет предоставлена на сайте docs.apiscp.com и объявлена через @apisnetworks, когда она станет доступна. Обратная связь всегда приветствуется — ApisCP никогда бы не был там, где он есть сегодня, без своих пользователей.


Провайдеры Katapult + Hetzner
Наконец, семейство DNS пополнилось Katapult и Hetzner. Katapult — это новый VPS-сервис от Krystal Hosting. Hetzner расширил свои услуги, включив общедоступный DNS, который является отличной альтернативой Cloudflare.

3.3 горизонт
rspamd multimap, Postfix ccerts, {admin, site}: bless, функция WPScan, миграция Plesk / DirectAdmin. Оставайтесь с нами ????

Журнал изменений
3.2 релиз
Переписывание средств веб-приложений, значительные улучшения функциональности.

НОВАЯ
  • [Bootstrapper] BSARGS = переменная среды для передачи --extra-vars = $ BSARGS в ansible-playbook, например env BSARGS = "- force = yes" upcp -sb
  • [CLI] Добавлен формат вывода / ввода «сериализации». Использует встроенную сериализацию PHP для передачи объектов в чистом виде.
  • [Дашборд] добавить взгляд на Аргос.
  • [DNS] Katapult, Hetzner DNS-провайдеры. Katapult — это новый VPS премиум-класса, Hetzner предоставляет бесплатный DNS-сервис.
  • [dns] verify (), Verified (), Challenge () API-вызовы для сторонних поставщиков DNS, которые требуют дополнительных задач.
  • [git] add_ignore (), list_ignored_files () — управлять игнорируемыми файлами для репозитория git.
  • [web] get_all_hostnames_from_path () — учитывая docroot, найти все имена хостов, которые обслуживаются из этого базового местоположения.
  • [webapp] универсальный модуль веб-приложений. Не знаете, какое веб-приложение установлено в корне документа, но хотите его обновить? cpcmd -d mydomain.com webapp: обновить mydomain.com. В этом модуле представлены все методы семейства, кроме install ().
  • [webapp] get_reconfigurable () — получить реконфигурируемое значение либо переходное, либо фикстурное.
  • [Веб-приложения] обучение, написание, выпуск теперь можно вызывать из API. wordpress: fortify («mydomain.com», "", «узнать», [10]);
  • [Веб-приложения] fortification_modes () — список всех режимов фортификации, доступных для приложения.
  • [Веб-приложения] Поддержка Nextcloud в 1 клик.
  • [Веб-приложения] Манифесты. Bolt on Fortification и поддержка моментальных снимков / откатов базы данных к любому корню документа в вашей учетной записи. Manifest Fortification может определять дополнительные режимы в дополнение к базовым режимам приложения.
  • Управление уведомлениями [веб-приложений] осуществляется через «Учетная запись»> «Настройки».
  • [Веб-приложения] сторонняя поддержка. См. Пример приложения в @ apisnetworks / apiscp-webapp-demo.
  • [WordPress] Парсер AST обеспечивает более тесную интеграцию с wp-config.php. Переключение Fortification в режим «записи», например, автоматическая перезапись FS_METHOD на «прямой». Также может использоваться в хуках (см. WordPress.md).
  • [WordPress] Поддержка дублирования и переименования сайтов. Легко переносите сайт WP из стадии подготовки в производство одним щелчком мыши!

ФИКС
  • Вызовы статистики [file] могут сообщить о недопустимом пользователе, если пользователь был удален и воссоздан заново с той же комбинацией идентификатора сайта / идентификатора пользователя.
  • [DeleteDomain] очистить глобальный журнал ошибок перед удалением. Генерация Epehemeral учетной записи может ошибочно сообщать об ошибке, если глобальное состояние было ошибкой до удаления.
  • [Migrations] обновить IPv6 при миграции
  • [Веб-приложения] поврежденные сайты во время обновления больше не прерывают пакет обновления.

ИЗМЕНЕНО
  • [Core] поднять PHP до 7.4.
  • [Datastream] поддерживает 2 ^ 22 PID, что позволяет закреплять работника, когда PID превышает 65536.
  • [Let's Encrypt] отключает SSL с подстановочными знаками, если используется нулевой драйвер.
  • [Laravel] Обновите Laravel до 6 / LTS, Horizon до 3.
  • [mysql, pgsql] clone () теперь может дублировать базу данных в пустое место назначения.
  • [mysql, pgsql] export () теперь может экспортировать базу данных в пустой файл.
  • [PHP] libsodium всегда включен для PHP 7.2+.
  • [Postfix] Совместимость с CentOS 8 / systemd с sendmail. RestrictAddressFamilies требует поддержки AF_NETLINK. Установка PrivateDevices или RestrictAddressFamilies, в дополнение к другим директивам, безвозвратно включает NoNewPrivileges = yes, что предотвращает временное предоставление помощнику postdrop setgid возможности «postdrop» членства вызывающего процесса. Для этого требуется либо открыть / var / spool / postfix / maildrop для мира, либо использовать ACL для предоставления пользователю apache прав на запись / выполнение в каталог. Использование этого маршрута блокирует будущие разработки в многопользовательских пулах, а также запуск пула для одного пользователя (режим совместимости cPanel), оставляя добавление дополнительных групп единственным подходящим путем.
  • [PostgreSQL] Параметр времени установки PostGIS через pgsql_has_postgis.
  • [PowerDNS] pdns-сервер больше не включается явно при использовании поставщика PowerDNS, если для powerdns_enabled не задано значение true.
  • [Rampart] отключение FTP / почтовых служб отключает соответствующие профили мониторинга журналов.
  • [UI] преобразовать свертывание во всплывающее меню. Незначительные настройки пользовательского интерфейса.
  • [UI] «Поиск» превращен в компонент многократного использования.
  • [Веб-приложения] сообщают о режиме укрепления в мета-желобе.

CentOS / RHEL 8 теперь поддерживается



TLS v1.3 требуется для протокола QUIC (HTTP/3), который все еще находится в стадии разработки, но стабилизирует черновики к 2021 году, если не позднее в этом году, на основе чернового варианта жизненного цикла HTTP/2.




Помимо захватывающего, есть еще и приземленное. cgroupsv2 теперь доступен для управления ресурсами. v2 предлагает несколько увлекательных возможностей для развития: во-первых, унифицированная иерархия контроллеров позволяет дедупликацию точек монтирования. Если вы используете ApisCP с более чем 800 учетными записями, вы заметили замедление добавления сайтов при включении принудительного использования ресурсов (cgroup, enabled = 1). Для каждого сайта требуется минимум 4 монтирования cgroup. 800 x 4 = 3200 дополнительных точек монтирования. Это игнорирует поддержку freezer или net_cls cgroups, которые позволяют надежно переводить сайт на отдельное хранилище или подсчитывать сетевой трафик из учетной записи. Унифицированная иерархия позволяет ApisCP складывать в стек все контроллеры cgroup, не препятствуя перечислению точек монтирования в / proc / mounts.

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

Cockpit доступен как вспомогательная служба управления для просмотра системных журналов и управления службами. Чтобы включить, запустите yum install -y cockpit; systemctl enable --now cockpit.socket, затем перейдите по адресу https: // : 9090, войдя в систему с паролем root. Для стандартов шифрования и лучшей защиты с помощью Evasive рекомендуется разместить это позади Apache с помощью ProxyPass.


Миграция
Используйте встроенное средство миграции в ApisCP, чтобы переместить ваши сайты со старого сервера CentOS 7 на новый CentOS 8. После переноса всех ваших сайтов скопируйте лицензию со старого сервера, и все готово. Если оба сервера используют одну и ту же конфигурацию DNS, после миграции автоматически обновляется DNS.

Вы можете использовать комбинацию admin: collect () + JSON + jq для автоматизации всего процесса для активных сайтов.
yum install -y json
cpcmd -o json admin:collect '[]' '[active:true]' | jq -r 'keys[]' | while read -r SITE ; do 
	echo "Migrating $SITE"
	apnscp_php /usr/local/apnscp/bin/scripts/transfersite.php -s new.server.name $SITE
done


Однако не все идеально, есть несколько мелких проблем, которые, надеюсь, улучшатся по мере взросления 8:
  • пост-транзакционных действий не существует с dnf, выпущенным для RHEL8. Обратное портирование с FC32 на RHEL8 требует некоторых настроек, поскольку dnf API немного отличается. Мы будем работать над внедрением этого в ApisCP. До тех пор периодические обновления dnf не будут автоматически реплицироваться в шаблон файловой системы, как в CentOS / RHEL7. Вы можете сделать это вручную, используя scripts / yum-post.php resync --force. Миграция будет поставляться с выпуском для автоматического выполнения этой задачи после ее реализации.
  • TimescaleDB в PostgreSQL 12 пока недоступен.
  • Несколько пакетов -devel отсутствуют в исходной версии; однако это не вызывает проблем со сборкой и может встречаться только в экзотических сторонних конфигурациях (libuv, libpsl, libdb4).

Стоит также отметить, что нет заметного улучшения времени сборки между CentOS 7 (python2) и CentOS 8 (python3), несмотря на несколько дополнительных задач. Оба завершаются за ~ 40 минут на хорошем сервере. Фактически, в большинстве ситуаций CentOS 8 требовалось немного больше (5 ± 3 минут) для сборки поверх CentOS 7.

apnscp 3.1 released



apnscp (a/k/a «ApisCP») 3.1 был выпущен!
  • Кодовое название «Бизнес как обычно»
  • 3.1 смещает акцент с широкого внедрения на инновации.
  • Этот выпуск охватывает несколько отложенных элементов, которые были предназначены в 3.1, но требовали значительного наращивания других областей для удовлетворительной реализации.

Модернизация
apnscp будет обновляться как часть обычных ночных обновлений (см. UPGRADING.md). Обновление вручную может быть инициировано через upcp. upcp всегда будет придерживаться вашей политики обновления, поэтому убедитесь, что политика установлена на пограничный, основной или все. cpcmd config: get apnscp.update-policy подтвердит политику, а cpcmd config: set apnscp.update-policy major установит политику обновления по умолчанию, включающую все исправления и незначительные обновления.

PHP-FPM
PHP-FPM реализован в виде службы с активированным сокетом в systemd. Активация через сокет порождает рабочий пул только при активности страницы, что уменьшает проблему стада Thundering в массовых развертываниях. PHP-FPM был полностью протестирован на более чем 500 учетных платформах с минимальным влиянием сервиса на запуск.

Эта реализация использует превосходное отслеживание зависимостей systemd для запуска только после того, как MySQL и PostgreSQL еще больше расширяют возможности запуска обоих серверов баз данных. После активации рабочий PHP-FPM привязывается к соответствующей учетной записи либо как непривилегированный системный пользователь, либо — как пользователь cPanel — пользователь учетной записи; однако эта практика крайне не рекомендуется. Документация описана в PHP-FPM.md.

TimescaleDB
Массивная агрегация данных временных рядов представляет собой серьезную проблему, поскольку платформы с возрастом накапливают больше данных. Данные о пропускной способности связываются каждые 3 минуты (управляется через [bandwidth] => resolution в config.ini). За 12 месяцев с более чем 500 сайтами количество записей увеличилось до 87,6 миллионов записей; много, чтобы подвести итог, глядя на исторические записи. Хуже того, поиск записей становится дорогим с простыми алгоритмами. Например, среднее время выполнения для извлечения записи требует 27 шагов (большой O log2). Мы можем добиться большего, разделив данные на окна. Зная, что пропускная способность циклически меняется каждый месяц, данные можно разделить на более мелкие порции, 30,3-дневных 7,3 млн. Записей на сегмент, что ограничивает количество поисковых запросов на 15%. Эти куски объединены в одну виртуальную таблицу, называемую гипертаблицей, что обеспечивает прозрачный механизм хранения данных временных рядов.



Улучшенная производительность поиска — не лучшая функция, а непрерывные агрегаты («cagg»)! Cagg работает в фоновом режиме, автоматически, чтобы суммировать данные из отдельных точек данных. Возвращаясь к примеру с пропускной способностью, если мы знаем, что обновления пропускной способности каждые 5 минут, TimescaleDB пересчитывает общее количество, сохраняя в кеше, каждые 5 минут в пересмотренные итоги.

Поиски пропускной способности летают сейчас! До Caggs предыдущий запрос на превышение пропускной способности выполнялся более 20 секунд; теперь он завершается за 1/100 времени, 200 мс.

Как часть 3.1, TimescaleDB будет предоставлять отчеты в реальном времени об использовании ресурсов учетной записи через cgroups, позволяя панели быстро аннулировать доступ на сайтах, которые превышают свои 24-часовые квоты (или 30-дневные). Windows гибки, а расширения просты в использовании. Например, чтобы получить пропускную способность, используемую вчера всеми доменами, в 5-минутных разрешениях, заполняя пропуски в данных:
SELECT
	site_id,
	TIME_BUCKET_GAPFILL('5 minutes', ts) AS bucket, 
	SUM(in_bytes+out_bytes) AS sum 
FROM 
	bandwidth_log 
WHERE 
	ts >= NOW() - INTERVAL '1 day' AND ts < NOW() 
GROUP BY site_id, bucket 
ORDER BY site_id, bucket;


Пределы пропускной способности
После реализации временной шкалы принудительное использование полосы пропускания активно в 3.1. Пороги могут быть настроены в config.ini в пределах [пропускной способности], которые управляют порогами уведомлений и приостановки. При желании можно пропускать пропускную способность, используя API-метод bandwidth: amnesty для администратора устройства:
# Bandwidth is now forgiven for the domain, which ends on the bandwidth cycle day
cpcmd bandwidth:amnesty domain.com


ACME v2
apnscp теперь поддерживает протокол Let's Encrypt ACME v2. После обновления до apnscp 3.1, автоматическая миграция обновит все сертификаты v1, который начинается с заката 1 ноября. Теперь поддерживаются подстановочные сертификаты. При условии, что apnscp имеет контроль над DNS для домена (см. DNS.md), эта попытка вызова предпочтительна для расширения теоретически максимального количества защищенных SSL доменов до 50 (подстановочный знак + базовый домен, ограничение 100 имен хостов в SNI). Выпуск Let's Encrypt описан в SSL.md.

импорт cPanel / apnscp
Восстановление из резервных копий cPanel и apnscp теперь поддерживается в apnscp. Восстановление cPanel охватывает все аспекты, кроме резервного копирования PostgreSQL. Поддержка восстановления apnscp находится в предварительном просмотре и будет доработана в 3.1. Резервные копии всегда настоятельно рекомендуется. Раскрываемое решение с Bacula существует как дополнение для apnscp. См. Migrations.md для получения дополнительной информации.

Bootstrapper addin средство
Надстройки — это выпадающие пакеты, которые существенно меняют платформу. Как и в случае с Bootstrapper, любой пакет, который изменяет состояние системы, должен делать это с использованием Ansible, чтобы обеспечить долговечность платформы. Выпуск сценария оболочки с набором ошибочных команд sed (которые даже не удосуживаются установить -euo pipefail!) Начался в 1996 году. Запуск пары команд, которые автоматизируют изменения и изменяют только то, что нужно изменить, плюс дают вам Дайджест этих изменений, это сейчас.

Делегированный белый список
Rampart обеспечивает обобщенную защиту для всех аспектов платформы: MySQL, IMAP, POP3, SMTP, SSH, доступа к панели, HTTP и так далее. Любой доступный сервис защищен от атак грубой силы со стороны Rampart, что приводит к некоторым интересным сценариям с бизнесом SOHO. Делегированный белый список позволяет администраторам учетных записей объявлять до n адресов IPv4 / IPv6, защищенных от перебора.

Когда адрес находится в делегированном белом списке («Учетная запись»> «Белый список»), адрес не застрахован от блоков перебора. Пользователю, который входит в панель с заблокированным IP-адресом, все еще отображается всплывающее окно, объясняющее службу, которая активировала блок.

Подчиненные домены единого входа
Благодаря сокращению разрыва между реселлером и типичными учетными записями хостинга, apnscp теперь поддерживает вход в дочерние домены со стороны родителя. Для первого домена установите параметр оплаты услуг, invoice = IDENTIFIER. Для каждого дочернего домена, связанного с этим доменом, установите выставление счетов, parent_invoice = IDENTIFIER. Дочерние домены не могут входить в родительский домен, если они не были переданы родителем и только в рамках сеанса, из которого произошел переход родителя.


Переход домена является простым процессом в раскрывающемся списке пользовательских карт. Если ни один из известных доменов не находится на том же сервере, что и родительский, домен отображается нормально.



IMAP / POP3 / SMTP SNI
IMAP, POP3 и SMTP теперь поддерживают SNI через неявный SSL. Любой сертификат SSL, установленный для учетной записи, также доступен для использования с электронной почтой. Обратите внимание, что явный (оппортунистический SSL через «STARTTLS») не поддерживает SNI. IMAPS (993), POP3S (995) и SMTPS (465) теперь используют SNI через haproxy в качестве ограничителя SSL. Дальнейшая работа будет посвящена использованию haproxy для прекращения HTTPS-трафика, а также к значительному упрощению стека HTTP, предоставлению облегченного приемника DoS и обеспечению нулевого времени простоя при повторном запуске всех изменений SSL-сертификатов. haproxy может быть включен (или отключен) с помощью cp.bootstrapper Scope.

Поддержка IPv6
Поддержка IPv6 здесь! Все компоненты покрыты (через PR # 1).

NAT + шпилька проверяет сеть
Теперь apnscp определяет, находится ли ваша машина на частном IP-адресе, и настраивается соответствующим образом. Кроме того, закрепление также обнаруживается при выполнении проверок доступности со ссылками до выдачи SSL.

Поддержка PowerDNS
В качестве вклада от Lithium Hosting, apnscp теперь включает поддержку PowerDNS. При миграции с сервера cPanel, который уже использует PowerDNS, apnscp будет работать совместно с кластером DNS для изменения DNS.

Совместимость с WHMCS
Внесены некоторые изменения для улучшения совместимости с отслеживанием учетных записей в WHMCS, включая отдельный модуль WHMCS, предоставляемый Lithium Hosting. Запретить изменение имени пользователя через [auth] => allow_username_change. Пользователи больше не могут менять свое имя пользователя, что позволяет WHMCS работать правильно.

cpcmd yaml / json output
Теперь cpcmd поддерживает различные выходные спецификаторы, включая Yaml и JSON

Регулирование ресурсов ввода-вывода +
Чтобы установить скорость записи 2 МБ / с для всех задач PHP-FPM, используйте blkio, writebw или throttle IOPS используйте эквивалент «iops», blkio, writeiops

Черные списки веб-приложений
Запретить веб-приложения для вашего сайта через [webapps] => черный список.

IP-доступ ограничен
Доступ к панели может быть ограничен IP-адресом или диапазоном IP-адресов с помощью настроек авторизации iprestrict. Значение по умолчанию наследуется от [auth] => ip_restriction_limit в config.ini. Списки доступа могут быть настроены через Аккаунт> Настройки> Безопасность на панели. Установите 0, чтобы отключить этот сервер, кроме администратора устройства. Учетные записи, которые SSO (функция «Войти как») не соблюдают IP-ограничения.

Переименование функций
Области теперь доступны через модуль области видимости. В 3.0 Scopes находился в запутанном модуле «config». Пространство имен области действия apnscp также было сокращено до «cp».

FLARE сервис
FLARE — это маяковый сервис, созданный для рассылки нескольких обновлений в один и тот же день в ответ на угрозы нулевого дня. Все серверы 3.1 участвуют в FLARE. Сигнал FLARE вызывает upcp, который учитывает политику обновления сервера.

Это основные функции для 3.1. Теперь на 3.2 и выше! Спасибо всем за ваш отзыв. Обратная связь — это то, что делает продукт великолепным, поэтому прыгните на наш сервер Discord, если вы еще этого не сделали.

Changelog
hq.apnscp.com/apnscp-3-1-released/

apnscp.com

apnscp 3.0 released



Выпущена версия apnscp v3.0, спонсируемая проектом creep. Это первый публичный релиз после 16 лет разработки. Были реализованы все основные этапы, в том числе экспериментальный предварительный просмотр rspamd, значительно улучшенного механизма фильтрации спама, который будет поддерживать подписывание DKIM / ARC, а также ограничение исходящей почты в будущих выпусках apnscp.

Это объявление о новой миграции было отправлено с этим объявлением, которое автоматически меняет политику обновления apnscp с пограничного уровня на основной, который будет проверять и развертывать обновления до основной версии. 3.0.0 -> 3.0.1 и 3.0.1 -> 3.1.0 будут обрабатываться автоматически. 3.1.0 до 4.0.0 будут заблокированы. Установите apnscp_update_policy в край, чтобы продолжать получать последний ночной код. apnscp.update-policy — это команда быстрого доступа к этому параметру Bootstrapper. Если вы несколько обновлений, сделайте это после обновления панели.
upcp -b
cpcmd config_set apnscp.update-policy edge


Новые пробные лицензии будут действительны в течение 60 дней в течение 15-дневного переходного льготного периода, после чего новые лицензии будут выдаваться с 30-дневным пробным периодом. Все истекающие лицензии должны быть преобразованы в платную лицензию на портале пользователя my.apnscp.com (Настройки> Лицензии). Конверсионный центр будет открыт не позднее 15 февраля. Вы можете обратиться ко мне напрямую по адресу matt@apisnetworks.com для преобразования лицензии до этого момента.

Лицензии на использование apnscp продаются за 129 долларов США в честь этого выпуска. Обычная розничная цена в последующем составит 249 долл. США на всю жизнь или 10 долл. США в месяц при оплате по мере использования. Зайдите в клиентскую зону my.apnscp.com, чтобы начать.
my.apnscp.com

Для существующих установок apnscp будет обновляться автоматически в течение ночи, если включен apnscp_nightly_update (по умолчанию: да). Если вы отключили автоматическое обновление или у вас много версий, обновите apnscp вручную с помощью:
upcp -b


Важные изменения
  • Поддержка rspamd + SRS. SRS преобразовывает конверт пересылаемой электронной почты в соответствие с сервером пересылки. Устраняет проблемы DKIM / SPF с переадресованными сообщениями
  • Поддержка сканирования на вирусы в Web> Веб-приложения, когда установлен параметр clamav_enabled
  • upcp поддерживает запущенные компоненты, например upcp -b mail / rspamd
  • область конфигурации mod_evasive, cpcmd config_get apache.evasive
  • Функция автоматического обучения путем перетаскивания почты в папку «Спам».
  • Argos поддерживает несколько новых бэкэндов, включая Slack
  • Поддержка переопределения загрузчика (/root/apnscp-vars-runtime.yml), cpcmd config_get apnscp.bootstrapper
  • Липкие работники — apnscpd будет повторно использовать горячий сеанс, если это возможно, чтобы устранить издержки при повторной инициализации

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

rspamd
rspamd — самое большое изменение по сравнению с бета-версией. SpamAssassin был предпочтительным методом фильтрации, который с достаточным количеством выборок и глобальной базой данных Байеса работает достаточно хорошо, но фильтрация медленная, интеграция ограничена, и его алгоритм потерял мозги. rspamd использует марковское моделирование для адаптивной фильтрации спама в асинхронном цикле событий. rspamd мягче в памяти, быстрее (в 20-30 раз быстрее), и лучшая его часть: еще лучше. Фильтры почты — это почтовые фильтры, которые напрямую взаимодействуют с MTA, в данном случае с Postfix, и служат привратником для почты как входящей, так и исходящей. rspamd может принимать, отклонять, временно отклонять и изменять заголовки почты во время соединения, а не после того, как сообщение было принято для обработки, тем самым рационализируя драгоценные циклы ЦП.

rspamd — это будущее apnscp. Сейчас он выпущен для раннего тестирования, чтобы начать долгий путь интеграции, который в конечном итоге обеспечит фильтрацию входящего спама в дополнение к ограничению исходящей скорости, фильтрации и подписи DKIM / ARC, чтобы гарантировать, что почта, которая покидает сервер apnscp, является наиболее авторитетной из возможных.

Поддержка загрузчика cpcmd
cpcmd поддерживает переопределения Bootstrapper. Переопределения записываются в /root/apnscp-vars-runtime.yml и могут использоваться для замены любой переменной по умолчанию в любом компоненте Bootstrapper. apnscp автоматически выводит и конвертирует типы.

Почтовое обучение
apnscp теперь поставляется с поддержкой sieve для почтовых ящиков IMAP. Перетащите почту в папку «Спам» и из нее, чтобы настроить сообщения как спам / ветчина соответственно. По умолчанию почта, отправляемая в папку «Спам», автоматически распознается как спам, но это поведение можно быстро изменить, чтобы отслеживать папку «Корзина»

Проверка на вирусы

При включенном ClamAV apnscp будет проверять веб-приложение на наличие подозрительных файлов. По умолчанию он отключен, если has_low_memory включен.

В трубопроводе
Теперь, когда 3.0 выпущен, пришло время ответить на запросы функций, которые будут реализованы в 3.1. Это включает в себя поддержку меток ownCloud, TimescaleDB, PHP-FPM (когда для сайта настроен apache, jail = 1), SNI Dovecot / Postfix через haproxy и блокировку хранилища. Они будут постепенно разворачиваться как часть основной ветки, поэтому, если вы хотите продолжать получать технологию по мере ее выпуска, установите для своей политики обновления значение «edge»

Changelog
hq.apnscp.com/content/images/2019/01/virus-scan-feature.png

apnscp.com