IngleseFranceseSpagnolo

Ad


Favicon di OnWorks

websockify - Online nel cloud

Esegui websockify nel provider di hosting gratuito OnWorks su Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS

Questo è il comando websockify che può essere eseguito nel provider di hosting gratuito OnWorks utilizzando una delle nostre molteplici workstation online gratuite come Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS

PROGRAMMA:

NOME


websockify - Da WebSocket a bridge socket TCP

SINOSSI


websockify [opzioni] [source_addr:]source_port target_addr:target_port
websockify [opzioni] [source_addr:]source_port -- WRAP_COMMAND_LINE

VERSIONI


-h, --help mostra questo messaggio di aiuto ed esce
-v, --verbose messaggi dettagliati e traffico per frame
--record=FILE registra le sessioni su FILE.[session_number]
-D, --daemon diventa un demone (processo in background)
--run-once gestisce una singola connessione WebSocket ed esce
--timeout=TIMEOUT dopo TIMEOUT secondi esce quando non connesso
--cert=file certificato SSL CERT
--key=KEY File chiave SSL (se separato da cert)
--ssl-only non consente connessioni non crittografate
--web=DIR esegue il server web sulla stessa porta. Servire file da DIR.
--wrap-mode=MODE azione da intraprendere quando il programma avvolto esce o
demonizza: exit (predefinito), ignora, respawn

DESCRIZIONE


Al livello più elementare, websockify traduce semplicemente il traffico WebSockets nel normale TCP
traffico socket. Websockify accetta l'handshake di WebSockets, lo analizza e quindi inizia
inoltro del traffico tra il client e il target in entrambe le direzioni.

websockify era precedentemente chiamato wsproxy e faceva parte del progetto noVNC.

NOTE


WebSockets binario dati
Websockify supporta tutte le versioni del protocollo WebSockets (Hixie e HyBI). Il più vecchio
Le versioni Hixie del protocollo supportano solo payload di testo UTF-8. Per trasportare
dati binari su UTF-8 è necessario utilizzare una codifica per incapsulare i dati all'interno di UTF-8.
Websockify utilizza base64 per codificare tutto il traffico da e verso il client. Questo non influisce
i dati tra websockify e il server.

Encrypted WebSocket connessioni (wss://)
Per crittografare il traffico utilizzando lo schema URI WebSocket 'wss://' è necessario generare un
certificato per il caricamento di websockify. Per impostazione predefinita websockify carica un nome file di certificato
self.pem ma l'opzione --cert=CERT può sovrascrivere il nome del file. Puoi generare un auto-
certificato firmato utilizzando openssl. Quando viene richiesto il nome comune, utilizzare il nome host del
server in cui verrà eseguito il proxy:

openssl req -new -x509 -days 365 -nodes -out self.pem -keyout self.pem

websock Javascript biblioteca
La libreria della libreria Javascript websock.js (vedi https://github.com/kanaka/websockify)
fornisce un oggetto Websock simile all'oggetto WebSocket standard ma Websock
consente la comunicazione con socket TCP non elaborati (ovvero il flusso binario) tramite websockify. Questo
si ottiene codificando in base64 il flusso di dati tra Websock e websockify.

Websock ha il buffering della coda di ricezione integrato; l'evento del messaggio non contiene effettivo
dati ma è semplicemente una notifica che ci sono nuovi dati disponibili. Diversi metodi rQ*
sono disponibili per leggere i dati binari dalla coda di ricezione.

L'API Websock è documentata nella pagina wiki dell'API websock.js:

https://github.com/kanaka/websockify/wiki/websock.js

Vedere la sezione "Wrap a Program" di seguito per un esempio di utilizzo di Websock e websockify come a
client telnet del browser (wstelnet.html).

aggiuntivo websockify Caratteristiche
Questi non sono necessari per l'operazione di base.

* Daemonizzazione: quando viene specificata l'opzione -D, websockify viene eseguito in background come
un processo demone.

* SSL (wss:// WebSockets URI): questo viene rilevato automaticamente da websockify da
sniffando il primo byte inviato dal client e quindi avvolgendo il socket se il
i dati iniziano con '\x16' o '\x80' (che indica SSL).

* Politica di sicurezza flash: websockify rileva le richieste di politica di sicurezza flash (di nuovo da
sniffando il primo pacchetto) e risponde con un'appropriata policy di sicurezza flash
risposta (e quindi chiude la porta). Ciò significa che nessuna politica di sicurezza flash separata
server è necessario per supportare l'emulatore di fallback Flash WebSockets.

* Registrazione della sessione: questa funzione che consente la registrazione del traffico inviato e
ricevuto dal client in un file utilizzando l'opzione --record.

* Mini-webserver: websockify può rilevare e rispondere alle normali richieste web sul
stessa porta del proxy WebSockets e della politica di sicurezza Flash. Questa funzionalità è
attivare con l'opzione --web DIR dove DIR è la radice della directory web per
servire.

* Wrap a program: vedere la sezione "Wrap a Program" di seguito.

Avvolgere a Programma
Oltre al proxy da un indirizzo di origine a un indirizzo di destinazione (che può essere su un
sistema diverso), websockify ha la capacità di avviare un programma sul sistema locale e
proxy WebSockets traffico a una normale porta TCP di proprietà/associata dal programma.

Il si ottiene con una piccola libreria LD_PRELOAD (rebind.so) che intercetta bind()
chiamate di sistema dal programma. La porta specificata viene spostata su un nuovo localhost/loopback gratuito
porto alto. websockify quindi esegue il proxy del traffico WebSocket diretto alla porta originale al
nuova porta (spostata) del programma.

La modalità a capo del programma viene invocata sostituendo il target con -- seguito dal programma
riga di comando da avvolgere.

`./websockify 2023 -- ARGO DEL PROGRAMMA`

L'opzione --wrap-mode può essere usata per indicare quale azione intraprendere quando il wrapping
il programma esce o viene demonizzato.

Ecco un esempio di utilizzo di websockify per avvolgere il comando vncserver (quali sfondi
stesso) per l'uso con noVNC:

`./websockify 5901 --wrap-mode=ignore --vncserver -geometry 1024x768 :1`

Ecco un esempio di wrapping di telnetd (da krb5-telnetd).telnetd esce dopo il
la connessione si chiude in modo che la modalità wrap sia impostata per rigenerare il comando:

"sudo ./websockify 2023 --wrap-mode=respawn -- telnetd -debug 2023"

La pagina wstelnet.html mostra un semplice client telnet basato su WebSockets.

Usa websockify online utilizzando i servizi onworks.net


Server e workstation gratuiti

Scarica app per Windows e Linux

Comandi Linux

Ad