## page update
#format wiki
#LANGUAGE it
<
>
<>
<>
= Introduzione =
'''SANE''' permette di configurare un server-scanner, in modo che possa essere accessibile da tutti i computer in una rete.
Il programma utilizzato in questo articolo è '''saned''' (sane daemon). La maggior parte dei pacchetti è preinstallato all'installazione.
= Configurazione del server =
Installare il pacchetto [[apt://sane-utils|sane-utils]].
Per rendere effettiva ogni modifica eseguita occorre riavviare il servizio, digitando nel [[AmministrazioneSistema/Terminale|terminale]] e coi [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il seguente comando:{{{
sudo service saned restart
}}}
== Avviare saned al boot ==
Il programma '''saned''' non viene avviato all'avvio del sistema in modo predefinito.
Per impostare l'avvio automatico del demone all'avvio del sistema, aprire coi [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] e con un [[Ufficio/EditorDiTesto|editor di testo]] il file `/etc/default/saned`.
Cercare nel file le seguenti righe:
{{{
# Set to yes to start saned
RUN=no
}}}
e sostituirle colle seguenti:
{{{
# Set to yes to start saned
RUN=yes
}}}
== Impostare i permessi per gli scanner USB ==
Per modificare i permessi dello scanner nel caso venga connesso tramite cavo USB, aprire coi [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] e con un [[Ufficio/EditorDiTesto|editor di testo]] il file `/lib/udev/rules.d/50-udev-default.rules`.
Cercare la seguente riga:
{{{
# libusb device nodes
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE="0664"
}}}
e modificare in:
{{{
# libusb device nodes
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE="0666"
}}}
== Permettere l'accesso allo scanner dei client ==
I client che possono accedere allo scanner devono essere esplicitamente specificati nel file di configurazione.
Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e coi [[AmministrazioneSistema/Sudo|permessi di amministrazione]] il file `/etc/sane.d/saned.conf` e inserire l'indirizzo o il nome della macchina da aggiungere sotto la sezione ''## saned hosts''.
Di seguito alcuni esempi:
* Abilitare una specifica macchina utilizzando l'indirizzo IP:
{{{
192.168.0.5
}}}
* Abilitare un range di indirizzi:
{{{
192.168.0.0/24
}}}
* Abilitare una specifica macchina indicando il nome:
{{{
computer_mario.laboratorio
}}}
{{{#!wiki note
Sostituire i valori indicati negli esempi con quelli desiderati.}}}
= Configurazione del client =
Nel file `/etc/sane.d/net.conf` deve essere specificato il server a cui è connesso lo scanner.
Aprire coi [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] e con un [[Ufficio/EditorDiTesto|editor di testo]] il file `/etc/sane.d/net.conf` e inserire il nome o l'indirizzo del server .
Di seguito alcuni esempi:
* Aggiungere un server inserendo il suo indirizzo IP:
{{{
192.168.0.5
}}}
* Aggiungere un server specificando il nome della macchina:
{{{
ilMioServer.casa
}}}
{{{#!wiki note
Sostituire il nome o indirizzo IP indicati negli esempi con quelli desiderati.}}}
SANE a questo punto cerca tra i nomi o indirizzi IP specificati se è collegato uno scanner.
Se il server non è accessibile si potrebbero verificare dei lunghi tempi di attesa.
Per specificare il tempo massimo d'attesa decommentare e impostare il tempo desiderato nella riga ''# connect_timeout = 60'' nel file `/etc/sane.d/net.conf`.
Esempio:
* Impostare un tempo massimo d'attesa di 10 secondi:
{{{
connect_timeout = 10
}}}
= Driver eSCL e WSD =
Molti scanner moderni usano un protocollo di rete senza driver universale, che richiede l'installazione d'uno specifico plugin.
Esistono due diversi protocolli:
* '''[[https://it.wikipedia.org/wiki/AirPrint|Apple AirScan Scanning]]''' il cui nome ufficiale è '''eSCL''';
* '''[[https://en.wikipedia.org/wiki/WS-Discovery|Microsoft WSD]]''', chiamato anche '''WS-Scan''', il cui significato è '''Web Services for Devices'''.
Per una lista degli scanner supportati, incompleta ma in costante aggiornamento, consultare [[https://github.com/alexpevzner/sane-airscan#compatibility|questa pagina]].
== Installazione ==
=== Ubuntu 20.10 e successivi ===
[[https://wiki.ubuntu-it.org/AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://sane-airscan|sane-airscan]]
=== Fino a Ubuntu 20.04 ===
Per installare il pacchetto è necessario aggiungere un repository terzo gestito da [[https://software.opensuse.org|OpenSuse]].
0. Digitare nel [[https://wiki.ubuntu-it.org/AmministrazioneSistema/Terminale|terminale]] i comandi:{{{
echo 'deb http://download.opensuse.org/repositories/home:/pzz/xUbuntu_AA.MM/ /' | sudo tee /etc/apt/sources.list.d/home:pzz.list
curl -fsSL https://download.opensuse.org/repositories/home:pzz/xUbuntu_AA.MM/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/home_pzz.gpg > /dev/null
}}}{{{#!wiki note
Sostituire AA.MM con il codice numerico della release in uso, ad esempio ''18.04''.
}}}
0. [[https://wiki.ubuntu-it.org/AmministrazioneSistema/InstallareProgrammi/Apt|Installare]] il pacchetto [[apt://|sane-airscan|sane-airscan]].
0. Riavviare il computer.
= Provare il corretto funzionamento =
Per provare il corretto funzionamento dello scanner è possibile digitare in una finestra di terminale il seguente comando:
{{{
scanimage -L
}}}
Questo comando, a seconda che sia stato eseguito su un server o su un client, restituirà un output simile ai seguenti:
* Output restituito da un server:
{{{
device `epson:/dev/sg2' is a Epson Perfection1200 flatbed scanner
}}}
* Output restituito da un client:
{{{
device `net:server:epson:/dev/sg2' is a Epson Perfection1200 flatbed scanner
}}}
Nel caso in cui siano presenti più scanner e si voglia specificarne uno predefinito, è possibile indicare la variabile d'ambiente digitando il seguente comando:
{{{
SANE_DEFAULT_DEVICE='IL_NOME_DEL_MIO_SERVER'
}}}
Il nome del server può essere ricavato eseguendo il primo comando presente in questo paragrafo. Nell'esempio precedente, quindi, una possibile variabile potrebbe essere la seguente:
{{{
SANE_DEFAULT_DEVICE='net:server:epson:/dev/sg2'
}}}
= Sicurezza =
== Firewall ==
'''SANE''' utilizza la porta 6566. Tale porta deve essere perciò aperta sul server affinché il programma funzioni correttamente. Nelle attuali versioni di Ubuntu, questo backend è già attivato.
Nel caso in cui non lo fosse, verificare che nel file `/etc/sane.d/dll.conf` sia presente la seguente riga:
{{{
net
}}}
Verificare che essa non sia commentata con un «#» davanti ad essa.
Nel caso in cui la porta 6566 non fosse aperta, verificare che nel file `/etc/services` ci sia la seguente riga:
{{{
sane-port 6566/tcp sane saned # SANE network scanner daemon
}}}
== Accesso con password ==
'''SANE''', dalla versione 1.0.4, permette di attivare l'autenticazione tramite password.
Creare coi [[AmministrazioneSistema/Sudo|permessi di amministrazione]] e con un [[Ufficio/EditorDiTesto|editor di testo]] il file `/etc/sane.d/saned.users`, quindi copiare il seguente esempio sostituendo il nome dell'utente, la password e il nome dello scanner con quelli reali.
{{{
# /etc/sane.d/saned.users
# nomeUtente:password:backend
pippo:bimbumbam:epson
}}}
Per impostare di non dover ogni volta ogni volta digitare la password, aprire con un [[Ufficio/EditorDiTesto|editor di testo]] il file `~/.sane/pass` e inserire nell'ordine:
* Il nome utente (contenuto nel file `/etc/sane.d/saned.users`)
* La password (contenuto nel file `/etc/sane.d/saned.users`)
* L'indirizzo completo dello scanner, che si può ottenere digitando il seguente comando:
{{{
scanimage -L
}}}
Di seguito è riportato un esempio:
{{{
# ~/.sane/pass
# nomeutente:password:ressource
pippo:bimbumbam:net:server:epson:/dev/sg2
}}}
Per fare in modo che nessun altro utente possa vedere il file, digitare nel terminale il seguente comando:
{{{#!comando esempio
chmod 0600 ~/.sane/pass
}}}
= Risoluzione problemi =
Nel caso in cui lo scanner non venga rilevato correttamente è consigliato controllare i seguenti punti:
* Consultare il seguente [[Server/Scanner#Provarne_il_corretto_funzionamento|paragrafo]] di questa guida ed eseguire il test sia da utente '''root''' sia da utente normale.
* Controllare la propria connessione internet e verificare il corretto funzionamento.
* Il firewall potrebbe bloccare la porta 6566. In tal caso può essere utile, dal server, eseguire un ping o un telnet sulla porta 6566 del client. Per esempio, digitare in una finestra di terminale il seguente comando: {{{
telnet IP_DEL_CLIENT 6566
}}}
* Dopo aver modificato le impostazioni di '''saned''', è necessario riavviare il servizio.
= Ulteriori risorse =
* [[http://wiki.ubuntuusers.de/SANE-Scanserver_im_Netzwerk|Guida originale (in lingua tedesca)]]
* [[http://www.sane-project.org/|Sito uffciale del progetto SANE]]
* [[http://www.sane-project.org/sane-mfgs.html|Lista scanner compatibili con ubuntu (in lingua inglese)]]
* [[https://github.com/alexpevzner/sane-airscan|sito ufficiale di scan-airscan (in lingua inglese)]]
----
CategoryServer CategoryHardware