TELNETD(8) | System Manager's Manual | TELNETD(8) |
telnetd
Protocollo —
DARPA del server TELNET
/usr/libexec/telnetd
[-BUhlkns
] [-D
debugmode]
[-I
initid]
[-S
tos]
[-X
authtype]
[-a
authmode]
[-edebug
]
[-r
lowpty-highpty]
[-u
len]
[-debug
[port]]
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)). L'opzione -debug
può essere usata per avviare telnetd
manualmente invece che attraverso inetd(8). Se avviato in
questo modo, la porta può essere specificata
per far funzionare telnetd
su un numero di porta TCP
alternativo.
Il comando telnetd
accetta le seguenti
opzioni:
-a
authmodetelnetd
è stato compilato con
il supporto per l'opzione di AUTENTICAZIONE
. Ci
sono molti valori validi per authmode:
-una
valida
.-B
telnetd
fa avviare al login una sessione
bftp(1) invece della normale shell utente. Nella
modalità demone bftp i normali login non sono supportati, e devono
essere usati su una porta diversa dalla normale porta TELNET.-D
debugmodetelnetd
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
report
opzioni
più
alcune informazioni addizionali su quale processo sta
funzionando.netdata
telnetd.
ptydata
exercise
-debug
telnetd
(vedere SO_DEBUG
in socket(2)).-edebug
telnetd
è stato compilato con il
supporto per la crittografia dei dati, allora l' opzione
-edebug
può essere usata per abilitare il
codice di debugging della cifratura.-h
-I
initidID
da
/etc/inittab da usare quando init avvia le
sessioni di login. L' ID
di default è
fe.
-k
telnetd
è stato compilato con entrambi i supporti linemode e kludge
linemode. Se è specificata l'opzione -k
allora il client remoto non suporta l'opzione
LINEMODE
, quindi telnetd
opererà nella modalità a un carattere per volta. Esso
supporterà ancora il kludge linemode, ma andrà in kludge
linemode solo se il client remoto lo richiede. (Questo è fatto dal
client inviando DONT SUPPRESS-GO-AHEAD
e
DONT ECHO
.) L'opzione -k
è molto utile quando ci sono client remoti che non supportano il
kludge linemode, ma passa l'euristica (se essi rispondono con
WILL TIMING-MARK
in risposta a DO
TIMING-MARK)
per il supporto kludge linemode.-l
LINEMODE
non è supportata, esso si
porterà nel kludge linemode.-n
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.-r
lowpty-highptytelnetd
è compilato per
UNICOS.
Essa specifica un insieme inclusivo di
dispositivi pseudo-terminale da usare. Se il sistema ha configurato la
variabile sysconf _SC_CRAY_NPTY
il range di
ricerca di default delle pty è da 0 a
_SC_CRAY_NPTY;
altrimenti il range di default
è da 0 a 128. Uno tra lowpty o
highpty può essere omesso per permettere il
cambiamento di uno dei due estremi del range di ricerca. Se
lowpty è omesso il - carattere è
sempre necessario in modo che telnetd
possa
differenziare highpty da
lowpty.-s
telnetd
p compilato con il supporto per le schede SecurID. Essa fa sì che
l'opzione -s
sia passata a
login(1), e quindi sia utile solo se
login(1) supporta l'opzione -s
per indicare che solo i login validati da SecurID sono permessi, ed
è normalmente utile per controllare i login remoti dall'esterno di
un firewall.-S
tos-u
lenutmp
che contiene il nome
dell'host remoto. Se il nome risolto dell'host è più lungo
di len, sarà invece usato il valore decimale.
Questo permette agli host con nomi molto lunghi fuoriescono da questo
campo di essere ancora identificati univocamente. Specificare
-u0
indica che solo gli indirizzi decimali devono
essere messi nel file utmp.-U
telnetd
rifiuti
connessioni da indirizzi che non possono essere mappati di nuovo in un
nome simbolico attraverso la routine
gethostbyaddr(3).-X
authtypetelnetd
è 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
.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 following
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:
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.IAC GA,
go
ahead.DO TIMING-MARK
risponde sempre con un WILL TIMING-MARK
DO LOGOUT
viene
invieto in risposta un WILL LOGOUT
e la sessione
TELNET è chiusa.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:
WILL ECHO.
Se
un WILL ECHO
viene ricevuto, un
DONT ECHO
verrà inviato in risposta.IAC GA,
il
comando go ahead.telnetd
è compilato con il
supporto per il linemode, e richiede che il client faccia un processamento
linea per linea.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.telnetd
è compilato con il
supporto per l'autenticazione, e indica una volontà di ricevere
informazioni di autenticazione per il login automatico.telnetd
è compilato con il
supporto per la cifratura dei dati, e indica la volontà di
decifrare il flusso dei dati./etc/services
/etc/inittab (solo sistemi UNICOS)
/etc/iptos (se supportato)
/usr/ucb/bftp (se supportato)
RFC-854
RFC-855
RFC-856
RFC-857
RFC-858
RFC-859
RFC-860
RFC-861
RFC-885
RFC-1073
RFC-1079
RFC-1091
RFC-1096
RFC-1123
RFC-1184
RFC-1372
RFC-1416
RFC-1411
RFC-1412
RFC-1571
RFC-1572
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).
1 giugno 1994 | BSD 4.2 |