Il dial-in è quando impostate il vostro PC così che altri possano chiamare il vostro numero di telefono ed usare il vostro PC. Il "punto di vista" è il vostro PC. Quando componete un numero esterno dal vostro PC state nel contempo facendo un dial-in in un altro computer (ma non potete fare il dial-in nel vostro proprio computer).
Il dial-in funziona così. Qualcuno con un modem compone il vostro numero telefonico. Il vostro
modem risponde alla chiamata e si connette. Una volta che il chiamante è connesso, il
vostro PC invia un prompt di login al chiamante. Poi il chiamante si collega ed usa il vostro
PC. Usare il vostro PC significa che il chiamante ha un account di shell e può usare il
vostro PC proprio come se si fosse collegato tramite console (o terminale di testo).
Potrebbe anche significare che il collegamento è avvenuto tramite Internet. Il programma che
usate nel vostro PC per gestire il dial-in è chiamato getty
.
Spesso, dopo il login, viene lanciato un altro programma, inclusi programmi per connettere il chiamante ad Internet. Questo HOWTO non tratta detti programmi che vengono lanciati dopo il login. Per connettersi ad Internet, viene in genere lanciato il programma PPP (vedere il PPP-HOWTO, di cui una nuova revisione è imminente). Il login può essere automatizzato in modo che il programma di comunicazione automaticamente digiti un "name" e "password" ogni volta.
getty
è il programma che lanciate per il dial-in. Non ne avete bisogno per chiamate
verso l'esterno (dialout). Oltre a presentare un prompt di login, risponde anche al telefono.
Originariamente getty veniva usato per il login verso un computer da un terminale stupido.
È attualmente usato per il login verso una console Linux. Ci sono alcuni programmi getty
differenti con nomi leggermente diversi. Solo alcuni funzionano con i modem per il dialin.
Questo programma getty
viene in genere lanciato in fase di boot. Deve essere chiamato
dal file /etc/inittab. Potreste trovare un esempio in questo file di una chiamata a getty
nel quale potreste avere bisogno di fare qualche piccola modifica.
Se usate un programma getty diverso da quello mostato nell'esempio, allora dovreste apportare
delle modifiche importanti visto che le opzioni hanno diversi formati.
Ci sono quattro diversi programmi getty tra cui scegliere che possono essere usati coi
modem per il dialin: mgetty
, uugetty
, getty_em
e agetty
. Alcuni dettagli
vengono forniti nelle sottosezioni seguenti. getty
è il più semplice (e più debole) dei
quattro ed alcuni lo considerano principalmente da usarsi con terminali di testo
collegati direttamente. mgetty
supporta fax e voice mail, invece uugetty
no. mgetty
si
afferma manchi di alcune delle caratteristiche di ugetty
. getty_em
è una versione
semplificata di ugetty
. Quindi mgetty
è probabilmente la vostra scelta migliore
a meno che abbiate già familiarità con ugetty
(o troviate difficile reperire mgetty
).
La sintassi per questi programmi getty differisce, così assicuratevi di stare usando la
sintassi corretta in /etc/inittab
per qualsiasi getty usiate.
mgetty
fu scritto come rimpiazzo di uugetty
che esisteva molto prima di
mgetty
. Entrambi si possono usare con i modem. Sebbene mgetty
possa anche
essere usato per terminali direttamente connessi, la documentazione
per questa cosa è difficile
da trovare e mgetty (a metà 1999) non supporta il controllo di flusso software ( usato
da molti terminali) senza ricompilarlo. Questo difetto viene classificato come un bug.
Oltre a consentire login in dialup, mgetty
fornisce supporto FAX ed autoriconoscimento
del PPP. C'è un programma addizionale chiamato vgetty
che gestisce le caselle vocali per
alcuni modem.
La documentazione per mgetty
è buona (eccetto per le caselle vocali), e non necessita
di supplementi. Per cortesia riferitevi ad essa per le istruzioni di installazione. Potete
trovare le ultime informazioni su mgetty
a
http://www.leo.org/~doering/mgetty/ e
http://alpha.greenie.net/mgetty
getty_ps
contiene due programmi: getty
viene usato per le console ed i terminali,
e ugetty
per i modem. Greg Hankins (già autore del Serial-HOWTO) usava ugetty
così le sue considerazioni circa questo sono là incluse. Vedere
Uugetty.
Gli altri getty sono ben trattati dalla documentazione che li accompagna.
Questa è una versione semplificata di "uugetty". Fu scritta da Vern Hoxie dopo che fu completamente confuso dai complessi file di supporto che occorrono a getty_ps e uugetty.
Fa parte della raccolta di utilità ed informazioni relative alla porta seriale di Vern Hoxie reperibili tramite ftp da scicom.alphacdc.com.
Il nome della raccolta è "serial_suite.tgz". Quando eseguite il login in "scicom" come anonimi, dovete usare il vostro indirizzo e-mail completo come password. Ad esempio: greg.hankins@cc.gatech.edu
agetty
è una semplice e completamente funzionale implementazione di getty
che
meglio si adatta alle console virtuali od ai terminali piuttosto che per i modem. Ma,
date determinate condizioni favorevoli, funziona bene anche con i modem (a meno che voi
non eseguiate una chiamata quando agetty è in esecuzione in fase di attesa di chiamate).
agetty
nella distribuzione Debian viene semplicemente chiamata getty
.
mingetty
è un piccolo getty che funzionerà solo per le console (monitor), quindi non
si può usare con i modem per il dialin.
Il chiamante lancia un certo programma di configurazione che compone il vostro numero
di telefono ed il vostro telefono squilla. Ci sono due differenti modi nei quali il vostro
PC può rispondere al telefono. Un modo è che il modem risponda automaticamente alla
chiamata. L'altro modo è che getty rilevi lo squillo ed invii un comando al modem che gli
imponga di rispondere alla chiamata. Una volta che viene risposto alla chiamata, il vostro
modem invia dei toni all'altro modem (e viceversa). I due modem negoziano il modo con il
quale essi comunicheranno e quando finiscono il vostro modem invia un messaggio di
"CONNECT" (connessione) o simile a getty
. Quando getty
riceve questo messaggio
invia un prompt di login attraverso la porta seriale. Qualche volta getty
invoca
semplicemente un programma chiamato login
per gestire il login. getty
in genere
viene lanciato in fase di boot ma deve aspettare fino a quando viene effettuata una
connessione prima di fare partire il prompt di login.
Ora ulteriori dettagli sui due modi di rispondere ad una chiamata. Impostando il registro
S0 del modem a 3, il modem automaticamente risponde al terzo squillo. Se è impostato a
0 allora il modem risponderà alla chiamata solo se getty gli invia il comando
"A" (Risposta) mentre il telefono sta squillando. In realtà il comando è "ATA" visto che
tutti i comandi modem devono essere prefissati da "AT". Potreste pensare che sia meglio
utilizzare la capacità del modem di rispondere automaticamente alla chiamata, ma in
verità è meglio fare sì che sia getty
a rispondere. Se il modem non risponde
automaticamente, si parla di risposta manuale (anche se getty
la gestisce in modo
automatico).
Per il caso di risposta manuale, getty
apre la porta in fase di boot e resta in
ascolto. Quando il telefono squilla, un messaggio "RING" viene inviato a getty
che
sta ascoltando. Poi se getty
vuole rispondere allo squillo, invia al modem il
comando "ATA". Il modem poi esegue la connessione ed invia il messaggio "CONNECT ..." a
getty
che invia un prompt di login al chiamante.
Nel caso della risposta automatica, viene usata la linea CD "Carrier detect" (Portante rilevata)
che va dal modem alla porta seriale per rilevare quando viene fatta una connessione. Funziona
così. In fase di boot, getty
cerca di aprire la porta seriale, ma fallisce visto che
in genere non c'è segnale CD dal modem. Allora il programma getty
si ferma all'istruzione
di apertura (open) nel programma fino a che il segnale CD compare. Quando un segnale CD arriva
(forse ore dopo), allora la porta viene aperta e getty
invia il prompt di login.
Mentre getty
sta aspettando all'altezza dell'istruzione di apertura, altri processi
possono essere lanciati visto che Linux è un sistema operativo multiprocessing.
Quello che fa "svegliare" getty
è un interrupt che viene generato quando la linea CD
dal modem pone il suo stato ad on.
Potreste chiedervi come getty sia capace di aprire la porta seriale nel caso della risposta manuale visto che non vi è segnale CD. Bene, si può scrivere un programma per forzare l'apertura della porta anche se non è presente un segnale CD.
La differenza tra i due modi di risposta si palesa quando il computer è spento ma
il modem sta ancora lavorando.
Nel caso manuale, il messaggio "RING" viene inviato a getty ma visto che il computer
è spento, getty non è pronta, quindi non ci sarà mai risposta al telefono.
Non ci sono addebiti telefonici quando non si risponde alla chiamata. Nel caso della
risposta automatica, c'è risposta alla telefonata ma non verrà mai inviato un prompt
di login visto che il computer è spento. La bolletta cresce mentre l'attesa continua.
Se la chiamata è gratuita, non fa molta differenza, sebbene possa essere frustrante
attendere per un prompt di login che mai arriverà. mgetty
usa la risposta manuale.
uugetty
può fare questo tramite uno script di configurazione.
Si definisce callback quando qualcuno per primo chiama il vostro modem. Poi voi ottenete un po' di informazioni dal chiamante e lo richiamate. Perché si vuole fare questo? Una ragione è risparmiare sulla bolletta se voi potete telefonare al chiamante con tariffe più convenienti rispetto alle sue. Un altro è assicurarvi che il chiamante sia davvero colui che sostiene di essere. Se un chiamante vi contatta e dice di chiamare dal suo abituale numero telefonico, un modo per verificarlo è di effettuare una nuova chiamata a quel numero.
C'è un programma per Linux chiamato "callback" che funziona con mgetty. Si trova in ftp://ftp.icce.rug.nl/pub/unix/. Istruzioni passo-passo su come installarlo (e PPP) si trovano a http://www.stokely.com/unix.serial.port.resources/callback.html
La casella vocale è come una segreteria telefonica eseguita da un computer. Per fare questo dovete avere un modem con il supporto "voice" ed il relativo software. Invece di incidere i messaggi su nastro, essi vengono salvati in forma digitale sul disco. Quando qualcuno vi chiama, ascolterà un messaggio di benvenuto e poi può lasciare un messaggio per voi. Sistemi più avanzati possono avere caselle postali selezionabili dal chiamante e messaggi da fare ascoltare selezionabili dall'utente. Software gratuito è disponibile in Linux per la semplice risposta, ma non sembra essere ancora a disposizione per capacità più avanzate.
So di due diversi pacchetti di voicemail per Linux. Uno è minimale (vedere
Voicemail Software).
L'altro, più avanzato, ma attualmente scarsamente documentato, è vgetty
. È una
aggiunta opzionale al ben documentato e largamente distribuito programma mgetty
.
Supporta i comandi modem vocali tipo ZyXEL. Nella distribuzione Debian potete ottenere
il pacchetto mgetty-voice in aggiunta al pacchetto mgetty e mgetty-doc.
La documentazione obsoleta è stata rimossa da mgetty, ma quella messa al suo posto è
latitante (a meno che voi usiate l'opzione -h (aiuto) quando lanciate certi programmi,
ecc). Ma si potrebbero consultare i messaggi circa l'uso che vengono inviati nel
newsgroup di mgetty. Vedere
About mgetty e >.
Sembra che vgetty
sia attualmente non molto stabile ma che venga
usato con successo e che
il suo sviluppo continui. Se questa è l'ultima versione di questo HOWTO qualcuno che
è familiare con vgetty mi faccia cortesemente sapere lo stato attuale delle cose.