Солидарност с Украйна. Услугата се предлага безплатно на украински компании за времето на войната. Поискайте безплатен достъп
01 / Внедряване · Самостоятелно хостване

Самостоятелно хостване ARDNTECH
свободно, пълно, документирано.

ARDNTECH се доставя под единствен изходен код AGPL-3.0, изпълним както на инфраструктурата на ARDNTECH, така и на вашата. Режимът self-host покрива целостта на функционалностите Team, Business и Enterprise без ограничение : гранулиран RBAC, SCIM 2.0, SSO SAML 2.0 и OIDC, дългосрочен одит лог. Вие оперирате вашата инстанция на датацентъра по ваш избор, в Docker Compose, в управляван Kubernetes при оператор, квалифициран SecNumCloud, или в строго air-gap внедряване.

AGPL-3.0 Docker Compose Kubernetes Поддържан air-gap Никаква изходяща телеметрия
02 / Мотивации

Защо да хостваме самостоятелно мениджър на пароли ?

Четири различни мотивации водят организация да оперира сама своето B2B хранилище, вместо да се абонира за SaaS Cloud ARDNTECH. Всички остават съвместими с последващо превключване в случай на еволюция на вътрешните ограничения.

Радикален контрол на данните

Възможен air-gap, строга мрежова изолация, вътрешен DMZ, пълно отсъствие на изходяща телеметрия. Криптираните данни никога не напускат периметъра, който вие определяте. Никоя трета страна не може да изиска достъп до вашата инстанция.

Улеснено секторно съответствие

Внедряване при хостинг доставчик, вече квалифициран SecNumCloud, HDS или с изискванията NIS2 и OIV. Приложният слой остава идентичен, съответствието на хостинга се носи от инфраструктурата по ваш избор.

Проверим код AGPL-3.0

Публичното хранилище покрива целия код на приложението, до криптографските примитиви. OpenPGP.js v6, Argon2id, AES-256-GCM SEIPDv2, HMAC-SHA-256 : всеки избор на алгоритъм е четим и подлежи на одит.

Нулева софтуерна цена

Лицензът AGPL-3.0 е безплатен. Плащате само инфраструктурата (compute, storage, bandwidth) и вътрешното време за операции. За структурите, чийто ops екип вече е оразмерен, TCO става конкурентен още от няколко десетки активни места.

03 / Сравнение

Self-host срещу SaaS Cloud ARDNTECH.

Никаква софтуерна функционалност не е запазена за режима Cloud. Това, което се различава, е кой експлоатира инфраструктурата и кой носи договорните гаранции. Таблицата по-долу обобщава петнадесетте измерения, които структурират решението.

Измерение Self-host SaaS Cloud ARDNTECH
Изходен код AGPL-3.0, пълен достъп, разрешен fork AGPL-3.0, пълен достъп, разрешен fork
Софтуерна цена 0 € 0 € до 7 €/място/месец според плана
Хостинг Клиент (собствена инфра, IaaS по негов избор, специализиран датацентър) ARDNTECH (суверенен европейски хостинг доставчик)
Първоначален setup За сметка на клиента (Docker Compose или Kubernetes) Включен, автоматизиран (provisioning за няколко минути)
Поддръжка на OS и runtime За сметка на клиента Включена
Резервни копия За сметка на клиента (документирана процедура) Включени, ежедневни криптирани snapshots
Актуализации За сметка на клиента (тагнат Docker образ, предоставен план за upgrade) Включени, обявен прозорец за поддръжка
SLA достъпност Никакъв (клиентът оперира своята инфра) Best effort (Free), 99,5 % (Business), договорен (Enterprise)
Поддръжка От общността (форум, GitHub issues) От общността + имейл след 1 работен ден (Business) + телефон (Enterprise)
Мулти-организация Да (опорен акаунт, гранулиран RBAC) Да (опорен акаунт, гранулиран RBAC)
DPA Неприложимо (клиентът е администратор на обработката) Стандартизиран DPA (Business) или договорен (Enterprise)
Съответствие За сметка на клиента Квалифициран хостинг доставчик, набелязана траектория SecNumCloud
Типична цел Кабинети по киберсигурност със зрели ops, OIV, организации, които вече имат оразмерен ops екип Микро, малки, средни предприятия, кабинети без специализиран ops екип, структури, предпочитащи да платят, за да не оперират
Обща цена на притежание Променлива : 0 € лиценз + вътрешно време + инфра Предвидима : абонамент на място, всичко включено
Air-gap Поддържано (никаква изходяща телеметрия по подразбиране) Неприложимо (инстанция, оперирана от ARDNTECH)

