−25%

na Windows przy płatności rocznej, do 31.10. Do planów

EQVPS

Zabezpieczanie własnego agenta AI na VPS-ie

26 wrz 2026 · 3 min czytania · EQVPS Team

Klasyczna aplikacja WWW robi to, co mówi jej kod. Agent AI robi to, co mówi jego kod, plus wszystko, do czego przekona go czytany tekst. Daj mu powłokę, klucz API i budżet, skieruj na otwarty internet, i masz coś nowego: proces, który można zmanipulować socjotechniką. Rozwiązaniem nie jest paranoja, tylko stary nawyk administratora, czyli minimalne uprawnienia, zastosowany do bardzo gadatliwego programu.

Poznaj prawdziwe zagrożenia

Wszystko poniżej albo zmniejsza prawdopodobieństwo tych zdarzeń, albo sprawia, że kosztują mniej, gdy już się zdarzą.

1. Daj agentowi własną maszynę i własnego użytkownika

Agentów, którzy uruchamiają kod albo przeglądają internet, trzymaj na osobnym VPS-ie, nie obok produkcyjnej bazy danych. Na tej maszynie nigdy jako root:

adduser --disabled-password --gecos "" agent
mkdir -p /home/agent/work && chown agent:agent /home/agent/work

Bez sudo, bez kluczy SSH do innych serwerów, bez dostępu do czegokolwiek, czego nie potrzebuje.

2. Zamknij go w sandboxie systemd

systemd potrafi ogrodzić proces bez kontenerów. Agent może czytać system, ale pisać tylko do swojego katalogu roboczego:

# /etc/systemd/system/agent.service
[Unit]
Description=AI agent
After=network-online.target

[Service]
User=agent
WorkingDirectory=/home/agent/work
EnvironmentFile=/home/agent/.agent.env
ExecStart=/home/agent/venv/bin/python run_agent.py
Restart=on-failure
NoNewPrivileges=yes
ProtectSystem=strict
ProtectHome=read-only
ReadWritePaths=/home/agent/work
PrivateTmp=yes
PrivateDevices=yes
MemoryMax=2G

[Install]
WantedBy=multi-user.target

ProtectSystem=strict czyni cały system plików tylko do odczytu z wyjątkiem ReadWritePaths. MemoryMax nie pozwala jednemu rozbieganemu zadaniu położyć serwera. Sprawdź wynik przez systemd-analyze security agent: ocenia jednostkę i wypisuje, co jest wciąż otwarte.

3. Traktuj klucze tak, jakby miały wyciec

4. Ogranicz, co może kupić

Jeśli agent może wydawać pieniądze, limit musi leżeć poza agentem. W EQVPS agent zamawia i odnawia serwery z przedpłaconego salda konta przez serwer MCP albo REST API, więc saldo jest twardym sufitem. Doładuj je kwotą, którą jesteś gotów stracić, a nie całym budżetem. Daj agentowi osobne konto, jeśli nie musi widzieć twoich pozostałych serwerów.

5. Postaw człowieka przed nieodwracalnymi działaniami

Usuwanie danych, wysyłanie pieniędzy, push do main, e-maile do klientów: przepuść je przez krok potwierdzenia; wystarczy wiadomość na Telegramie z przyciskiem zatwierdzenia. Narzędzia tylko do odczytu mogą działać swobodnie; narzędzia zapisujące zdobywają zaufanie powoli.

6. Zawęź wyjścia (jeśli możesz z tym żyć)

Lista dozwolonych połączeń wychodzących znacznie utrudnia wyprowadzenie sekretów:

ufw default deny outgoing
ufw allow out 53          # DNS
ufw allow out 443/tcp     # HTTPS APIs
ufw allow out 80/tcp      # package mirrors
ufw default deny incoming && ufw allow 22/tcp && ufw enable

Szczerze mówiąc, to krok, który większość porzuca: agenci przeglądający internet potrzebują dowolnego HTTPS, a wtedy lista dozwolonych portów niewiele daje. Opłaca się przy agentach, które wywołują tylko stały zestaw API.

7. Prowadź logi i miej drogę powrotu

Loguj każde wywołanie narzędzia z argumentami. Zrób snapshot, zanim puścisz agenta na coś nowego: Managed Backups dają codzienne punkty przywracania plus snapshoty na żądanie, więc zły dzień kosztuje przywrócenie, a nie odbudowę.

Uczciwe podsumowanie

Nic z tego nie sprawia, że agentowi można ufać na ślepo. Sprawia natomiast, że pomyłka jest tania: przejęty agent na własnej maszynie, z własnym użytkownikiem, ograniczonym saldem i zawężonymi kluczami może wyrządzić tylko małe, odwracalne szkody. To realistyczny cel. Zacznij od podstaw z zabezpieczania nowego VPS-a, a potem dodaj opisane wyżej warstwy specyficzne dla agentów.

FAQ

Jakie jest największe ryzyko uruchamiania agenta AI na serwerze?

Prompt injection: agent czyta tekst, którego nie napisał (stronę WWW, e-mail, komentarz w issue), a ten tekst każe mu zrobić coś, o co nigdy nie prosiłeś, na przykład wypisać zmienne środowiskowe albo uruchomić polecenie. Cała reszta tego poradnika dotyczy ograniczania szkód, gdy to się stanie.

Czy agent powinien działać jako root?

Nigdy. Daj mu własnego nieuprzywilejowanego użytkownika bez sudo i ogranicz, gdzie może pisać, sandboxem systemd. Jeśli zostanie oszukany i uruchomi niszczące polecenie, uszkodzi tylko własny katalog roboczy.

Jak powstrzymać agenta przed nadmiernymi wydatkami?

Użyj twardych limitów, które żyją poza agentem: limitów wydatków na kluczach u dostawcy modeli i przedpłaconego salda na wszystko, co może kupić. W EQVPS agent wydaje z salda konta, więc samo saldo jest sufitem: doładuj je kwotą, którą jesteś gotów stracić, nie większą.

Czy da się całkowicie zablokować prompt injection?

Nie: dziś nie ma na to niezawodnego filtra. Działa zmniejszanie zasięgu szkód: narzędzia z minimalnymi uprawnieniami, potwierdzenie przez człowieka dla działań niszczących lub płatnych, żadnych sekretów w kontekście agenta i logi, które możesz przejrzeć.

Czy osobny VPS dla agenta się opłaca?

Tak, jeśli agent uruchamia kod albo przegląda internet. Mała dedykowana maszyna trzyma go z dala od baz danych, innych projektów i danych logowania. Jeśli zostanie przejęty, odbudowujesz jeden serwer, a nie całą infrastrukturę.

← Powrót do blogaZobacz plany i ceny →

Komentarze

Brak komentarzy. Bądź pierwszy.

Zostaw komentarz

Komentarze są moderowane przed pojawieniem się.