Se avete un file .rhosts nella home directory, vi permetterà di far girare remotamente programmi su questa macchina; potrete cioè essere collegati alla macchina cs.oberlin.edu, e con un file .rhosts ben configurato su floss.life.uiuc.edu far girare un programma su floss.life.uiuc.edu e far arrivare l'output su cs.oberlin.edu, senza nemmeno dovervi collegare o digitare la password.
Un file .rhosts è fatto così:
160#160
Il formato è abbastanza chiaro: il nome di una macchina, seguito dal nome dell'utente. Supponiamo che questo esempio sia il mio file .rhosts su floss.life.uiuc.edu: ciò significherebbe che potrei far girare dei programmi su floss, con l'output visualizzato su una qualsiasi delle macchine elencate, fintanto che io fossi collegato con il nome di utente corrispondente.
Il meccanismo esatto con cui si fa girare un programma remoto è di solito il programma rsh, che sta per ``remote shell'', e quello che fa è inizializzare una shell su una macchina remota ed eseguire un comando specificato. Ad esempio:
161#161
L'utente trixie su floss.life.uiuc.edu, che ha il file .rhosts di esempio riportato qui sopra, permette esplicitamente a trixie su frobbo.hoola.com di far girare programmi come trixie da floss.
Non c'è bisogno di avere lo stesso nome di utente su tutte le macchine per far funzionare bene un file .rhosts. Usate l'opzione ``-l'' con rsh, per dire alla macchina remota quale nome di utente usare per fare login. Se quel nome di utente esiste sulla macchina remota, ed ha un file .rhosts con la macchina ed il nome di utente su cui siete collegati, rsh funzionerà.
162#162
Tutto questo funzionerà se l'utente larry su floss.life.uiuc.edu ha un file .rhosts che permette all'utente trixie da frobbo.hoopla.com di far girare dei programmi sul suo account. Se sono o meno la stessa persona è irrilevante: le uniche cose importanti sono i nomi degli utenti, i nomi delle macchine e le voci nel file .rhosts di larry su floss. Notate che il file .rhosts di trixie su frobbo non c'entra niente, importa solo quello sulla macchina remota.
Ci sono altre combinazioni che possono entrare in un file .rhosts--ad esempio, si può lasciare vuoto il nome dell'utente dopo il nome di una macchina remota, per permettere a tutti gli utenti di quella macchina di far girare programmi sulla macchina locale! Questo è, naturalmente, un rischio per la sicurezza: qualcuno potrebbe far girare un programma che rimuove i vostri file, solo avendo un account su una determinata macchina. Se fate cose come lasciare bianco il nome dell'utente, vi dovreste accertare che il file .rhosts è leggibile solo da voi.