Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 7ce9f5a38ba3a7d20482e74d18086033 > files > 119

howto-text-it-2006-5mdv2010.0.noarch.rpm

  PPP-over-minicom mini-HOWTO
  Winfried Trümper (winni@xpilot.org)
  v0.2 01 Maggio 1998

  Desiderate controllare il PPP utilizzando una utility controllata da
  un menù? Un database facile ma potente con i numeri di telefono del
  vostro ISP? Volete vedere cosa succede quando vi loggate? Allora
  questo mini-HOWTO è per voi!
  ______________________________________________________________________

  Indice Generale


  1. Introduzione
     1.1 Il programma terminale "minicom"
     1.2 Commenti e critiche
     1.3 Bug conosciuti

  2. Effettuare una chiamata con minicom
     2.1 Configurare minicom
     2.2 Far partire PPP manualmente
     2.3 Valutare i file di log
     2.4 Configurare un numero telefonico
     2.5 Uno script di login
     2.6 Connessione automatizzata alla partenza di minicom
     2.7 Estensioni future


  ______________________________________________________________________

  11..  IInnttrroodduuzziioonnee

  PPP è diventato il protocollo standard per collegarsi ad internet
  tramite connessione dialup. Il demone associato "pppd" comprende una
  utility molto primitiva per il collegamento, che gestisce bene
  solamente configurazioni molto semplici.

  Questo mini-HOWTO descrive una soluzione alternativa basata su
  "minicom".


  11..11..  IIll pprrooggrraammmmaa tteerrmmiinnaallee ""mmiinniiccoomm""

  "minicom" è un programma molto complicato per collegarsi ad altri
  computer (ISP o BBS). Ha un menù colorato, un database delle
  connessioni dialup e un potente linguaggio di scripting. Così viene
  idealmente adattato per l'uso in congiunzione con "pppd".


  11..22..  CCoommmmeennttii ee ccrriittiicchhee

  Sono solamente interessato a commenti e critiche che possano
  migliorare questo mini-HOWTO. Non risponderò a domande generali su
  Linux, PPP, SLIP o networking.


  11..33..  BBuugg ccoonnoosscciiuuttii

  Al tempo della scrittura, sembrava che ci fossero alcuni bug in
  "minicom", "runscript" e il metodo descritto sotto:

  ·  "runscript" non aspetta che i programmi esterni finiscano



  print "blah"
  ! sleep 10
  print "blup"



  Questo script esce immediatamente (ma non quando lo si analizza
  tramite strace...)

  ·  "pppd" si impossessa del dispositivo seriale negandolo a minicom
     (quando non alimentato da stdin)
     Sembra che Miquel van Smoorenburg (l'autore di minicom) sia troppo
     occupato per mettersi a lavorare sul problema di cui sopra. Indi
     per cui volontari sono benvenuti.


  22..  EEffffeettttuuaarree uunnaa cchhiiaammaattaa ccoonn mmiinniiccoomm

  Molte guide su PPP raccomandano di lasciare minicom dopo che è stato
  usato per collegarsi. Ma non c'è in realtà alcuna ragione per lasciare
  questo confortevole programma...


  22..11..  CCoonnffiigguurraarree mmiinniiccoomm

  Eseguite "minicom -s" e scegliete dal menù la voce "Serial port
  setup". La prima voce dovrebbe essere "Serial Device".  Questa è
  l'opzione più importante: il dispositivo seriale a cui è collegato il
  vostro modem.  (Qualche volontario per fare in modo che minicom
  gestisca più dispositivi seriali alla volta?)

  Per avere il nome del file del dispositivo, al quale è collegato il
  vostro modem, digitate i seguenti commandi:



       for i in 0 1 2 3
       do
         if (chat -v -t 5 "" ATZ "" \\d "" ATZ OK "" > /dev/ttyS$i < /dev/ttyS$i)
         then
            echo "Modem in /dev/ttyS$i (= COM$[$i+1] sotto DOS)"
         else
            echo "Nessun Modem trovato in ttyS$i."
         fi
       done



  Il codice sopra assicura che il modem sia configurato correttamente.
  Alcune persone hanno problemi con i modem plug-and-play, il che
  dimostra che "plug-and-play" è più che una "lite" di mercato.

  Adesso provate a comporre un numero col comando "atdt5" (dt sta per
  "componi usando il metodo a toni"). Se non sentite un dialtone,
  controllate i cablaggi. Il vostro modem protesterà con il messaggio
  "no dialtone" e annullerà il comando. Se il vostro sistema telefonico
  non ha un dialtone, potete voler dirlo al vostro modem con "x3",
  perciò il comando da provare è "atx3dt5".

  Se ottenete il dialtone, ma la composizione non ha effetto, allora
  potete riprovare con il metodo "pulse dialing" (usate "dp" invece del
  "dt" di prima). In ogni caso, premete la barra spazio per interrompere
  l'ultimo comando.

  Prendete nota del comando che ha successo. Infine andate su "Modem and
  dialing parameter setup" in minicom e modificate "Dialing prefix" per
  adattarvi ai vostri bisogni. Potete inserire "l0m0" direttamente dopo
  AT per spegnere lo speaker prima di prendere la linea telefonica.


  22..22..  FFaarr ppaarrttiirree PPPPPP mmaannuuaallmmeennttee

  Può darsi che abbiate già provato a comporre il numero telefonico del
  vostro ISP invece di "5". Avete visto caratteri divertenti sullo
  schermo dopo il login (altrimenti, digitate "ppp")?  Risultano dal
  "pppd" (o equivalente) fatto partire all'altra parte della linea. Se è
  così, potete provare a far partire il pppd daemon sul vostro sistema e
  poi valutare i file di log.

  Per far partire "pppd" dentro minicom, potete definire un nuovo metodo
  di upload (capite da soli come) o ridefinire l'opzione "kermit
  program" dal menù di configurazione "Filename and paths":



       A - Download directory :
       B -   Upload directory :
       C -   Script directory :
       D -     Script program : /usr/bin/runscript
       E -     Kermit program : /usr/sbin/pppd file /etc/ppp/mini_options



  Adesso se vedete quei caratteri divertenti la prossima volta che vi
  collegate al vostro ISP potete premere <Alt-K> per far partire "pppd".

  Il resto di questo mini-HOWTO si occupa di automatizzare il processo
  di login e di partenza di "pppd".


  22..33..  VVaalluuttaarree ii ffiillee ddii lloogg

  Sebbene io non voglia spiegare come PPP deve essere configurato, do un
  breve consiglio su come leggere il file di log. Per estrarre le
  informazioni essenziali dal file di log "/var/log/debug" (o
  l'altervativo "/var/log/daemon.log") eseguite i comandi


       tail -n 40  /var/log/debug |\
               grep -E " pppd\[[0-9]*\]:" |\
               sed -e "s/^.*pppd\[/[/"



  Dovreste vedere messaggi del tipo



       sent [LCP ConfReq id=0x1 <mru 296>]
       rcvd [LCP ConfRej id=0x1 <mru 296>]



  che indicano che abbiamo spedito una config-request per configurare la
  "maximum receive unit" a 296. L'altro lato rifiuta questa opzione
  ("configuration rejected"). In questo caso ho solamente rimosso
  l'opzione "mru" da "/etc/ppp/options" (vedete sotto).
  22..44..  CCoonnffiigguurraarree uunn nnuummeerroo tteelleeffoonniiccoo

  Se ciò che abbiamo visto sopra ha avuto successo, potete voler
  immagazzinare un numero telefonico nel database di minicom. Premete
  <Alt-D> per vedere il menù di composizione e usate i tasti cursore per
  selezionare "Edit":


       A -  Name                : Xeno
       B -  Number              : 022039697303
       C -  Dial string #       : 1
       D -  Local echo          : No
       E -  Script              : /etc/ppp/login.script
       F -  Username            : ppp-382
       G -  Password            : top-secret
       H -  Terminal Emulation  : VT102
       I -  Backspace key sends : Delete
       J -  Linewrap            : Off
       K -  Line Settings       : Curr 8N1



  Questa è una entry di esempio per collegarmi a uno dei miei ISP. Lo
  script "/etc/ppp/login.script" viene mostrato sotto. Due variabili
  speciali sono passate a questo script: $(LOGIN) e $(PASS) che sono
  impostate ai valori scelti per username (F) e password (G). Questa
  caratteristica rende minicom piuttosto flessibile perché avete bisogno
  di un solo script per automatizzare il vostro login a molti ISP.


  22..55..  UUnnoo ssccrriipptt ddii llooggiinn

  "minicom" fa partire lo script di login dopo che riceve la stringa
  "CONNECT". Ad essere precisi, "minicom" non esegue lo script da solo
  ma chiama l'utility "runscript" come sottoprocesso.

  Sotto c'è un esempio, è quello che uso per i miei ISP.



  # v1.0, 20.08.96 Winfried Trümper <winni@xpilot.org>
  print ""
  print "Automatic login via /etc/ppp/login.script"

  ## uncomment if you need to press enter to get the prompt
  #send ""

  expect {
  "ogin:"
  "ogin>"
  "sername:"
  "sername>"
  "NO CARRIER" exit 1
  }
  send "$(LOGIN)"
  expect {
          "assword:"
          "assword>"
          timeout 20
  }
  send "$(PASS)"
  expect {
          "port"  send "ppp"
          "Start your PPP now"
          "}!}!}"
          timeout 10
  }
  print ""
  print "Now switching into ppp-mode ..."
  print ""

  ! /usr/sbin/pppd  file /etc/ppp/mini_options

  print ""
  print "the command   killall -TERM pppd   terminates pppd"



  La capacità di "runscript" di chiamare programmi esterni è usata per
  far partire "pppd". Copiate il vostro file di opzioni per ppp in
  "/etc/ppp/options.ttyS1" (dove dovete sostituire "ttyS1" col
  dispositivo a cui il vostro modem è connesso) e cancellate tutte le
  linee da /etc/ppp/options che sono specifiche per il vostro modem
  (come "connect", "crtscts" o "modem"). Mettete le opzioni che
  dovrebbero essere specifiche alla connessione ppp con minicom in
  "/etc/ppp/mini_options". Una di queste opzioni dovrebbe essere


       disconnect "chat '' '\d\d+++\d\dATH\r\c'"



  Questo è un must perché "pppd" è alimentato dallo standard input e non
  può scollegare il modem con "crtscts". Ecco il mio
  /etc/ppp/mini_options:



  debug
  -detach
  defaultroute
  netmask 255.255.255.0
  mru 1500
  mtu 1500
  asyncmap 00000000
  disconnect "chat '' '\d\d+++\d\dATH\r\c'"



  22..66..  CCoonnnneessssiioonnee aauuttoommaattiizzzzaattaa aallllaa ppaarrtteennzzaa ddii mmiinniiccoomm

  Usate l'opzione "-d" per comporre un certo numero telefonico all'avvio
  di minicom. Potete anche provare



       open -sl -- minicom -d 1



  Per mettere minicom su un'altra console (consultate il Consoles-Many
  mini-HOWTO per i dettagli).


  22..77..  EEsstteennssiioonnii ffuuttuurree

  Poiché "pppd" è un demone non è stato designato per interagire con
  l'utente o essere osservato. In questo modo è ok. Dopo tutto, stiamo
  usando un sistema operativo unix-like...

  La soluzione canonica è un backend. C'è qualche volontario per
  lavorare a questo per minicom? Delle estensioni carine potrebbero
  essere:


  ·  generazione automatica della script di login guardando l'utente che
     si collega manualmente

  ·  valutazione automatica del file di log con la correzione delle
     opzioni

  ·  estrazione di messaggio come mostrato in 2.3.

  Fine del PPP-over-minicom mini-HOWTO

  Traduzione italiana a cura di Nicola Girardi (girardi@keycomm.it)