Güvenlik
Bir PentAGI kurulumunun kimlik bilgileri, HTTPS, oturum açma ve ağa açıklığı.
Varsayılanları değiştirin
Yeni bir kurulum, admin parolasıyla [email protected] yerel yöneticisini oluşturur; bu parola ilk oturum açmada değiştirilmelidir. Parola kaybolursa, hesap hâlâ [email protected] adresini kullanıyorsa yükleyicinin bakım menüsü parolayı sıfırlar.
İlk başlatmadan önce .env dosyasındaki bu değerleri ayarlayın; yükleyici salt ve parolaları sizin için oluşturur. PostgreSQL ve Neo4j, kimlik bilgilerini yalnızca veri birimlerini oluştururken alır, bu nedenle bunları daha sonra değiştirmek bağlantıyı bozar:
| Değişken | Amaç |
|---|---|
COOKIE_ | Oturum çerezlerini ve API belirteçlerini imzalar — rastgele bir değer atayın |
PENTAGI_, PENTAGI_ | PostgreSQL kimlik bilgileri |
NEO4J_ | Knowledge graphknowledge graph — bilgi grafiğiBu isteğe bağlı özellik etkinleştirildiğinde PentAGI'nin bir test sırasında oluşturduğu ana bilgisayarlar, hizmetler, güvenlik açıkları ve bunlar arasındaki erişim grafiği. Bulguların nasıl bağlantılı olduğunu gösterir. için Neo4j parolası; NEO4J_ neo4j olarak kalmalıdır |
PUBLIC_ | Kullanıcıların açacağı URL, örneğin https:/ |
Çalışan bir kurulumda, önce PostgreSQL veya Neo4j içinde bir veritabanı parolasını değiştirin, ardından .env içinde değiştirin.
HTTPS
PentAGI, 8443 portunda kendinden imzalı bir sertifikayla HTTPS hizmeti sunar. Kendi sertifikanızı kullanmak için SERVER_ ve SERVER_ değişkenlerini ayarlayın ve ilgili dosyaları docker-compose.yml içinde bağlayın.
Kullanıcılar ve oturum açma
Kayıt formu bulunmamaktadır. Yöneticiler yerel kullanıcıları, oturum açmış bir tarayıcı oturumundan Users API (/) üzerinden yönetir — burada bir API token'ı 403 hatası alır — ve roller her kullanıcının neleri görebileceğini ve değiştirebileceğini kısıtlar. Yerel kullanıcılar e-posta ve şifrelerini Settings → Account altında değiştirir.
GitHub veya Google ile oturum açma yapılandırıldığında, sağlayıcı tarafından doğrulanan e-posta adresi mevcut bir hesapla (yerel hesaplar dahil) eşleşen bir oturum açma işlemi, o hesaba ve rolüne giriş yapar; diğer tüm oturum açma işlemleri varsayılan kullanıcı rolüne sahip yeni bir hesap oluşturur. Her kurulum [email protected] yöneticisi ile başlar, bu nedenle oturum açmayı etkinleştirmeden önce Settings → Account altında kontrolünüzdeki bir adrese taşıyın ve bunu yalnızca yeni hesapların kabul edilebilir olduğu durumlarda, örneğin alan adınızla sınırlı bir Google Workspace uygulamasında etkinleştirin.
GitHub ve Google ile oturum açma OAuth üzerinden kullanılabilir. ${PUBLIC_ geri çağırma adresiyle bir uygulama kaydedin ve kimlik bilgilerini ekleyin:
PUBLIC_URL=https://pentagi.example.com
OAUTH_GITHUB_CLIENT_ID=your_github_client_id
OAUTH_GITHUB_CLIENT_SECRET=your_github_client_secretAğ erişilebilirliği
Varsayılan olarak PentAGI web arayüzü yalnızca 127.0.0.1 üzerinde dinler. Diğer makinelerden erişmek için:
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:8443PUBLIC_ ve CORS_ içinde gerçek adresi kullanın, asla 0.0.0.0 kullanmayın. Konteynerleri docker compose up -d --force-recreate komutuyla yeniden oluşturun ve güvenlik duvarında 8443 portunu açın.
Bir ters proxy arkasında, TRUSTED_ değerini virgülle ayrılmış şekilde proxy’nin adresine veya CIDR bloğuna ayarlayın. Aksi takdirde her istek proxy’den geliyormuş gibi görünür ve adres başına oturum açma sınırı — beş dakika içinde 30 başarısız deneme, ardından 15 dakikalık kilitlenme — tüm kullanıcılar tarafından paylaşılır.
Her flowflow — akışPentAGI'nin bir çalışması: bir hedef, mesajlarınızdan oluşturulan görevler ve ajanların bu süreçte yaptıkları her şey.'un sandboxsandboxAjanların araçlarını çalıştırdığı izole Docker kapsayıcısı. Arayüz bunu Terminal olarak gösterir. konteyneri ayrıca ters kabuklar gibi bant dışı geri aramalar için iki bağlantı noktası yayımlar. Bunlar, DOCKER_ adresinden başlayan (varsayılan 28000) 2000 bağlantı noktasından gelir ve agentagent — ajanPentAGI'nin bir yapay zeka ajanı: Bir akışta test etme, kod yazma veya web'de arama gibi belirli bir işi yapan, kendi istemi, ayarları ve araçlarına sahip bir model.'ların hedeflere de geri arama yapmaları için verdiği adres olan DOCKER_ adresine bağlanır.
Varsayılan olarak DOCKER_, 0.0.0.0 şeklindedir: portlar Docker ana bilgisayarının her arayüzünde dinleme yapar ve agent'lar genel adreslerini kendileri bulur. Ana bilgisayar bu adrese sahipse ve hedefler buna erişebiliyorsa yalnızca belirli bir adres ayarlayın; NAT arkasında varsayılanı koruyun. Docker'ın yayınladığı portlar ana bilgisayardaki ufw ve firewalld kurallarını atladığından, aralığı ana bilgisayarın önündeki bir güvenlik duvarı (örneğin bir bulut güvenlik grubu) veya Docker'ın DOCKER-USER zincirindeki kurallarla kısıtlayın.
PROXY_, arka ucun model sağlayıcılarına, yerleştirme sağlayıcısına, arama API'lerine ve güncelleme denetimine yönelik çağrılarını bir vekil sunucu üzerinden yönlendirir; bu, kurulumu harici ağlardan izole etmeye yardımcı olur. Ollama, vLLM veya SearXNG gibi kendi kendine barındırılan uç noktalar da bunun üzerinden geçer; çünkü NO_ istisnası yoktur, dolayısıyla vekil sunucunun bunlara erişebilmesi gerekir. Agent'ların komutlarını çalıştırdığı flow'ların sandbox kapsayıcıları, tarayıcı aracı için web sayfalarını açan kazıyıcı ve Graphiti hizmeti bunu kullanmaz; bu nedenle giden trafiğini ağ düzeyinde kısıtlayın. GitHub veya Google ile oturum açma ve paketlenmiş yığınların dışındaki bir Langfuse ya da OpenTelemetry uç noktasına yapılan çağrılar da bunu kullanmaz; Docker daemon ise görüntüleri kendi vekil sunucu ayarlarıyla çeker.
Güncelleme denetimi
Sunucu, başlatıldıktan sonraki iki dakika içinde ve ardından her üç saatte bir update.pentagi.com adresine daha yeni bir yapının mevcut olup olmadığını sorar. İstek; kurulum kimliğini, ayarlanmışsa lisans anahtarını, sürümü ve platformu ile kurulumun bir özetini taşır: yapılandırılmış provider ve oturum açma türleri, birkaç özellik anahtarı, kullanıcı, flow, tasktask — görevBir akıştaki tek bir istek: ilk mesajı veya bir ajanın sorusunu yanıtlamayan sonraki bir mesaj. PentAGI her görevi alt görevlere böler., kapsayıcı, prompt, API token ve tool calltool call — araç çağrısıModelin, terminal komutu veya web araması gibi ajanın araçlarından birini çalıştırma isteği. sayıları ile provider türü başına token ve maliyet toplamları — isimler, adresler, prompt veya flow içeriği yer almaz. UPDATE_ bunu kapatır. Yükleyici her başladığında ve Apply Changes, Update, Start veya Stop gibi çalıştırdığı her eylemden sonra, yüklü imajları ve her yığının durumunu gönderir; PentAGI çalışırken aynı özeti de ekler. UPDATE_ bunu etkilemez.
pentagi konteyneri, Docker soketi aracılığıyla konteynerleri yönettiği için root olarak çalışır. Daha güçlü bir yalıtım için toolstool — araçBir ajanın işini yapmak için kullandığı şey: terminal, yalıtılmış tarayıcı veya web araması gibi yerleşik bir yetenek ya da sandbox içindeki nmap, metasploit veya sqlmap gibi bir program.'u ayrı bir worker node'da çalıştırın.
Son güncelleme tarihi: