Zabezpečení
Přihlašovací údaje, HTTPS, přihlášení a síťová expozice instalace PentAGI.
Změna výchozích nastavení
Čerstvá instalace vytvoří místního administrátora [email protected] s heslem admin, které je nutné změnit při prvním přihlášení. Pokud heslo zapomenete, údržbové menu instalátoru jej obnoví, pokud účet stále používá adresu [email protected].
Tyto hodnoty nastavte v .env před prvním spuštěním; instalátor pro vás vygeneruje sůl a hesla. PostgreSQL a Neo4j přijímají své přihlašovací údaje pouze při vytváření svých datových svazků, takže jejich pozdější změna přeruší připojení:
| Proměnná | Účel |
|---|---|
COOKIE_ | Podepisuje relační cookies a API tokeny — nastavte náhodnou hodnotu |
PENTAGI_, PENTAGI_ | Přihlašovací údaje k PostgreSQL |
NEO4J_ | Heslo k Neo4j pro knowledge graphknowledge graph — znalostní grafGraf hostitelů, služeb, zranitelností a přístupů mezi nimi, který PentAGI vytváří během testu, když je tato volitelná funkce povolena. Ukazuje, jak jsou nálezy propojeny.; NEO4J_ musí zůstat neo4j |
PUBLIC_ | URL, kterou uživatelé otevírají, například https:/ |
Na běžící instalaci nejprve změňte heslo k databázi v PostgreSQL nebo Neo4j a poté v .env.
HTTPS
PentAGI poskytuje HTTPS na portu 8443 s certifikátem podepsaným samým sebou. Chcete-li použít vlastní certifikát, nastavte SERVER_ a SERVER_ a připojte soubory do docker-compose.yml.
Uživatelé a přihlášení
Registrační formulář není k dispozici. Administrátoři spravují místní uživatele prostřednictvím Users API (/) z přihlášené relace prohlížeče — API token zde obdrží chybu 403 — a role omezují, co může každý uživatel zobrazit a měnit. Místní uživatelé mění svůj e-mail a heslo v sekci Settings → Account.
Pokud je nakonfigurováno přihlášení přes GitHub nebo Google, přihlášení, jehož e-mail ověřený poskytovatelem odpovídá existujícímu účtu (včetně místních účtů), se přihlásí k tomuto účtu s jeho rolí; jakékoli jiné přihlášení získá nový účet s výchozí uživatelskou rolí. Každá instalace začíná s administrátorem [email protected], takže jej před povolením přihlašování přesuňte na adresu, kterou ovládáte, v části Settings → Account, a povolte jej pouze tam, kde jsou nové účty přijatelné, například u aplikace Google Workspace omezené na vaši doménu.
Přihlášení přes GitHub a Google je dostupné prostřednictvím OAuth. Zaregistrujte aplikaci se zpětným voláním ${PUBLIC_ a přidejte její přihlašovací údaje:
PUBLIC_URL=https://pentagi.example.com
OAUTH_GITHUB_CLIENT_ID=your_github_client_id
OAUTH_GITHUB_CLIENT_SECRET=your_github_client_secretVystavení do sítě
Ve výchozím nastavení naslouchá webové rozhraní PentAGI pouze na 127.0.0.1. Chcete-li k němu přistupovat z jiných počítačů:
PENTAGI_LISTEN_IP=0.0.0.0
PENTAGI_LISTEN_PORT=8443
PUBLIC_URL=https://192.168.1.100:8443
CORS_ORIGINS=https://localhost:8443,https://192.168.1.100:8443V PUBLIC_ a CORS_ použijte skutečnou adresu, nikdy ne 0.0.0.0. Kontejnery znovu vytvořte pomocí docker compose up -d --force-recreate a otevřete port 8443 ve firewallu.
Za reverzní proxy nastavte TRUSTED_ na adresu nebo CIDR proxy, oddělené čárkami. V opačném případě se každý požadavek bude jevit jako pocházející z proxy a limit přihlášení na adresu – 30 neúspěšných pokusů během pěti minut, následovaných 15minutovým uzamčením – budou sdílet všichni uživatelé.
Každý sandboxsandboxIzolovaný kontejner Docker, ve kterém agenti spouštějí své nástroje. Rozhraní jej zobrazuje jako Terminal. kontejner flowflowJeden běh PentAGI: cíl, úkoly vytvořené z vašich zpráv a vše, co agenti během toho provedli. také publikuje dva porty pro out-of-band callbacky, například pro reverse shelly. Tyto porty pocházejí z rozsahu 2000 portů začínajících na DOCKER_ (výchozí 28000) a jsou navázány na DOCKER_, což je adresa, kterou agenti také poskytují cílům pro zpětné volání.
Ve výchozím nastavení je DOCKER_ nastaveno na 0.0.0.0: porty naslouchají na každém rozhraní hostitele Dockeru a agenty si svou veřejnou adresu vyhledávají samy. Nastavte konkrétní adresu pouze v případě, že ji hostitel vlastní a cíle se k ní mohou připojit; za NAT ponechte výchozí hodnotu. Porty, které Docker publikuje, obcházejí pravidla ufw a firewalld na hostiteli, takže omezte rozsah pomocí firewallu před hostitelem, například cloudové bezpečnostní skupiny, nebo pomocí pravidel v řetězci DOCKER-USER aplikace Docker.
PROXY_ směruje volání backendu k poskytovatelům modelů, poskytovateli vektorových reprezentací, rozhraním API pro vyhledávání a kontrole aktualizací prostřednictvím proxy serveru, což pomáhá izolovat instalaci od externích sítí. Samoobslužné koncové body, jako jsou Ollama, vLLM nebo SearXNG, jím procházejí také, protože neexistuje žádná výjimka NO_, takže proxy server musí mít možnost je dosáhnout. Kontejnery sandboxu flow, kde agenti spouštějí své příkazy, scraper, který otevírá webové stránky pro nástroj prohlížeče, a služba Graphiti jej nepoužívají, proto omezte jejich odchozí provoz na úrovni sítě. Přihlašování přes GitHub nebo Google a volání koncového bodu Langfuse nebo OpenTelemetry mimo dodávané stacky jej rovněž nepoužívají a démon Docker stahuje obrazy s vlastním nastavením proxy serveru.
Kontrola aktualizací
Během dvou minut od spuštění a poté každé tři hodiny se server dotazuje update.pentagi.com, zda je k dispozici novější sestavení. Požadavek obsahuje ID instalace, licenční klíč, pokud je nastaven, verzi a platformu a souhrn instalace: nakonfigurovaný provider a typy přihlášení, několik přepínačů funkcí, počty uživatelů, flow, tasktask — úkolJeden požadavek ve flow: jeho první zpráva nebo pozdější zpráva, která neodpovídá na otázku agenta. PentAGI rozděluje každý úkol na dílčí úkoly., kontejnerů, promptů, tokenů API a tool calltool call — volání nástrojePožadavek modelu na spuštění jednoho z nástrojů agenta, například příkazu v terminálu nebo webového vyhledávání. a celkové součty tokenů a nákladů podle typu provider — žádná jména, adresy, prompty ani obsah flow. UPDATE_ tuto funkci vypne. Při každém spuštění instalátoru a po každé akci, kterou provede, jako jsou Apply Changes, Update, Start nebo Stop, odešle nainstalované obrazy a stav každého stacku a během běhu PentAGI také stejný souhrn; UPDATE_ jej neovlivňuje.
Kontejner pentagi běží pod uživatelem root, protože spravuje kontejnery prostřednictvím socketu Docker. Pro silnější izolaci spusťte toolstool — nástrojTo, čím agent jedná: vestavěná funkce, jako je terminál, izolovaný prohlížeč nebo webové vyhledávání, nebo program v sandboxu, například nmap, metasploit nebo sqlmap. na samostatném worker node.
Naposledy aktualizováno