È vero che tutto ciò che fai sul Web, come la navigazione sul Web e la lettura delle e-mail che puoi fare con Telnet?
netcat
. D'altra parte, socat
è lo stesso ovunque.
È vero che tutto ciò che fai sul Web, come la navigazione sul Web e la lettura delle e-mail che puoi fare con Telnet?
netcat
. D'altra parte, socat
è lo stesso ovunque.
Risposte:
Sì, anche se ciò perderebbe i benefici della compressione e lavorare con la risposta GET frammentata o il login / password con codifica Base64 in SMTP sarebbe doloroso, quindi non consiglierei effettivamente usarlo tranne a scopo di test, usa Perl o Python se vuoi per fare automaticamente qualcosa sul Web.
Inoltre, se vuoi fare richieste indistinguibili da quelle che un determinato browser fa (doverlo fare è una triste realtà quando stai provando a lavorare con siti protetti da sistemi come Bad Behavior), prendi in considerazione di scrivere un mini- server che produrrà la tua richiesta alla lettera (ci sono esempi simili che volano in giro, ma probabilmente avranno bisogno di qualche leggera modifica). Quindi sarai in grado di usarlo come modello per effettuare semplici richieste a tali siti.
Ad esempio, prova
telnet google.com 80
Al termine dell'inizializzazione, digitare
GET / HTTP/1.0
e premere INVIO due volte (come richiesto dal protocollo HTTP). Riceverai 302 risposte che un browser normalmente utilizzava per reindirizzarti a WWW.google.com.
Telnet può essere utilizzato per (quasi) connessioni TCP non elaborate e è possibile utilizzare protocolli basati sui caratteri, ma ci sono alcune differenze :
Pertanto, un'applicazione client Telnet può anche essere utilizzata per stabilire una sessione TCP grezza interattiva e si ritiene comunemente che tale sessione che non utilizza lo IAC (\ 377 carattere o 255 in decimale) sia funzionalmente identica. Questo non è il caso, tuttavia, poiché esistono altre regole del terminale virtuale di rete (NVT), come il requisito per un carattere di ritorno a capo nudo (CR, ASCII 13) a cui deve seguire un carattere NULL (ASCII 0), che distingue il protocollo telnet da sessioni TCP non elaborate.
Altrimenti, è possibile utilizzare protocolli di livello applicazione basati su caratteri come HTTP, FTP, SMTP e IRC utilizzando Telnet. Perché è una vera sfida leggere e scrivere i dati compressi manualmente, sei limitato a HTTP senza la compressione HTTP / 1.1. Per protocolli interamente binari, sei praticamente sfortunato.
telnet
da GNU "inetutils", Arch "telnet-bsd", Debian "krb5-client", Debian "netkit-telnet-ssl", PuTTY-svn r9020, Windows XP "telnet.exe", Windows 98 "telnet. exe ", Windows XP" HyperTerminal "e tutti inviano CR / LF e rispondono alla negoziazione delle opzioni Telnet indipendentemente dalla porta TCP utilizzata dal server (in questo test, tcp / 9). L'unica differenza è che solo alcuni di loro (vale a dire PuTTY) avviano il nego senza attendere che il server lo faccia.
Tecnicamente sì, puoi farlo. ma parlando pragmaticamente la risposta è no:
ad esempio, posso ottenere una pagina Web utilizzando
telnet www.page.com 80
ma otterrò il testo HTML da esso, non il, css, immagine e altre risorse.
Quindi, con il file html, è possibile ottenere tutti gli altri file con chiamate telnet consecutive. css è "banale" da ottenere, è lo stesso per ottenere un file, anche js e altri file "inclusi". ma i binari non sono così facili perché devo scaricarlo e poi elaborarlo, senza contare che alcune risorse richiedono un cookie specifico e un riferimento.
E il sito web potrebbe forzare la compressione z e molti altri "dettagli" che sono "dettagliati" nelle specifiche del protocollo, protocollo difficilmente patchato e con diverse eccezioni.
Anche se è possibile, ma è lo stesso creare un servizio / protocollo esistente da zero, quindi è lo stesso dire "posso costruire Windows solo" colpendo "zero e quelli". <- è possibile ma ci vorrà molto tempo assurdo per farlo.
Un esempio di un sito che non è possibile caricare completamente è gmail.com perché include anche un'ulteriore complessità: javascript (escluso Lynx perché non è nativo, né un'esperienza reale).
Ad ogni modo, al di fuori del web e della posta elettronica, esiste un protocollo a cui non è possibile accedere utilizzando un semplice telnet perché richiede una sorta di handshaking tempestivo (un paio di secondi se non inferiore) che non può essere imitato utilizzando due chiamate separate su telnet senza usando una sorta di automatismo, cioè stiamo parlando di un client che non è un vero client Telnet ma su di esso.