Serve Remote Terminal — una vera shell su un WebSocket

FeatureSecurityService
Spegnimento
3 settembre 2026 alle ore 17:33 UTC
Autore
Kamo
Impegno
77f7021

Bridges un browser a un PTY sulla propria macchina dev del membro. Cornici binari sono il terminale, i frame di testo sono controllati; sul lungi dall'alto un HTTP 101 su un flusso prefisso lungo raggiunge l'agente sul porto la politica di rete già permessi, quindi non è necessario alcun cambiamento Cilium. Il primo WebSocket in questo servizio, e deliberatamente uno grezzo. STOMP è un messaggio broker su una presa e che cosa viaggia qui è un flusso byte tra un browser e un guscio — una busta intorno ad ogni tasto non compra nulla. AUTORIZZAZIONE SUPERIORE PRIMA DEL SOCKET. Un browser non può mettere un'intestazione su un WebSocket costruttore, quindi piuttosto che insegnare il handshake a parse ***, un il punto finale autenticato ordinario prende l'intera decisione con la sessione mano e la consegna in avanti come biglietto singolo che è inutile 30 secondi poi e ancora dopo un uso. Che rispecchia il link KamoDesktop, che era indurito per esattamente questo motivo: un token riproducibile siede nella storia e nella Ctrl+Shift+T, e una shell è peggio di un desktop, non meglio. La stretta di mano non legge altro dal cliente — non un nome utente, non un conto, solo una dimensione accennare l'agente morsetti comunque. L'account Linux proviene da credenzialiPer(l'identificativo del chiamante id>), quindi una richiesta non può nominare qualcuno La conchiglia dell'altro, e l'Origine è fissata al destinatario. Nessuna password è leggere a tutti: l'agente è radice e scende nel conto, quindi il reversibile le credenziali Guacamole non è mai toccato su questo percorso. Audited prima del fatto, sincronizzato, nello stesso registro di accesso che già risposte "che hanno firmato da dove" — con IP, geo e user-agent, a HIGH gravità. Una fila che è apparso solo sul successo sarebbe mancare esattamente i casi che importa. Otto terminali per membro, perché ciascuno è un PTY e un filo su un VM condivisa che è stata assorbita dalla pressione di memoria prima. La chiusura della presa non uccide la shell; l'agente lo gestisce sotto tmux in modo da rinfrescare o un collegamento abbandonato reattacchi al lavoro ancora in esecuzione. 21 test: uso singolo, scadenza sia lato del silenzio di confine, sconosciuto, per-membro tappo e il suo rilascio, token non sequenziali, e il frame codec tra cui consegna di un byte-at-a-time, una lunghezza dichiarata assurda e lettura la linea di stato dell'aggiornamento senza ingoiare il flusso dietro di esso.

Tutte le modifiche

Come quello che vedi la spedizione?

Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.

Inizia gratis per sempreVisualizza il prezzo