Прочит на таблицата. За екип под петдесет активни места без специализиран ops екип SaaS Cloud често е рационалният избор. Над това, или ако инфра суверенитетът е регулаторно или договорно изискване, self-host става уместен. Двете миграции са предвидени и документирани.

04 / Предварителни изисквания

Технически предварителни изисквания.

Само три предварителни изисквания, всичките стандартни в съвременна сървърна среда. Никаква задължителна трета страна услуга при изпълнение, никакъв нестандартен изходящ порт, никакъв собственически протокол.

Linux сървър и container runtime

Linux x86_64 или ARM64 сървър с Docker 24 или по-висок и Docker Compose v2. Debian, Ubuntu LTS, Red Hat Enterprise Linux и техните производни се тестват непрекъснато. Container runtime-ът работи както на специализирана виртуална машина, така и на управляван Kubernetes.

Оразмеряване

2 vCPU и 4 GB RAM са достатъчни за петдесет активни потребители. За петстотин потребители предвидете 8 vCPU и 16 GB RAM. Хранилището зависи от броя тайни : пресметнете около 100 MB база на хиляда тайни, плюс задържането на одит логовете според вашия план.

Име на домейн и TLS сертификат

Име на домейн и валиден TLS сертификат. Let's Encrypt е документиран и работи без специфична конфигурация. Никакъв нестандартен изходящ порт не се изисква. Air-gap внедряване е възможно без промяна на кода на приложението : инстанцията не заявява никаква външна услуга при runtime.

05 / Инсталация

Инсталация за пет минути.

Три поддържани варианта на внедряване, от POC на независим кабинет до multi-AZ продукция на оператор от съществено значение. Същият код, три оркестрации.

Вариант 1 - Docker Compose

Препоръчан за POC, малки екипи и среди за разработка. Една машина, локална персистенция или мрежов volume, внедряване с една команда.

git clone https://github.com/aegirex/aegirex.git
cd aegirex
make install
# генерира тайните, build-ва образа от Dockerfile на repo-то,
# прилага миграциите и стартира всички услуги.
# Инстанцията е достъпна на http://localhost:8280

Build от източника по подразбиране. Това, което работи в продукция, е точно това, което се намира в git log : без registry черна кутия, без зависимост от трета страна Docker Hub акаунт. Файловете composer.lock и importmap.lock фиксират версиите и SHA отпечатъците на зависимостите ; компрометиран Packagist или CDN би счупил build-а, вместо тихо да въведе payload. За забързаните ops, вариант make install-from-registry издърпва предварително build-натия образ, подписан от нашия CI.

Вариант 2 - Kubernetes

Препоръчан в продукция, на управляван или self-managed клъстер. Предоставени официални манифести и Helm chart. Съвместим с Kubernetes клъстерите на операторите, квалифицирани SecNumCloud (OVHcloud, Outscale, Cloud Temple, NumSpot).

helm repo add aegirex https://charts.aegirex.eu
helm repo update
helm install aegirex aegirex/aegirex \
  --namespace aegirex --create-namespace \
  --values values.production.yaml
kubectl -n aegirex rollout status deployment/aegirex-app
kubectl -n aegirex exec deploy/aegirex-app -- bin/console doctrine:migrations:migrate

Вариант 3 - Air-gap

Препоръчан за среди с радикален суверенитет : OIV, отбрана, класифицирани изследвания. Никаква изходяща връзка, ръчни резервни копия, актуализации чрез вътрешен огледален регистър.

# на свързана работна станция
docker pull ghcr.io/aegirex/aegirex:v1.4.2
docker save ghcr.io/aegirex/aegirex:v1.4.2 -o aegirex-v1.4.2.tar
# физически трансфер към air-gap мрежата (запечатан USB, мрежов диод)
# на air-gap инстанция
docker load -i aegirex-v1.4.2.tar
docker tag ghcr.io/aegirex/aegirex:v1.4.2 registry.internal/aegirex:v1.4.2
docker compose -f docker-compose.airgap.yml up -d
bin/console doctrine:migrations:migrate
06 / Архитектура

Техническа архитектура на стека.

Съвременен PHP стек, без SPA, без npm, без runtime зависимост от трета страна услуга. Всеки компонент е документиран и може да се одитира независимо.

Backend

PHP 8.4, Symfony 7.4, Doctrine ORM 3, MariaDB 11. FPM или FrankenPHP по избор. Никакво собственическо PHP разширение. Версионирани Doctrine миграции, тестван rollback.

Frontend

