Do not install saned as setuid root without due consideration. When using dynamic linking, there is a potential for introducing security holes when running this program as root.
The contents of saned.conf is a list of host names that are permitted to use local SANE devices. Empty lines and lines starting with a hash (``#'') are ignored. A line containing the single character ``+'' is interpreted to match any hostname. This allows any remote machine to use your scanner and may present a security risk. It should be used with caution. A sample configuration file is shown below:
scan-client.somedomain.firm # this is a comment localhostIt is case-insensitive, so AHost.COM is considered identical to ahost.com.
For saned to work properly, it is also necessary to add a configuration line to /etc/inetd.conf. The configuration line normally looks like this:
sane stream tcp nowait saned.saned /usr/local/sbin/saned sanedHowever, if your system uses tcpd(1Mtcp) for additional security screening, you may want to disable saned access control by putting ``+'' in saned.conf and use a line of the following form in /etc/inetd.conf instead:
sane stream tcp nowait saned.saned /usr/sbin/tcpd sanedNote that both examples assume that there is a saned group and a saned user. If you follow this example, make sure that the access permissions on the special device are set such that saned can access the scanner (the program generally needs read and write access to scanner devices).
Finally, it is also necessary to add a line of the following form to /etc/services:
sane 6566/tcp # SANE network scanner daemonNote that port number 6566 has not been officially assigned to the SANE network protocol and may change in the future.
The SANE_CONFIG_DIR environment variable specifies the list of directories that may contain the configuration file. The directories are separated by a colon (``:''). If this variable is not set, the configuration file is searched in two default directories: firstly, the current working directory (``.'') and then in /usr/local/etc/sane.d. If the value of the environment variable ends with the directory separator character, then the default directories are searched after the explicitly specified directories. For example, setting SANE_CONFIG_DIR to ``tmp/config:'' would result in directories tmp/config, ``.'', and /usr/local/etc/sane.d being searched (in this order).
This file imposes serious security risks and its use is not recommended.