Accesso via modem ad un server Linux: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
mNo edit summary |
||
| (4 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
==Configurazione Server== | |||
Collegare il modem alla seriale | *Collegare il modem alla seriale | ||
COM1=ttyS0 | |||
COM2=ttyS1 | |||
Installare mgetty | *Installare mgetty | ||
sudo apt-get install mgetty | sudo apt-get install mgetty | ||
Abilitare | *Abilitare l'execuzione di mgetty da inittab: | ||
sudoedit /etc/inittab | sudoedit /etc/inittab | ||
... | ... | ||
T0:2345:respawn:/sbin/mgetty ttyS0 | |||
*Impostare la configurazione del Modem. È importante usare un baudrate di 38400, non superiore, altrimenti al login si ricevono dei garbage: | |||
sudoedit /etc/mgetty/mgetty.config | |||
<pre> | |||
... | |||
port ttyS0 | |||
debug 9 | |||
data-only y | |||
init-chat "" AT&F OK AT&C1 OK AT&D3 OK ATV1 OK ATS0=0 OK ATE1 OK ATL3 OK ATM1 | |||
speed 38400 | |||
modem-type data | |||
autobauding no | |||
... | |||
</pre> | |||
*Far rileggere la configurazione di inittab: | |||
sudo init q | sudo init q | ||
* Killare mgetty, che verrà riavviato da inittab: | |||
sudo kill $(pidof mgetty) | |||
* Il log dirà: | |||
sudo tail -f /var/log/mgetty/mg_ttyS0.log | |||
<pre> | |||
-- | |||
08/14 13:21:34 yS0 mgetty: interim release 1.1.36-Jun15 | |||
08/14 13:21:34 yS0 check for lockfiles | |||
08/14 13:21:34 yS0 checklock: stat failed, no file | |||
08/14 13:21:34 yS0 locking the line | |||
08/14 13:21:34 yS0 makelock(ttyS0) called | |||
08/14 13:21:34 yS0 do_makelock: lock='/var/lock/LCK..ttyS0' | |||
08/14 13:21:34 yS0 lock made | |||
08/14 13:21:34 yS0 tio_get_rs232_lines: status: RTS CTS DSR DTR | |||
08/14 13:21:34 yS0 lowering DTR to reset Modem | |||
08/14 13:21:35 yS0 tss: set speed to 38400 (017) | |||
08/14 13:21:35 yS0 tio_set_flow_control( HARD ) | |||
08/14 13:21:35 yS0 waiting for line to clear (VTIME=1), read: | |||
08/14 13:21:35 yS0 send: AT&F[0d] | |||
08/14 13:21:35 yS0 waiting for ``OK'' | |||
08/14 13:21:35 yS0 got: AT&F[0d] | |||
08/14 13:21:35 yS0 CND: AT&F[0d][0a]OK ** found ** | |||
08/14 13:21:35 yS0 send: AT&C1[0d] | |||
08/14 13:21:35 yS0 waiting for ``OK'' | |||
08/14 13:21:35 yS0 got: [0d] | |||
08/14 13:21:35 yS0 CND: OK[0a]AT&C1[0d] | |||
08/14 13:21:35 yS0 CND: AT&C1[0d][0a]OK ** found ** | |||
08/14 13:21:35 yS0 send: AT&D3[0d] | |||
08/14 13:21:35 yS0 waiting for ``OK'' | |||
08/14 13:21:35 yS0 got: [0d] | |||
08/14 13:21:35 yS0 CND: OK[0a]AT&D3[0d] | |||
08/14 13:21:35 yS0 CND: AT&D3[0d][0a]OK ** found ** | |||
08/14 13:21:35 yS0 send: ATV1[0d] | |||
08/14 13:21:35 yS0 waiting for ``OK'' | |||
08/14 13:21:35 yS0 got: [0d] | |||
08/14 13:21:35 yS0 CND: OK[0a]ATV1[0d] | |||
08/14 13:21:35 yS0 CND: ATV1[0d][0a]OK ** found ** | |||
08/14 13:21:36 yS0 send: ATS0=0[0d] | |||
08/14 13:21:36 yS0 waiting for ``OK'' | |||
08/14 13:21:36 yS0 got: [0d] | |||
08/14 13:21:36 yS0 CND: ATS0=0[0d][0a]OK ** found ** | |||
08/14 13:21:36 yS0 send: ATE1[0d] | |||
08/14 13:21:36 yS0 waiting for ``OK'' | |||
08/14 13:21:36 yS0 got: [0d] | |||
08/14 13:21:36 yS0 CND: OK[0a]ATE1[0d] | |||
08/14 13:21:36 yS0 CND: ATE1[0d][0a]OK ** found ** | |||
08/14 13:21:36 yS0 send: ATL3[0d] | |||
08/14 13:21:36 yS0 waiting for ``OK'' | |||
08/14 13:21:36 yS0 got: [0d] | |||
08/14 13:21:36 yS0 CND: OK[0a]ATL3[0d] | |||
08/14 13:21:36 yS0 CND: ATL3[0d][0a]OK ** found ** | |||
08/14 13:21:36 yS0 send: ATM1[0d] | |||
08/14 13:21:36 yS0 waiting for ``OK'' | |||
08/14 13:21:36 yS0 got: [0d] | |||
08/14 13:21:36 yS0 CND: OK[0a]ATM1[0d] | |||
08/14 13:21:36 yS0 CND: ATM1[0d][0a]OK ** found ** | |||
08/14 13:21:36 yS0 send: ATX0[0d] | |||
08/14 13:21:36 yS0 waiting for ``OK'' | |||
08/14 13:21:36 yS0 got: [0d] | |||
08/14 13:21:36 yS0 CND: OK[0a]ATX0[0d] | |||
08/14 13:21:36 yS0 CND: ATX0[0d][0a]OK ** found ** | |||
08/14 13:21:36 yS0 waiting for line to clear (VTIME=3), read: [0d][0a] | |||
08/14 13:21:37 yS0 removing lock file | |||
08/14 13:21:37 yS0 waiting... | |||
</pre> | |||
* Controllare che ci si possa loggare dalla seriale utilizzata: | |||
sudoedit /etc/securetty | |||
... | |||
ttyS0 | |||
... | |||
* Controllare che mgetty lanci il programma di login corretto: | |||
sudoedit /etc/mgetty/login.config | |||
... | |||
* - - /bin/login @ | |||
... | |||
* Se tutto è corretto, abbassare sul server il debug di mgetty | |||
sudoedit /etc/mgetty/mgetty.config; sudo init q; sudo kill $(pidof mgetty) | |||
port ttyS0 | |||
debug 2 | |||
... | |||
==Configurazione Client== | |||
* Si utilizza minicom per connettersi: | |||
sudo apt-get install minicom | |||
* Impostare le permission della seriale usata: | |||
sudo chmod 0664 /dev/ttyS0 | |||
sudo chown :dialout /dev/ttyS0 | |||
* Assegnare il gruppo dialout al proprio utente: | |||
sudo gpasswd -a mnt.vvngrl dialout | |||
' | * Sloggarsi e riloggarsi per attivare l'appartenenza al gruppo. | ||
*Impostare la configurazione di minicom: | |||
<pre> | <pre> | ||
cat > $HOME/.minirc.dfl <<EOFile | cat > $HOME/.minirc.dfl <<EOFile | ||
# Machine-generated file - use setup menu in minicom to change parameters. | # Machine-generated file - use setup menu in minicom to change parameters. | ||
pu | pu port /dev/ttyS0 | ||
pu baudrate | pu baudrate 38400 | ||
pu bits 8 | |||
pu parity N | |||
pu stopbits 1 | |||
pu minit ~^M~AT S7=120 S0=0 L1 V1 X4 &c1 E1 Q0^M | pu minit ~^M~AT S7=120 S0=0 L1 V1 X4 &c1 E1 Q0^M | ||
pu mdialpre ATDT0, | |||
pu mdialtime 120 | pu mdialtime 120 | ||
pu | pu mautobaud Yes | ||
pu escape-key ^P | |||
EOFile | EOFile | ||
</pre> | </pre> | ||
Questo file imposta le velocità corrette della seriale, inizilizza il modem, ed '''IMPOSTA ANCHE LA HOTKEY PER I MENU DI MINICOM A CTRL-P IN MODO CHE SI POSSA USARE MINICOM DA SCREEN'''. | |||
Se si lancia minicom da una schermata screen, E NON SI CAMBIA LA HOTKEY IN ctrl-p, per fare ctrl-a-o fare ctrl-a-a-o. | |||
* Chiamare il numero: | |||
atdt0,0123456789 | |||
* Si ottiene la schermata di login: | |||
Debian GNU/Linux ttyS0 38400 () | |||
firess login: | |||
* Se si vuole si può settare una connesione con Minicom e chiamare il numero a cui è collegato il modem. | |||
* Se la seconda volta non si riesce a collegarsi, o si blocca appena fatto login, può essere il cavo o il &D3 che non viene mantenuto (Vedi man mgetty) | |||
* Se tutto è corretto, abbassare sul server il debug di mgetty | |||
sudoedit /etc/mgetty/mgetty.config; sudo init q; sudo kill $(pidof mgetty) | |||
port ttyS0 | |||
debug 2 | |||
... | |||
== Riferimenti == | == Riferimenti == | ||
*[http:// | *[http://mgetty.greenie.net/ Mgetty + Sendfax Documentation Centre] | ||
*[http://markmail.org/message/wks44bymu5dhd3k7#query:mgetty%20garbage+page:1+mid:uzy5sssmhoa4nh2t+state:results Re: PPPD + Mgetty stopped working - Richard Wackerbarth - org.freebsd.freebsd-stable - MarkMail] | |||
Latest revision as of 12:13, 14 August 2009
Configurazione Server
- Collegare il modem alla seriale
COM1=ttyS0 COM2=ttyS1
- Installare mgetty
sudo apt-get install mgetty
- Abilitare l'execuzione di mgetty da inittab:
sudoedit /etc/inittab ... T0:2345:respawn:/sbin/mgetty ttyS0
- Impostare la configurazione del Modem. È importante usare un baudrate di 38400, non superiore, altrimenti al login si ricevono dei garbage:
sudoedit /etc/mgetty/mgetty.config
... port ttyS0 debug 9 data-only y init-chat "" AT&F OK AT&C1 OK AT&D3 OK ATV1 OK ATS0=0 OK ATE1 OK ATL3 OK ATM1 speed 38400 modem-type data autobauding no ...
- Far rileggere la configurazione di inittab:
sudo init q
- Killare mgetty, che verrà riavviato da inittab:
sudo kill $(pidof mgetty)
- Il log dirà:
sudo tail -f /var/log/mgetty/mg_ttyS0.log
-- 08/14 13:21:34 yS0 mgetty: interim release 1.1.36-Jun15 08/14 13:21:34 yS0 check for lockfiles 08/14 13:21:34 yS0 checklock: stat failed, no file 08/14 13:21:34 yS0 locking the line 08/14 13:21:34 yS0 makelock(ttyS0) called 08/14 13:21:34 yS0 do_makelock: lock='/var/lock/LCK..ttyS0' 08/14 13:21:34 yS0 lock made 08/14 13:21:34 yS0 tio_get_rs232_lines: status: RTS CTS DSR DTR 08/14 13:21:34 yS0 lowering DTR to reset Modem 08/14 13:21:35 yS0 tss: set speed to 38400 (017) 08/14 13:21:35 yS0 tio_set_flow_control( HARD ) 08/14 13:21:35 yS0 waiting for line to clear (VTIME=1), read: 08/14 13:21:35 yS0 send: AT&F[0d] 08/14 13:21:35 yS0 waiting for ``OK'' 08/14 13:21:35 yS0 got: AT&F[0d] 08/14 13:21:35 yS0 CND: AT&F[0d][0a]OK ** found ** 08/14 13:21:35 yS0 send: AT&C1[0d] 08/14 13:21:35 yS0 waiting for ``OK'' 08/14 13:21:35 yS0 got: [0d] 08/14 13:21:35 yS0 CND: OK[0a]AT&C1[0d] 08/14 13:21:35 yS0 CND: AT&C1[0d][0a]OK ** found ** 08/14 13:21:35 yS0 send: AT&D3[0d] 08/14 13:21:35 yS0 waiting for ``OK'' 08/14 13:21:35 yS0 got: [0d] 08/14 13:21:35 yS0 CND: OK[0a]AT&D3[0d] 08/14 13:21:35 yS0 CND: AT&D3[0d][0a]OK ** found ** 08/14 13:21:35 yS0 send: ATV1[0d] 08/14 13:21:35 yS0 waiting for ``OK'' 08/14 13:21:35 yS0 got: [0d] 08/14 13:21:35 yS0 CND: OK[0a]ATV1[0d] 08/14 13:21:35 yS0 CND: ATV1[0d][0a]OK ** found ** 08/14 13:21:36 yS0 send: ATS0=0[0d] 08/14 13:21:36 yS0 waiting for ``OK'' 08/14 13:21:36 yS0 got: [0d] 08/14 13:21:36 yS0 CND: ATS0=0[0d][0a]OK ** found ** 08/14 13:21:36 yS0 send: ATE1[0d] 08/14 13:21:36 yS0 waiting for ``OK'' 08/14 13:21:36 yS0 got: [0d] 08/14 13:21:36 yS0 CND: OK[0a]ATE1[0d] 08/14 13:21:36 yS0 CND: ATE1[0d][0a]OK ** found ** 08/14 13:21:36 yS0 send: ATL3[0d] 08/14 13:21:36 yS0 waiting for ``OK'' 08/14 13:21:36 yS0 got: [0d] 08/14 13:21:36 yS0 CND: OK[0a]ATL3[0d] 08/14 13:21:36 yS0 CND: ATL3[0d][0a]OK ** found ** 08/14 13:21:36 yS0 send: ATM1[0d] 08/14 13:21:36 yS0 waiting for ``OK'' 08/14 13:21:36 yS0 got: [0d] 08/14 13:21:36 yS0 CND: OK[0a]ATM1[0d] 08/14 13:21:36 yS0 CND: ATM1[0d][0a]OK ** found ** 08/14 13:21:36 yS0 send: ATX0[0d] 08/14 13:21:36 yS0 waiting for ``OK'' 08/14 13:21:36 yS0 got: [0d] 08/14 13:21:36 yS0 CND: OK[0a]ATX0[0d] 08/14 13:21:36 yS0 CND: ATX0[0d][0a]OK ** found ** 08/14 13:21:36 yS0 waiting for line to clear (VTIME=3), read: [0d][0a] 08/14 13:21:37 yS0 removing lock file 08/14 13:21:37 yS0 waiting...
- Controllare che ci si possa loggare dalla seriale utilizzata:
sudoedit /etc/securetty
... ttyS0 ...
- Controllare che mgetty lanci il programma di login corretto:
sudoedit /etc/mgetty/login.config
... * - - /bin/login @ ...
- Se tutto è corretto, abbassare sul server il debug di mgetty
sudoedit /etc/mgetty/mgetty.config; sudo init q; sudo kill $(pidof mgetty)
port ttyS0 debug 2 ...
Configurazione Client
- Si utilizza minicom per connettersi:
sudo apt-get install minicom
- Impostare le permission della seriale usata:
sudo chmod 0664 /dev/ttyS0 sudo chown :dialout /dev/ttyS0
- Assegnare il gruppo dialout al proprio utente:
sudo gpasswd -a mnt.vvngrl dialout
- Sloggarsi e riloggarsi per attivare l'appartenenza al gruppo.
- Impostare la configurazione di minicom:
cat > $HOME/.minirc.dfl <<EOFile # Machine-generated file - use setup menu in minicom to change parameters. pu port /dev/ttyS0 pu baudrate 38400 pu bits 8 pu parity N pu stopbits 1 pu minit ~^M~AT S7=120 S0=0 L1 V1 X4 &c1 E1 Q0^M pu mdialpre ATDT0, pu mdialtime 120 pu mautobaud Yes pu escape-key ^P EOFile
Questo file imposta le velocità corrette della seriale, inizilizza il modem, ed IMPOSTA ANCHE LA HOTKEY PER I MENU DI MINICOM A CTRL-P IN MODO CHE SI POSSA USARE MINICOM DA SCREEN. Se si lancia minicom da una schermata screen, E NON SI CAMBIA LA HOTKEY IN ctrl-p, per fare ctrl-a-o fare ctrl-a-a-o.
- Chiamare il numero:
atdt0,0123456789
- Si ottiene la schermata di login:
Debian GNU/Linux ttyS0 38400 ()
firess login:
- Se si vuole si può settare una connesione con Minicom e chiamare il numero a cui è collegato il modem.
- Se la seconda volta non si riesce a collegarsi, o si blocca appena fatto login, può essere il cavo o il &D3 che non viene mantenuto (Vedi man mgetty)
- Se tutto è corretto, abbassare sul server il debug di mgetty
sudoedit /etc/mgetty/mgetty.config; sudo init q; sudo kill $(pidof mgetty)
port ttyS0 debug 2 ...