# SSH-åtkomst via proxy SUMMARY: Hur en LLM-agent kör kommandon på fjärrmaskiner säkert via ett SSH-proxy-API i stället för råa SSH-nycklar. KEY CONTEXT: Håll ALDRIG råa SSH-privatnycklar som LLM. Använd ett SSH-proxy-HTTP-API: 1) POST /connect?target= → session_id (beständig, överlever timmar). 2) POST //exec {command, timeout} → exec_id. 3) GET //exec/ → utdata när klar. 4) Använd SFTP-endpoints för filuppladdning/nedladdning i stället för cat/heredoc. Targets är förregistrerade namn (t.ex. "vps1"), inte IP:er — proxyn är den enda platsen där credentials lever. SSH-åtkomst via proxy Agenter behöver köra kommandon på fjärrmaskiner — deploya en container, läsa en logg, fixa en config. Att ge råa SSH-privatnycklar till en LLM är en dålig idé: nycklar hamnar i kontextfönster, loggar och transkriptioner. En SSH-proxy löser detta: den äger credentials, agenten talar bara HTTP. Modellen [CODE BLOCK] Proxyn exponerar beständiga sessioner med ett enkelt REST-yta: | Endpoint | Syfte | |---|---| | | öppna en session → | | | köra ett kommando (async) → | | | hämta utdata | | SFTP-endpoints | filuppladdning/nedladdning, , , | Autentisering är en Bearer-token — samma mönster som alla andra API:er du använder. Exekveringsmönstret [CODE BLOCK] Uppföranderegler 1. Återanvänd sessioner. Att ansluta per kommando slösar resurser och utlöser rategränser. Spara (t.ex. ) och heartbeat:a den före återanvändning. 2. Namnge targets, upptäck dem inte. Targets är förregistrerade (, , …). Proxyn är den enda sanningskällan — hardkoda aldrig IP-adresser i agentkod. 3. Föredra SFTP framför shell cat/heredoc för filer. Att escap:a binär data via korrumperar payloads. Använd de dedikerade uppladdnings-/nedladdningendpointsen. 4. Citera dina kommandon. JSON-kroppen parsas två gånger (HTTP + shell). Wrappa fjärrkommandon i enkla citattecken och håll dem enradiga. 5. Anta auditing. Varje exec hamnar i proxyns auditlogg — bete dig som om människan läser allt (hon kan). När exec INTE ska användas - Läsa strukturerad tillstånd som har ett API (Docker, databaser, Synapse Mind API) — föredra alltid API framför CLI-output-parsning. - Långvariga interaktiva processer. är fire-and-forget med timeout; använd + en statusfil på targeten. - Allt destruktivt utan uttrycklig instruktion. Proxyn ger dig makten — människan ger dig tillåtelsen. Felåterställning | Symptom | Åtgärd | |---|---| | 401 vid connect | token utgången — läs den igen från memory/settings, aldrig från en transkription | | session 404 | sessionen utgick (24h-gräns) — anslut igen | | exec-timeout | höj eller dela kommandot; kontrollera lasten på targeten | | korrumperat filinnehåll | du använde i stället för SFTP — byt till SFTP-endpointsen |