telnetd — Protocollo DARPA del server TELNET
Il comando telnetd è un server che supporta il protocollo standard DARPA del terminale virtuale TELNET. Telnetd è normalmente invocato dal server internet (vedere inetd(8)) per richieste di connessione alla porta TELNET come indicato dal file /etc/services (vedere services(5)).
Il comando telnetd accetta le seguenti opzioni:
-a, --authmode authmode - Questa opzione può essere usata per specificare quale modo deve essere usato per l'autenticazione. Notare che questa opzione è utile solo se
telnetd è stato compilato con il supporto per l'opzione di AUTENTICAZIONE. Ci sono molti valori validi per authmode: user - Permette le connessioni solo quando l'utente remoto può fornire informazioni di autenticazione valide per identificare l'utente remoto, e gli è concesso l'accesso all'account specificato senza fornire una password.
valid - Permette le connessioni solo quando l'utente remoto può fornire informazioni di autenticazione valide per identificare l'utente remoto. Il comando login(1) fornirà ogni verifica aggiuntiva necessaria se all'utente remoto non è concesso l'accesso automatico all'account specificato.
other - Permette solo connessioni che forniscono qualche informazione di autenticazione. Questa opzione attualmente non è supportata da alcun meccanismo di autenticazione esistente, ed è quindi come specificarne
-a valida. none - Questo è lo stato di default. Non sono richieste informazioni di autenticazione. Se nessuna o insufficienti informazioni di autenticazione è fornita, allora il programma login(1) fornirà le necessarie verifiche dell'utente.
off - Quest disabilita il codice di autenticazione. Tutte le verifiche utente avverranno attraverso il programma login(1).
-S, --server-principal nome - Imposta il nome principale di Kerberos per quest'istanza del server, con o senza un realm esplicito.
-X, --disable-auth-type authtype - Questa opzione è valida solo se
telnetd è stato costruito con il supporto per l'opzione di autenticazione. Esso disabilita l'uso dell'autenticazione authtype e può essere usato per disabilitare temporaneamente uno specifico tipo di autenticazione senza dover ricompilare telnetd. -D, --debug [debugmode] - Questa opzione può essere usata per scopi di debugging. Questo permette a
telnetd di stampare le infromazioni di debugging alla connessione, permettendo all'utente di vedere cosa telnetd sta facendo. Ci sono numerosi valori possibili per debugmode: options - Stampa informazioni sulla negoziazione delle opzioni TELNET.
report - Stampa l'informazione delle
opzioni più alcune informazioni addizionali su quale processo sta funzionando. netdata - Visualizza il flusso di dati ricevuto da
telnetd. ptydata - Visualizza i dati scritti sulla pty.
auth - Mostra le opzioni di autenticazione Telnet
encr - Mostra informazioni sulla crittografia.
-E, --exec-login stringa - Imposta il programma per essere eseguito al posto di /bin/login.
-h, --no-hostinfo - Disabilita la stampa di informazioni specifiche dell'host prima che il login sia stato completato.
-l, --linemode [modalità] - Specifica la modalità linea. Tenta di forzare i client a usare la modalità una-linea-per-volta. modalità è
nokludge, il klugde linemod verrà disabilitato. Se l'opzione LINEMODE non è supportata, esso si porterà nel kludge linemode. -n, --no-keepalive - Disabilita i keep-alive
TCP. Normalmente telnetd abilita il meccanismo TCP keep-alive per provare connessioni che sono state inattive per un certo periodo di tempo per determinare se il client è ancora lì, in modo che le connessioni inattive di macchine andate in crash o che non possono più essere raggiunte possano essere cancellate. -U, --reverse-lookup - Questa opzione fa sì che
telnetd rifiuti connessioni da indirizzi che non possono essere mappati di nuovo in un nome simbolico attraverso la routine gethostbyaddr(3)EN. -?, --help - Mostra una lista di aiuto.
--usage - Mostra sinteticamente l'uso.
-V, --version - Mostra la versione de programma.
telnetd opera allocando un dispositivo pseudo-terminale (vedere pty(4)) per un client, quindi creando un processo di login che ha il lato slave dello pseudo-terminale come stdin, stdout e stderr. telnetd manipola il lato master dello pseudo-terminale, implementando il protocollo TELNET e passando caratteri tra il client remoto e il processo di login.
Quando una sessione TELNET è avviata, telnetd invia opzioni TELNET al lato client side indicando una volontà di eseguire le seguenti opzioni TELNET, che sono descritte in maggior dettaglio sotto:
DO AUTHENTICATION
WILL ENCRYPT
DO TERMINAL TYPE
DO TSPEED
DO XDISPLOC
DO NEW-ENVIRON
DO ENVIRON
WILL SUPPRESS GO AHEAD
DO ECHO
DO LINEMODE
DO NAWS
WILL STATUS
DO LFLOW
DO TIMING-MARK
Lo pseudo-terminale allocato al client è configurato per operare in modalità “cooked” e con XTABS e CRMOD abilitati (vedere tty(4)).
telnetd ha il supporto per abilitare localmente le seguenti opzioni TELNET:
- WILL ECHO
- Quando l'opzione
LINEMODE è abilitata, un WILL ECHO o WONT ECHO verrà inviato al client per indicare lo stato corrente del terminale che esegue l'eco. Quando un eco del terminale non è desiderato, un WILL ECHO è inviato per indicare che telnetd si occuperà di fare l'eco di tutti i dati che hanno bisogno di essere ripetuti al terminale, e quindi non viene fatto alcun eco. Quando l'eco del terminale è desiderato, un WONT ECHO è inviato a indicare che telnetd non farà alcun eco del terminale, così che il client possa fare tutti gli eco del terminale necessari. - WILL BINARY
- Indica che il client vuole inviare 8 bit di dati, invece dei normali 7 bit del Network Virtual Terminal.
- WILL SGA
- Indica che non invierà comandi
IAC GA, go ahead. - WILL STATUS
- Indica la volontà di inviare al client, dietro richiesta, lo stato corrente di tutte le opzioni TELNET.
- WILL TIMING-MARK
- qualora venga ricevuto un comando
DO TIMING-MARK risponde sempre con un WILL TIMING-MARK. - WILL LOGOUT
- Quando è ricevuto un
DO LOGOUT viene invieto in risposta un WILL LOGOUT e la sessione TELNET è chiusa. - WILL ENCRYPT
- Inviata solo se
telnetd è compilato con il supporto per la crittografia dei dati, e indica la volontà di decifrare il flusso dei dati.
telnetd ha il supporto per abilitare da remoto le seguenti opzioni TELNET:
- DO BINARY
- Inviato per indicare che telnetd vuole ricevere un flusso di dati a 8 bit.
- DO LFLOW
- Richiede che il client gestisca remotamente il controllo del flusso caratteri.
- DO ECHO
- Questo non è realmente supportato, ma è inviato per identificare un client
telnet(1) 4.2BSD, che risponderà impropriamente con WILL ECHO. Se un WILL ECHO viene ricevuto, un DONT ECHO verrà inviato in risposta. - DO TERMINAL-TYPE
- Indica un desiderio di poter richiedere il nome del tipo di terminale che è collegato al lato client della connessione.
- DO SGA
- Indica che non ha bisogno di ricevere
IAC GA, il comando go ahead. - DO NAWS
- Richiede che il client informi il server quando cambia la dimensione della finestra (display).
- DO TERMINAL-SPEED
- Indica un desiderio di poter richiedere infirmazioni sulla velocità della linea seriale a cui il client è collegato.
- DO XDISPLOC
- Indica un desiderio di poter richiedere il nome del display X windows associato con il client telnet.
- DO NEW-ENVIRON
- Indica un desiderio di poter richiedere informazioni sulle variabili d'ambiente, come descritto in RFC 1572.
- DO ENVIRON
- Indica un desiderio di poter richiedere informazioni sulle variabili d'ambiente, come descritto in RFC 1408.
- DO LINEMODE
- Inviato solo se
telnetd è compilato con il supporto per il linemode, e richiede che il client faccia un processamento linea per linea. - DO TIMING-MARK
- Inviato solo se
telnetd è compilato con il supporto sia per linemode che per kludge linemode, e il client ha risposto con WONT LINEMODE. Se il client risponde con WILL TM, allora si suppone che il client supporti kludge linemode. Notare che l'opzione [-k] può essere usata per disabilitare questo. - DO AUTHENTICATION
- Inviato solo se
telnetd è compilato con il supporto per l'autenticazione, e indica una volontà di ricevere informazioni di autenticazione per il login automatico. - DO ENCRYPT
- Inviata solo se
telnetd è compilato con il supporto per la crittografia dei dati, e indica la volontà di decifrare il flusso dei dati.
telnet(1), login(1), bftp(1) (se supportato)
RFC-854 - TELNET SPECIFICHE DEL PROTOCOLLO
RFC-855 - SPECIFICHE DELLE OPZIONI TELNET
RFC-856 - TRASMISSIONE BINARIA TELNET
RFC-857 - OPZIONE TELNET ECHO
RFC-858 - OPZIONE TELNET SOPPRESSIONE GO AHEAD
RFC-859 - OPZIONE STATO TELNET
RFC-860 - OPZIONE TELNET MARCATURA TEMPORALE
RFC-861 - OPZIONI TELNET ESTESE - ELENCO OPZIONI
RFC-885 - OPZIONE TELNET FINE DEL RECORD
RFC-1073 - Opzione Telnet dimensione finestra
RFC-1079 - Opzione Telnet velocità del terminale
RFC-1091 - Opzione Telnet tipo di terminale
RFC-1096 - Opzione Telnet locazione display X
RFC-1123 - Requisiti degli host Internet -- applicazione e supporto
RFC-1184 - Opzione Telnet Linemode
RFC-1372 - Opzione Telnet controllo remoto del flusso
RFC-1416 - Opzione autenticazione Telnet
RFC-1411 - Autenticazione Telnet: Kerberos Versione 4
RFC-1412 - Autenticazione Telnet: SPX
RFC-1571 - Opzione ambiente Telnet problemi di interoperabilità
RFC-1572 - Opzione ambiente Telnet
Alcuni comandi TELNET sono implementati solo parzialmente.
A causa dei bug nell'originale telnet(1) BSD 4.2, telnetd esegue alcuni scambi di protocollo dubbi per provare a scoprire se il client remoto è, in effetti, un telnet(1) 4.2 BSD.
La modalità binaria non ha interpretazioni comuni tranne tra sistemi operativi simili (Unix in questo caso).
Il nome del tipo di terminale ricevuto dal client remoto è convertito in minuscole.
telnetd non invia mai comandi TELNET IAC GA (go ahead).
La traduzione italiana di questa pagina di manuale è stata creata da Giulio Daprelà <giulio@pluto.it> e Marco Curreli <marcocurreli@tiscali.it>
Questa traduzione è documentazione libera; leggere la GNU General Public License Versione 3 o successiva per le condizioni di copyright. Non ci assumiamo alcuna responsabilità.
Per segnalare errori nella traduzione di questa pagina di manuale inviare un messaggio a pluto-ildp@lists.pluto.it