Работой сервера CUPS управляет файл /etc/cups/cupsd.conf
. Поскольку система CUPS позаимствовала многие средства сервера HTTP, структура ее конфигурационного файла напоминает соответствующий файл Apache (он будет рассмотрен в главе 20). При работе CUPS также применяются другие конфигурационные файлы, в частности /etc/cups/printers.conf
и /etc/cups/classes.conf
, которые описывают соответственно принтеры и группы принтеров. Для редактирования обоих файлов используется инструмент lpadmin
, а данные в файле cupsd.conf
рекомендуется подготавливать вручную.
Файл cupsd.conf
содержит набор директив, с помощью которых задаются характеристики сервера, например, определяется имя сервера и расположение файлов протоколов. Ниже описаны наиболее важные директивы, определяющие работу сетевого сервера печати.
• Allow
. За этой директивой следуют ключевое слово from
, идентификатор All
или None
, имя узла (в котором может содержаться звездочка, задающая групповую операцию), частичный или полный IP-адрес или IP-адрес с указанием маски сети. Независимо от формы записи, значение данной директивы определяют компьютеры, которые имеют право доступа к серверу. Чтобы разрешить доступ для нескольких компьютеров или групп компьютеров, вы можете использовать несколько директив Allow
. Данная директива должна находиться в составе директивы Location
.
• AuthClass
. Директива AuthClass
может принимать значения Anonymous
(значение по умолчанию), User
, System
и Group
. Anonymous
означает, что аутентификация клиентов не должна выполняться; в этом случае система печати работает подобно системе BSD LPD. Остальные три значения требуют от клиента указания пользовательского имени и пароля. Значение System
требует, чтобы пользователь был членом группы sys
, заданной с помощью директивы SystemGroup
. Если указано значение Group
, пользователь должен принадлежать группе, имя которой определено посредством директивы AuthGroupName
.
• BrowseAddress
. Средства просмотра принтеров CUPS лучше всего работают в том случае, если информация о принтерах, доступных в сети, собрана на центральном сервере. Этот сервер можно задать с помощью директивы BrowseAddress
. В качестве ее значения задается доменное имя или IP-адрес, а также номер порта, например 192.168.23.34:631. (Номер порта 631 чаще всего используется для выполнения различных операций с системой CUPS.) По умолчанию принимается значение 255.255.255.255:631, т.е. широковещательный адрес локальной сети и порт 631.
• BrowseAllow
. Для того чтобы клиент мог выполнять просмотр принтеров, сервер должен принимать от него специальные пакеты. Директива BrowseAllow
(за ней следуют ключевое слово from
и частичное или полное доменное имя либо адрес узла) задает компьютеры, с которых сервер должен принимать данные пакеты. По умолчанию прием пакетов разрешен со всех компьютеров.
• BrowseDeny
. Данная директива выполняет действие, противоположное директиве BrowseAllow
. С ее помощью формируется "черный список" клиентов или сетей.
• BrowseOrder
. Если вы используете и BrowseAllow
, и BrowseDeny
, директива BrowseOrder
позволяет определить порядок применения указанных директив. Она может быть задана в виде BrowseOrder Allow, Deny
или BrowseOrder Deny, Allow
.
• BrowseInterval
. Данная директива задает время в секундах между запросами на просмотр. Значение 0 запрещает передачу запросов. Значение данной опции должно быть меньше, чем значение опции BrowseTimeout
, в противном случае принтеры будут периодически исчезать из локального списка просмотра.
• BrowsePoll
. Данная директива позволяет задавать имя или IP-адрес сервера печати для опроса принтеров. Чтобы опрашивать несколько серверов, вы можете указать данную директиву несколько раз.
• BrowsePort
. По умолчанию для просмотра принтеров используется порт 631, но с помощью данной директивы вы можете переопределить это значение.
• BrowseTimeout
. По истечении интервала времени, указанного посредством данной директивы, CUPS удаляет информацию о сетевых принтерах. Это значение должно быть больше, чем значение директивы BrowseInterval
, в противном случае принтеры будут периодически исчезать из списка просмотра CUPS-клиента.
• Browsing
. Задавая значение этой директивы, равное On
или Off
, вы можете соответственно разрешать или запрещать просмотр сети. По умолчанию предполагается значение On
.
• Deny
. Данная директива выполняет действия, противоположные действиям директивы Allow
. С ее помощью задаются компьютеры, которым запрещен доступ к серверу. Директива Deny
должна присутствовать в составе директивы Location
.