Download PDF
Download page Saned. Подключение удаленного сканера.
Saned. Подключение удаленного сканера
Окружение
- Astra Linux Special Edition 1.6 Update 11 (№ 20220829SE16)
- Astra Linux Special Edition 1.7
- Astra Linux Special Edition 1.8
Вопрос
Как настроить сканирование по сети с использованием сканера, подключенного локально к другому компьютеру?
Ответ
Настройка сканирования
Настройка сервера
Установить необходимые пакеты:
sudo apt install sane sane-utils --yesCODE- Подключить устройство по USB и убедиться, что оно корректно определяется и работает, например, с помощью утилиты "Сканирование" (
fly-scan). Внести изменения в конфигурационный файл
/etc/sane.d/saned.conf, добавив строку с указанием подсети, в которой будет доступно устройство. Например:10.0.0.0/24CODEДля использования только на локальном компьютере указать
localhost.Запустить службу
saned:sudo systemctl start saned.socketCODEУбедиться, что служба запущена корректно:
sudo systemctl status saned.socketCODEВключить автоматический запуск службы при загрузке ОС:
sudo systemctl enable saned.socketCODE
Настройка клиента
Установить необходимые пакеты:
sudo apt install sane sane-utils --yesCODE- Убедиться, что в конфигурационном файле
/etc/sane.d/dll.confприсутствует строка:netCODE Внести изменения в конфигурационный файл
/etc/sane.d/net.conf, добавив строку c IP-адресом сервераsaned. Например:10.0.0.100CODEДля подключения к серверу, развернутому на локальном компьютере, указать значение
localhost.Выполнить поиск устройства:
scanimage -LCODEПример обнаруженного устройства:
device `net:10.0.0.100:kyocera_wc3_usb:libusb:001:006' is a Kyocera ECOSYS M2235dnCODEгде
net— бэкенд, используемый для подключения устройства по сети;kyocera_wc3_usb— бэкенд, используемый для подключения устройства к серверу.
Настройка доступа к сканирующим устройствам
Функциональность SANE ограничит доступ к бэкенду локально подключенных к серверу сканирующих устройств, если указать имя пользователя и пароль.
Настройка сервера
- Перечислить в конфигурационном файле
/etc/sane.d/saned.usersучетные данные для доступа к бэкенду в следующем формате:гдеuser:password:backendCODE<user>— имя пользователя;- <password> — пароль пользователя;
- <backend> — бэкенд локально подключенного устройства. Например:
ivanov:12345678:kyocera_wc3_usbCODE
- Перезапустить службу
saned:sudo systemctl reload saned.socketCODE
Настройка клиента
Со стороны клиента не требуется дополнительных настроек. При выполнении сканирования на устройстве с сервера saned будет выполнен запрос учетных данных для доступа к бэкенду устройства. Например:
- в консольном фронтенде
scanimage:scanimage -d 'net:10.0.12.47:kyocera_wc3_usb:libusb:001:002' --format=jpeg > scan.jpeg Authentication required for resource net:10.0.12.47:kyocera_wc3_usb. Enter username:CODE - через утилиту "Сканирование" (
fly-scan):

Авторизацию можно автоматизировать, указав учетные данные на клиентской стороне в файле, расположенном в пользовательском каталоге /home/<username>/.sane/pass. По умолчанию файл не существует:
- Создать каталог:
mkdir -p ~/.saneCODE - Создать файл
~/.sane/passсо следующим содержимым:гдеuser:password:backendCODE<user>— имя пользователя;<password>— пароль пользователя;<backend>— имя устройства (DeviceURI) в формате<net:saned_server:backend_name>. Например:ivanov:12345678:net:10.0.12.47:kyocera_wc3_usbCODE
- Установить права на файл (для ограничения доступа к незашифрованным данным для всех пользователей, кроме владельца):
chmod 0600 ~/.sane/passCODE - Использовать параметр
--accept-md5-onlyдля безопасной передачи учетных данных по сети от клиента к серверу. Например:scanimage -d 'net:10.0.12.47:kyocera_wc3_usb:libusb:001:002' --accept-md5-only --format=jpeg > scan.jpegCODE
Служба saned не поддерживает одновременное использование несколькими клиентами одного устройства в один момент. Подобное событие будет сопровождаться информационными сообщениями вида:
окт 03 10:42:15 alse181 systemd[1]: saned.socket: Too many incoming connections (1), dropping connection.