Twig от страна на сървъра + Stimulus от страна на клиента. AssetMapper за доставката (без npm, без трета страна bundler). Модулен custom CSS. Без SPA, без собственически JavaScript framework.

Криптография от страна на клиента

OpenPGP.js v6 с X25519, Ed25519 и AES-256-GCM SEIPDv2. Argon2id деривация на главната парола (RFC 9106, 5 passes, 256 MiB, parallelism 4). Частните ключове никога не напускат браузъра.

HMAC-SHA-256 одит верига

Одит верига, запечатана и криптографски верижена с HMAC-SHA-256. Независима проверка чрез публична CLI команда за контрол на веригата. Откриване на всеки опит за ретроактивно фалшифициране, противопоставимо както на съдия, така и на CISO.

Удостоверяване

Symfony Security + scheb/2fa-bundle : имейл, TOTP (RFC 6238), резервни кодове. SSO SAML 2.0 и OIDC (RFC 6749 и RFC 7519). Passkeys WebAuthn (W3C WebAuthn Level 2) по избор.

Хранилище и опашка

Всичко в MariaDB 11 : релационна схема, blob-ове, ограничени до 1 MB. Не се изисква външно обектно хранилище. Опашка чрез Symfony Messenger + Doctrine транспорт, без Redis зависимост за V1.

07 / Операции

Резервни копия, поддръжка, актуализации.

Три индустриализирани и документирани процедури. Режимът self-host прехвърля оперативната отговорност на клиента, без да я прави бреме : командите могат да се скриптират, идемпотентни са и са тествани в непрекъсната интеграция.

Криптирано резервно копие

CLI команда за резервно копие произвежда криптиран експортируем файл във формат OpenPGP, с автоматична ротация. Получателят на резервното копие е конфигурируем (организационен ключ за архивиране). Възстановяването е документирано и тествано при всяко издание.

Blue-green актуализации без downtime

Docker образ, тагнат в semantic versioning на ghcr.io/aegirex/aegirex. Всички Doctrine миграции са структурирани в три стъпки (ADD nullable, backfill, ALTER NOT NULL), за да позволят blue-green внедряване без прекъсване на услугата дори върху обемни бази. Breaking промените се обявяват поне една минорна версия предварително.

Rollback за по-малко от пет минути

Комбинацията snapshot на базата данни плюс предишен Docker образ позволява връщане назад за по-малко от пет минути. Doctrine миграциите предоставят своя тестван метод down(). Никаква ръчна намеса върху SQL схемата не се изисква.

Устойчив асинхронен worker

Изходящите имейли и одит webhook-овете се диспечват асинхронно чрез Symfony Messenger. Ако външен доставчик падне (имейл, webhook получател), HTTP заявките никога не се блокират : задачите се повтарят с експоненциален backoff, после се съхраняват в персистентна опашка, ако провалът продължи. Worker-ът работи като systemd услуга или специален контейнер, с автоматично рестартиране без загуба.

Health endpoint-ове, готови за LB и Kubernetes

GET /health публично за liveness сондите (load balancer, UptimeRobot, Kubernetes сонди). GET /health/deep, защитен с allowlist на IP адреси, за задълбочените проверки от вашия вътрешен стек за мониторинг (ping на базата данни, кеш, опашка). Никаква чувствителна информация не е изложена.

07bis / Суверенна наблюдаемост

Стек за мониторинг 100 % европейски.

Суверенитетът не спира при хостинг доставчика на приложението. ARDNTECH излъчва своите логове в структуриран JSON формат и излага стандартни Prometheus метрики, за да се интегрира в изцяло европейски или self-hosted стек за наблюдаемост. Никакъв задължителен собственически SDK, никаква изходяща телеметрия по подразбиране.

Суверенно проследяване на грешки

Съвместим с Bugsink (Нидерландия, MIT, self-hostable на вашата SecNumCloud инстанция), GlitchTip (US, MIT, self-hostable) или Sentry self-host. Стандартният Sentry SDK на Symfony е съвместим с тези три backend-а без промяна на кода. Вашите грешки никога не напускат вашата инфраструктура.

Логове и метрики, управлявани във Франция

JSON логове, които могат да се поглъщат от Loki + Grafana self-hosted, OVHcloud Logs Data Platform (управляван Graylog, Франция) или Scaleway Cockpit (управлявани Loki, Mimir, Tempo, Франция). Prometheus метрики, които могат да се излагат на специален endpoint, ограничен чрез allowlist на IP адреси.

Ежедневна проверка на интегритета

