Manpages

NOME

rlogind — server di login remoto

SINTASSI

rlogind [−aln]

DESCRIZIONE

Rlogind è il server per il programma rlogin(1). Il server fornisce un servizio di login remoto con autenticazione basata su numeri di porta privilegiati da host di fiducia.

Opzioni supportate da rlogind:

−a

Chiede la verifica del nome host.

−l

Impedisce l’autenticazione basata sul file degli utenti ’’.rhosts’’ a meno che l’utente acceda come superutente.

−n

Disabilita i messaggi keep-alive.

Rlogind ascolta le richieste di servizi alla porta indicata nella specifica del servizio ’’login’’; vedere services(5). Quando viene ricevuta una richiesta di servizio viene iniziato il seguente protocollo:

1.

Il server verifica la porta sorgente del client. Se la porta non è nel campo 512-1023, il server abortisce la connessione.

2.

Il server verifica l’indirizzo sorgente del client e richiede il corrispondente nome host (vedere gethostbyaddr(3), hosts(5) e named(8)). Il nome host non può essere determinato, è usata la rappresentazione della notazione a punto dell’indirizzo dell’host. Se il nome dell’host è nello stesso dominio del server (in accordo alle ultime due componenti del nome di dominio), o se viene data l’opzione −a, è richiesto l’indirizzo del nome host, verificando che nome e indirizzo corrispondano. L’autenticazione normale è byassata se la verifica dell’ indirizzo fallisce.

Quando porta sorgente e indirizzo sono stati verificati, rlogind procede con il processo di autenticazione descritto in rshd(8). Esso quindi alloca uno pseudo terminale (vedere pty(4)), e manipola i descrittori file in modo che la metà slave degli pseudoterminali diventa stdin, stdout, e stderr per un processo di login. Il processo di login è un’istanza del programma login(1) invocato con l’opzione −f se l’autenticazione ha avuto successo. Se l’autenticazione automatica fallisce, all’utente è richiesto di effettuare il log in come su una linea di terminale standard.

Il genitore del processo di login manipola il lato principale dello pseudoterminale, operando come intermediario tra il processo di login e l’istanza del client del programma rlogin. In operazioni normali, il protocollo del pacchetto descritto in pty(4) è invocato per fornire servizi di tipo ’^S/^Q’ e propagare i segnali di interrupt ai programmi remoti. Il processo di login propaga il baud rate del terminale del client e il tipo di terminale, come trovato nella variabile d’ambiente ’TERM’; vedere environ(7). La dimensione dello schermo o della finestra terminale è richiesta dal client, e le dimensioni della finestra del client sono propagate allo pseudo terminale.

I messaggi keepalive a livello trasporto sono abilitati a meno che non sia presente l’opzione −n. L’uso dei messaggi keepalive permette alle sessioni di scadere se il client va in crash o diviene non raggiungibile.

DIAGNOSTICA

tutti i messaggi iniziali di diagnostica sono indicati da un byte iniziale con un valore di 1, dopo il quale tutte le connessioni di rete vengono chiuse. Se non ci sono errori prima che il login sia invocato, è restituito un byte null come indicazione di successo.

Try again.

Un fork del server è fallito.

VEDERE ANCHE

login(1), ruserok(3), rshd(8)

BUG

La procedura di autenticazione usata qui presume l’integrità di ciascuna macchina client e del mezzo di connessione. Questo non è sicuro, ma è utile in un ambiente ’’open’’.

Deve essere presente un servizio che permetta la cifratura di tutti gli scambi di dati.

Dovrebbe essere usato un protocollo più estendibile.

STORIA

Il comando rlogind è apparso nella 4.2BSD.