[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[riminilug-general] Scanner in client server: mini HowTo



Ciao,
allego un mini HowTo per utilizzare gli scanner in rete
(client/server), nel caso possa essere utile a qualcuno.

Umberto Zappi
Come configurare lo scanner per l'uso in rete (client/server)        (nov/2014)

Autore
    Questo breve HowTo e' stato scritto da Umberto Zappi (uzappi@xxxxxxxxxxxx)
    E' possibile utilizzarlo liberamente e adattarlo alle proprie esigenze.
    E' possibile modificarlo e ridistribuirlo liberamente.
    Se il testo viene modificato, l'autore originale non puo' essere modificato
    o eliminato.
    
Caso trattato:
    server: Debian wheezy 7.7
    client: Debian jessie testing
    
1) Lato server:
  1.a) Installare saned e configurarlo per l'uso dello scanner (o degli scanner)
       in locale.
       Se saned non fosse già installato sul sistema occorre eseguire il
       comando:
          apt-get install sane-utils
       Opzionalmente può essere installato xsane se occorre disporre del
       supporto grafico (frontend).
       Per la corretta configurazione si rimanda alla letteratura specializzata
       su sane / saned
  1.b) Verificare il file /etc/services.
       Il file /etc/services associa dei nomi logici alle porte tcp o udp.
       Per default saned utilizza la porta 6566 per la condivisione in rete
       dello scanner fra client e server.
       Il file /etc/services dovrebbe contenere una riga del tipo:
          sane-port    6566/tcp    sane saned  # SANE network scanner daemon
       se non fosse presente: (non testato con successo)
       1.b.1) fare una copia del file /etc/services
       1.b.2) inserire la riga in /etc/services
  1.c) Configurare saned come servizio di rete.
       1.c.1) fare una copia del file /etc/sane.d/saned.conf
       1.c.2) aggiungere in /etc/sane.d/saned.conf dopo
                 ## Access list
              una o piu' righe per abilitare i client che possono accedere al
              server.
              Le righe inserite possono
                 a) contenere il nome dell'host (es: myclient.mydomain.com)
                 b) contenere un singolo indirizzo IP (es: 192.168.1.50)
                 c) contenere una sottorete (es: 192.168.1.0/24)
                 d) contenere il solo carattere '+' per abilitare ogni client
                    (sconsigliato per motivi di sicurezza)
              Gli indirizzi IP e le sottoreti immesse possono essere anche IPv6
       1.c.3) [opzionale] aggiungere un range di porte per la connesione dati.
              Se il server si trova dietro ad un firewall, togliere il commento
              o aggiungere nel file /etc/sane.d/saned.conf dopo
                 ## Daemon options
              la riga
                 data_portrange = 10000 - 10100
              adeguando eventualmente i valori delle porte 10000 e 10100
  1.d) Avviare il servizio di rete.
       saned può fornire servizi di rete tramite chiamate dal demone inetd (o
       xinetd) oppure avviandolo direttamente come demone.
       Procedendo con la configurazione descritta di seguito, si avvia saned
       come demone.
       1.d.1) fare una copia del file /etc/default/saned
       1.d.2) modificare in /etc/default/saned la riga
                 RUN=no
              in
                 RUN=yes
       1.d.3) [opzionale] aggiungere l'utente di default (saned) al gruppo lp
              (utilizzato per gli scanner) e/o al gruppo video (utilizzato per
              le webcam)
                 gpasswd -a saned lp
                 gpasswd -a saned video
              L'aggiunta dell'utente saned ai gruppi puo' essere effettuata
              anche successivamente, se si riscontrassero problemi di accesso
              alle periferiche.
       1.d.4) avviare saned come demone
                 service saned restart
              Se nel sistema fosse installato systemd, allora occorre eseguire
              il comando
                 systemctl restart saned
              NB: nel caso di jessie testing, come workaround per avviare saned
              si e' resa necessaria la sequenza dei comandi:
                 cd /lib/systemd/system
                 mv -i saned.service saned@.service
                 mv -i saned.socket  saned.socket.orig
                 cd
                 systemctl daemon-reload
                 systemctl start saned

2) Lato client:
  2.a) Verificare il file /etc/services.
       Fare riferimento a quanto descritto nel punto 1.b) a riguardo dei server.
  2.b) Configurare il backend sane-net.
       2.b.1) Fare una copia del file /etc/sane.d/net.conf
       2.b.2) Aggiungere alla fine del file /etc/sane.d/net.conf dopo
                ## saned hosts
              una o piu' righe con il nome o indirizzo IP di ciscun server a
              cui ci si vuole connettere.

Troubleshooting
  a) Trovare gli scanner collegati:
        sane-find-scanner
  b) Trovare ogni periferica collegata o configurata:
        scanimage -L
  c) Visualizzare diritti di accesso di una periferica:
     Nelle recenti verioni di Linux, gli accessi alle periferiche (usb) sono
     definiti, oltre che dalle permission sul file system nel modo
     tradizionale (permission per owner o user, group, other), tramite ACL
     (Access Control List = Lista Controllo Accessi).
     L'uso di una ACL e' riconoscibile dal simbolo '+' posto a destra delle
     permission "tradizionali" come nel caso: "crw-rw----+".
     Per esaminare il dettaglio di una access list, usare il comando:
        getfacl <pathname>
     dove <pathname> e' il percorso completo del file (es: nel caso di una
     periferica usb puo' essere /dev/bus/usb/001/001)
  d) Come verificare se saned e' attivo sul server:
        ps ax | grep saned | grep -v grep
  e) Come verificare se la porta 6566 e' aperta sul server:
        netstat -l -n | grep 6566
     oppure
        telnet ip_server 6566           (da qualsiasi client)
  f) Come verificare quale processo gestisce la porta 6566 del server:
        fuser -n tcp 6566               (occorrono i diritti di root)
        ps -p <processo>
     dove <processo> è il processo ritornato da fuser
     
Documentazione
  o) man saned
  o) man sane-net
  o) https://help.ubuntu.com/community/sane.d%20tutorial      (English)
  o) https://help.ubuntu.com/community/sane                   (English)
  o) https://help.ubuntu.com/community/ScanningHowTo#Sharing_a_Scanner_Over_a_Network
                                                              (English - old version)
  o) http://www.sane-project.org/sane-backends.html           (scanner supportati)
---------------------------------------------------------------------
Per cancellarsi, scrivi a: riminilug-general-unsubscribe@xxxxxxxxxxxx
Se vuoi conoscere altri comandi, scrivi a: riminilug-general-help@xxxxxxxxxxxx