Публична CLI команда позволява да се провери интегритета на HMAC-SHA-256 одит веригата. Може да се планира в ежедневен cron, тя задейства аларма (PagerDuty, вътрешен webhook, суверенен Slack), ако веригата е повредена. Всяка ретроактивна промяна на журнала се открива за O(1), без да зависи от външен binary.

Локална IP геолокация (суверенна ЕС)

Имейлите « Открита нова връзка » се обогатяват със страната и града благодарение на базата DB-IP Lite (белгийски издател, лиценз CC-BY 4.0), резолвирана локално на вашата инстанция : потребителският IP адрес никога не се предава на трета страна услуга. Базата се опреснява автоматично всеки месец чрез cron.

08 / Съответствие

Секторно съответствие улеснено.

Режимът self-host ви позволява да издигнете съответствието до нивото на хостинг доставчика, който сте избрали. Четири често срещани режима са документирани по-долу, без да ангажират ARDNTECH извън кода на приложението под AGPL-3.0.

SecNumCloud

Може да се внедри при OVHcloud Hosted Private Cloud, Outscale 3DS, Cloud Temple или NumSpot, оператори, квалифицирани от ANSSI. Траекторията SecNumCloud остава набелязана цел за SaaS Cloud ARDNTECH ; в self-host ефективната квалификация зависи от вашия хостинг доставчик.

HDS · здравеопазване

Може да се внедри при сертифициран HDS хостинг доставчик за здравните оператори. Кодът на приложението се вписва в HDS веригата от край до край, доколкото подлежащата инфраструктура е квалифицирана. Дългосрочният одит лог е наличен нативно.

OIV и NIS2

Поддържано air-gap внедряване. Код AGPL-3.0, който може да се одитира от вашия CISO, до криптографските примитиви. HMAC-SHA-256 одит веригата произвежда проследимост, противопоставима на секторните контролни органи.

GDPR

В режим self-host оставате единствен администратор на обработката. Никакъв подизпълнител ARDNTECH не се намесва в пътя на данните. ARDNTECH никога не е обработващ данни по смисъла на GDPR : отношението се ограничава до предоставянето на изходния код AGPL-3.0.

09 / Цели

Типични случаи на употреба.

Три профила организации често избират режима self-host. Общото : вече оразмерен Linux ops екип, способен да оперира Symfony услуга с релационна база в продукция.

Профил 1

Кабинети по киберсигурност със зрели операции

ESN сигурност, консултантски кабинети по киберсигурност, вътрешни pentest екипи. Те вече оперират закалена ИС, разполагат със senior ops екип и искат да прилагат вътрешно критериите, които одитират при своите клиенти. Self-host им позволява да докажат съгласуваността между речта и инструментариума.

Профил 2

Публичен сектор с радикален суверенитет

Общини, агенции, оператори от съществено значение по смисъла на NIS2, организации под надзор. Вътрешна политика на отказ на всеки SaaS, дори френски квалифициран. Self-host гарантира, че криптираните данни и тяхната одит верига остават строго в желания административен периметър.

Профил 3

ESN интегратори и управлявани реселъри

ESN, които препродават на собствените си клиенти инстанция ARDNTECH, управлявана от тях. Режимът self-host става компонент на тяхната търговска оферта : те оперират платформата, фактурират на своите клиенти и запазват отношението. Лицензът AGPL-3.0 изрично разрешава тази търговска употреба.

10 / Техническа FAQ

Чести въпроси на ops екипите.

Осем повтарящи се въпроса, задавани от CISO и DevOps екипите при оценката на режима self-host. Ако вашият липсва, пишете ни.

Наистина ли кодът е идентичен между Self-host и Cloud ?

Да. Хранилището aegirex/aegirex съдържа целия код на приложението под AGPL-3.0. Никаква функционалност Team, Business или Enterprise не е запазена за режима Cloud. Единствените разлики се дължат на runtime конфигурацията (променливи на средата, ANSSI-track тайни, параметри на хостинг доставчика) и на свързването на Cloud инстанцията с инфраструктурата за надзор и фактуриране, оперирана от ARDNTECH. Никакъв собственически софтуерен модул не се добавя от страна на Cloud.

Как да мигрирам моя self-host към SaaS Cloud (и обратно) ?

Миграцията се опира на пълния експорт на хранилището чрез вградените инструменти (JSON експорт, дешифриран от страна на потребителя, в съответствие с членове 17 и 20 от GDPR) и импорта в нова целева организация. Миграцията не запазва одит историята в текущото ѝ състояние : одит веригата рестартира на датата на импорта, изходният журнал се запазва в архив, който може да се изтегли. Ротацията на HMAC одит ключовете от страна на целевата инстанция стартира нова верига. Тъй като кодът е идентичен, съвместимостта на схемата е гарантирана.

Каква е типичната обща годишна цена на self-host (инфра + ops) ?

Софтуерният лиценз AGPL-3.0 е безплатен. За кабинет от тридесет души с три вътрешни Linux сървъра пресметнете типично 50 до 150 € на месец за суверенен хостинг доставчик за compute и storage, плюс 500 до 2 000 € на месец маргинална оперативна цена (0,1 до 0,3 ETP за актуализации, резервни копия и надзор). Self-host става икономически интересен при числености, при които маргиналната ops цена става пренебрежима и при които ops екипът вече е оразмерен. Под петдесет активни места Cloud много често е рационалният избор, освен при строго изискване за суверенитет на инфраструктурата.

Как да интегрирам SSO LDAP, Keycloak или Authentik ?

Bundle-ът Symfony Security излага SAML 2.0 и OpenID Connect. Конфигурацията се извършва чрез променливи на средата, без рекомпилиране. OIDC конектор, валиден за Keycloak, Authentik или всеки доставчик, съответстващ на RFC 6749 и RFC 7519. За LDAP директният binding е документиран с mapping на групите към RBAC ролите. SCIM 2.0 (RFC 7644) е наличен в Business за автоматизиран provisioning.

Работи ли ARDNTECH в управляван Kubernetes (EKS, GKE, AKS, Kapsule) ?

Да, Kubernetes внедряването е документирано за стандартните дистрибуции. Манифестите включват необходимите Deployment, Service, Ingress, PersistentVolumeClaim и ConfigMap. Официален Helm chart е предоставен със стойности по подразбиране, адаптирани към управляваните клъстери. За суверенитета на данните се препоръчва използването на управляван Kubernetes при оператор, квалифициран SecNumCloud (OVHcloud, Outscale, Cloud Temple, NumSpot) ; извъневропейските управлявани клъстери остават технически съвместими, но излизат от рамката на суверенните препоръки.

Какъв мониторинг се препоръчва (Prometheus, OpenTelemetry, ELK) ?

Инстанцията излага метрики, съвместими с Prometheus на специален endpoint, и излъчва OpenTelemetry трасета върху критичните заявки. Логовете на приложението се излъчват в структуриран JSON формат, който може директно да се поглъща от ELK, Loki или всеки стандартен Syslog колектор. Одит събитията могат да се експортират във форматите CEF, LEEF и OCSF за SIEM Splunk, Elastic, QRadar и Microsoft Sentinel. Никаква телеметрия не се изпраща към трета страна услуга по подразбиране.

Какъв е планът за поддръжка от общността срещу платена ?

Поддръжката от общността минава през публичния форум и GitHub issues : без ангажимент за срок, водена от контрибуторите и екипа на ARDNTECH. Платено придружаване е налично за организациите, желаещи одитирано внедряване, сложна SSO интеграция, изграждане на високодостъпен клъстер или преглед на архитектурата преди пускане в продукция. Никакъв SLA не е прикрепен към режима self-host : по конструкция клиентът оперира инфраструктурата.

Как да премина към air-gap след стандартна инсталация ?

Air-gap се състои в премахването на всяка изходяща свързаност на инстанцията ARDNTECH. Предварителните изисквания са : вътрешен огледален Docker регистър за актуализациите на образите, огледално хранилище на пакети за OS зависимостите, ръчен канал за експорт и импорт на криптираните резервни копия. Тъй като никаква телеметрия не се излъчва по подразбиране, самото приложение няма никаква runtime зависимост от външна услуга. Изходящите webhook-ове могат да се деактивират чрез конфигурация или да се маршрутизират към вътрешен релей. Пълната процедура е документирана в air-gap ръководството на хранилището.

11 / За да отидете по-далеч

Режимът self-host се вписва в продуктова архитектура, съгласувана с другите референтни страници на сайта. Ресурсите по-долу описват подробно всеки определен аспект.

12 / Старт

Self-host ARDNTECH,
вашата инфраструктура, вашият периметър.

Прочетете пълната техническа документация в GitHub или заявете одитирано придружаване за внедряване в продукция. Без агресивен търговски натиск : технически разговор за уместността на решението във вашия контекст.

Код AGPL-3.0, пълен достъп, разрешен fork
Docker Compose за по-малко от пет минути
Управляван Kubernetes при оператор, квалифициран SecNumCloud
Поддържан air-gap, никаква изходяща телеметрия
HMAC-SHA-256 одит верига, проверима независимо