Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Отображение дочерних

Оглавление

См. также Перенос настроек CUPS


Информация
titleДанная статья применима к:
  • Astra Linux Special Edition РУСБ.10015-01 и РУСБ.10015-10 (очередное обновление 1.7)
  • Astra Linux Special Edition РУСБ.10015-37 (очередное обновление 7.7)
  • Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7)
  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
     (с установленным обновлением БЮЛЛЕТЕНЬ № 20200722SE16 - оперативное обновление 6)
  • Astra Linux Special Edition РУСБ.10015-16 исп. 1
  • Astra Linux Special Edition РУСБ.10015-16 исп. 2
  • Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1)
  • Astra Linux Common Edition 2.12

Раздел "Ограничение отображения сетевых принтеров в LibreOffice" применим к Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) с установленным обновлением БЮЛЛЕТЕНЬ № 20210611SE16 (оперативное обновление 7) и более поздним обновлениям.

Раздел "Ограничение видимости заданий (Astra Linux Special Edition 1.6.9 и Astra Linux Common Edition 2.12.43)" применим только к Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) с установленным обновлением БЮЛЛЕТЕНЬ № 20211008SE16 (оперативное обновление 9) и к более поздним обновлениям, а также к Astra Linux Common Edition 2.12.43.

Раздел "Настройка аутентификации Kerberos" применим только к Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) с установленным обновлением БЮЛЛЕТЕНЬ № 2021-1126SE17 (оперативное обновление 1.7.1)  (версия cups 2.3.3op2-4astra.se9 и выше).


Встроенный сервер печати

Сервер печати CUPS входит в стандартные дистрибутивы Astra Linux и автоматически устанавливается и запускается при инсталляции ОС с настройками по умолчанию. Проверить статус сервера можно командой 

Command

systemctl status cups

Если сервер печати не был установлен при инсталляции ОС, то установить его можно с помощью графического менеджера пакетов или командой:

Command
sudo apt install cups

Если требует печать документов с маркировкой заданий, то дополнительно требуется установить пакет parsec-cups:

Command
sudo apt install cups parsec-cups

Администрирование сервера печати, находящегося на локальном сервере, может осуществляться:

  1. С помощью графического администратора печати fly-admin-printer.
  2. Через web-интерфейс с помощью web-браузера. Адрес для доступа к интерфейсу администрирования:

    Информация
    localhost:631/admin

    При входе в web-интерфейс запрашивается идентификация пользователя, по умолчанию используются системные имя и пароль.


  3. С помощью инструмента командной строки cupsctl - либо с использованием sudo либо пользователями, имеющими право на выполнение административных действия (см. ниже). Примеры использования инструмента cupsctl приведены далее в тексте.

Предоставление пользователям прав на выполнение административных действий не связанных с МРД

Пользователи, от имени которых будут выполняться действия по настройке принтеров не связанные с мандатным управлением доступом (МРД), должны быть включены в группу lpadmin (локальная группа, используемая "по умолчанию") или в другую группу, указанную в списке значений параметра  SystemGroup в конфигурационном файле /etc/cups/cups-files.conf.

Предупреждение
В Astra Linux Special Edition x.7 с включенным МКЦ администраторы службы печати для внесения изменений в конфигурацию службы должны иметь высокую целостность.

Кроме того, разрешения на выполнение операций для отдельных пользователей и групп могут быть явно заданы в описаниях ресурсов в конфигурационном файле /etc/cups/cupsd.conf. Пример использования доменной группы приведен далее в разделе про настройку аутентификации Kerberos, подробное описание форматов конфигурационных файлов см. man cupsd.conf.

Для того, чтобы такие пользователи могли применять сделанные ими изменения конфигурации им должно быть предоставлено право перезапускать службу печати. Это можно сделать создав файл /etc/sudoers.d/lpadmins со следующим содержимым:

Блок кода
%lpadmin ALL=(ALL:ALL) NOPASSWD: /usr/bin/systemctl restart cups
%lpadmin ALL=(ALL:ALL) NOPASSWD: /usr/bin/systemctl stop cups
%lpadmin ALL=(ALL:ALL) NOPASSWD: /usr/bin/systemctl start cups
%lpadmin ALL=(ALL:ALL) NOPASSWD: /usr/bin/systemctl status cups

В приведенном примере пользователям, входящим в группу lpadmin, разрешается использовать sudo для перезапуска, остановки, запуска службы печати cups и проверки её состояния. Подробнее см. man sudoers.

Предупреждение
При работе в Astra Linux с включенным МКЦ для управления службой печати пользователю требуется высокая целостность.

Предоставление пользователям прав на выполнение административных действий связанных с МРД (маркировка документов)

Пользователи, работающие с маркировкой заданий печати в Astra Linux Special Edition, должны быть включены в локальную группу lpmac (создается при установке ОС) или группу lpmac_ald (предназначена для использования в доменах и  должна быть создана вручную). Имена этих групп задаются в параметре MacAdmin в конфигурационном файле /etc/cups/cupsd.conf (параметр используется отдельно для каждого определяемого ресурса).

Включение удаленного администрирования сервера печати

После установки службы по умолчанию разрешено только локальное администрирование, т.е. принимаются только обращения через адрес localhost. Обращения через полное имя хоста не принимаются.
Удаленное администрирование может быть разрешено:

  1. В web-интерфейсе через соответствующий пункт в меню web-интерфейса.
  2. Из командной строки можно использовать команду:

    Command
    borderColor#c2e6ff
    bgColor#e2f3ff

    sudo cupsctl --remote-admin

    Где опция --remote-admin - указание разрешить удаленное администрирование. 

Включение удаленного использования принтеров

После установки службы по умолчанию запрещено удаленное использование принтеров, подключенных к серверу печати.
Удаленное использование принтеров может быть разрешено:

  1. В web-интерфейсе через соответствующий пункт в меню web-интерфейса.
  2. Из командной строки командой:

    Command
    borderColor#c2e6ff
    bgColor#e2f3ff

    sudo cupsctl --share-printers --remote-any ServerAlias=`hostname`

    где:

    • --share-printers - указание включить разделение принтеров;

    • --remote-any - разрешение принимать задания печати с любых адресов (по умолчанию задания печати разрешено получать только от компьютеров, находящихся в той же подсети, что и сервер);

    • ServerAlias - "псевдоним" сервера печати. Служба cups принимает только HTTP-обращения, содержащие указанный в этом параметре псевдоним (подразумевается, что псевдонимы разрешаются в IP-адреса с помощью настроенной службы DNS). Можно указать метасимвол "*" (звездочка) для обозначения любых псевдонимов. При необходимости в конфигурационном файле можно указать несколько псевдонимов, разделенных пробелами (в команде cupsctl такая возможность не поддерживается). Для того, чтобы псевдонимы работали, должно быть разрешено удаленное администрирование, иначе разрешен только псевдоним localhost.

  3. При первичных настройках значение параметра DefaultAuthType должно быть Basic;

  4. Проверить корректность конфигурационных файлов:

    Command

    sudo cupsd -t


  5. Перезапустить сервер печати CUPS командой:

    Command

    sudo systemctl restart cups


  6. Проверить состояние сервиса печати CUPS командой:

    Command
    sudo systemctl status cups


Добавление принтера через web-интерфейс CUPS

Для добавления принтера:

  1. Открыть web-браузер и ввести адрес:

    Подсказка
    iconfalse

    localhost:631/admin


  2. Нажать кнопку "Добавить принтер".

  3. На запрос аутентификации ввести имя и пароль пользователя, входящего в группу lpadmin.

  4. Далее, будет представлен список устройств для выбора. Фактическое имя принтера отображается рядом с меткой ( например, USB-принтеры напротив USB Printer #1). Принтеру можно присваивать любое имя, аналогично для пунктов 'Расположение' и 'Описание'.

  5. После выбора соответствующего драйвера настройки будут окончены.

    Примечание

    При установке USB-принтер должен отображаться в списке устройств на странице Добавить принтер.


  6. Убедиться в правильности настроек, нажав на кнопку Print Test Page (Печать тестовой страницы) в выпадающем меню Maintenance (Обслуживание).

  7. Если принтер не печатает, но вы уверены в правильности всех настроек, попытаться сменить драйвер принтера на другой.

Печать файла из командной строки

Печать файла из командной строки можно выполнить командой:

Command
lp -d *имя_принтера* *имя_файла*


Добавление сетевого принтера из командной строки

Добавление сетевого принтера из командной строки можно выполнить командой:

Command
lpadmin -p printername -E -v socket://11.22.33.44 -m drv:///sample.drv/laserjet.ppd


Ограничение отображения сетевых принтеров в LibreOffice

Информация

Раздел "Ограничение отображения сетевых принтеров в LibreOffice" применим только к Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) с установленным обновлением БЮЛЛЕТЕНЬ № 20210611SE16 (очередное обновление 7)

По умолчанию при выборе устройства печати в LibreOffice (Файл - Печать - Принтер) в списке устройств отображаются все обнаруженные сетевые принтеры. Для того, чтобы в списке доступных устройств отображались только принтеры, добавленные через менеджер печати Fly, нужно добавить в файл /etc/cups/client.conf строчку:

Блок кода
DiscoveredOnly Yes

после чего перезапустить службу cups:

Command
sudo systemctl restart cups


Копирование настроек принтеров

Для централизованного управления можно копировать файлы /etc/cups/printers.conf и /etc/cups/ppd/* с компьютера с настроенным принтером на удаленный компьютер при помощи команды scp:

Command

scp /etc/cups/printers.conf 10.10.10.10:/etc/cups/
scp /etc/cups/ppd/* 10.10.10.10:/etc/cups/ppd/


Настройка печати на клиентской машине

  1. На сервере печати настроить удаленное использование сервера печати.

  2. На сервере печати настроить принтеры (в том числе, при работае с конфиденциальной информацией в Astra Linux Special Edition установить политику parsec и назначить максимальные допустимые классификационные метки заданий). Настройка принтеров может быть выполнена с использованием утилиты fly-admin-printer (см. электронную справку) или с помощью web-интерфейса CUPS.

  3. На клиентских машинах создать файл /etc/cups/client.conf, в котором должен быть задан единственный параметр ServerName, определяющий имя сервера печати, например:

    Блок кода
    iconfalse
    ServerName <имя_сервера_печати>


Настройка аутентификации Kerberos

Перед настройкой аутентификации Kerberos для корректной работы команд управления на сервере должна быть выполнена настройка клиента, т.е должен быть создан файл /etc/cups/client.conf, в котором должен быть задан единственный параметр ServerName, определяющий имя сервера печати:

Блок кода
iconfalse
ServerName <имя_сервера_печати>

Настройка аутентификации Kerberos в домене FreeIPA

Описание стенда FreeIPA

  • dc.domain.ipa – контроллер домена FreeIPA;
  • printserver.domain.ipa (сервер cups может находиться и на контроллере домена FreeIPA, в таком случае далее printserver заменить на dc);
  • client.domain.ipa – клиент FreeIPA.

Настройки домена FreeIPA

Данные настройки могут выполняться через графический интерфейс FreeIPA или через интерфейс командной строки (CLI) FreeIPA. Далее приведены примеры с использованием CLI FreeIPA.

  1. Получить билет Kerberos администратора домена (только при работе с CLI FreeIPA. Для примера используется имя администратора admin):

    Command
    kinit admin


  2. Создать доменные группы:

    1. Доменную группу для общих задач администрирования с именем, например, print_admins:

      Command
      Titleipa group-add print_admins

      -------------------------------
      Добавлена группа "print_admins"
      -------------------------------
        Имя группы: print_admins
        ID группы: 848400014


    2. По необходимости - доменную группу для маркировки заданий:

      Command

      ipa group-add lpmac_ald


  3. Добавить доменных пользователей, которые будут выполнять функции администратора печати, в доменную группу print-admins. Например:

    1. Создать пользователя print_admin:

      Command
      ipa user-add print_admin --first <имя> --last <фамилия>


    2. Добавить доменного пользователя print_admin в доменную группу print_admins:

      Command
      ipa group-add-member --users=print_admin print_admins


    3. При необходимости выполнения маркировки заданий печати добавить доменного пользователя (для примера - print_admin) в доменную группу lpmac_ald командой:

      Command

      ipa group-add-member --users=print_admin lpmac_ald


  4. На контроллере домена зарегистрировать доменную службу печати ipp (используется при работе с интерфейсом командной стройки cups и графическим инструментом fly-admin-cups):

    Command
    ipa service-add ipp/printserver.domain.ipa


  5. Если необходимо использовать web-интерфейс cups и сервер печати находится на отдельном сервере, то для этого сервера зарегистрировать службу HTTP:

    Command

    ipa service-add HTTP/printserver.domain.ipa

    Если сервер печати находится на контроллере домена, то такая служба создана автоматически при создании домена.

Настройки на сервере печати

  1. Войти в сессию пользователя - администратора системы  (на Astra Linux Special Edition с включенным МКЦ - администратора с высоким уровнем целостности) на сервере печати;

  2. Получить билет Kerberos администратора домена для суперпользователя:

    Command
    sudo kinit admin


  3. Получить таблицы ключей для зарегистрированных доменных служб и сохранить их в файле /etc/krb5.keytab:

    1. Для службы ipp:

      Command
      sudo ipa-getkeytab -p ipp/printserver.domain.ipa@DOMAIN.IPA -k /etc/krb5.keytab


    2. При необходимости использовать аутентификацию в web-интерфейсе cups:

      1. Если сервер печати находится на отдельном сервере, то получить новую таблицу ключей:

        Command

        sudo ipa-getkeytab -p HTTP/printserver.domain.ipa@DOMAIN.IPA -k /etc/krb5.keytab


      2. Если сервер печати находится на контроллере домена, то получить копию существующих ключей доменной службы HTTP (обязательно использовать ключ -r):

        Command

        sudo ipa service-allow-retrieve-keytab HTTP/dc.domain.ipa --groups=admins
        sudo ipa-getkeytab -p HTTP/dc.domain.ipa@DOMAIN.IPA -k /etc/krb5.keytab -r
        sudo ipa service-disallow-retrieve-keytab HTTP/dc.domain.ipa/ --groups=admins

        см. также Настройка использования аутентификации Kerberos в web-браузерах.

  4. Убедиться, что ключи добавлены:

    Command
    sudo klist -kte /etc/krb5.keytab


Настройка аутентификации Kerberos в домене Windows AD

См. статьи Базы Знаний:

Настройка аутентификации Kerberos в домене ALD

Настройка аутентификации Kerberos в домене ALD в целом аналогична настройке в домене FreeIPA, отличаются команды для выполнения необходимых действий.

  1. Создать в ALD учетную запись группы администраторов печати:

    Command
    borderColor#c2e6ff
    bgColor#e2f3ff
    iconfalse
    sudo ald-admin group-add print_admins


  2. Для выполнения действий по маркировке заданий создать в ALD группу lpmac_ald:

    Command
    borderColor#c2e6ff
    bgColor#e2f3ff

    sudo ald-admin group-add lpmac_ald


  3. В файле /etc/cups/cups-files.conf в значении параметра SystemGroup добавить (установить) значение print_admins;

  4. Создать в ALD учетную запись администратора печати и добавить ее в группу администраторов печати ALD, например выполнив команды:

    Command
    borderColor#c2e6ff
    bgColor#e2f3ff
    sudo ald-admin user-add print_admin
    sudo ald-admin group-mod print_admins --add-users --user=print_admin
    sudo ald-admin group-mod lpmac_ald --add-users --user=print_admin


  5. Для обеспечения совместной работы сервера печати с ALD создать в БД ALD с помощью утилиты администрирования ALD принципала, соответствующего серверу печати. Принципал создается с автоматически сгенерированным случайным ключом:

    Command
    borderColor#c2e6ff
    bgColor#e2f3ff
    sudo ald-admin service-add ipp/server.my_domain


  6. Ввести созданного принципала в группу сервисов mac, используя следующую команду:

    Command
    borderColor#c2e6ff
    bgColor#e2f3ff
    sudo ald-admin sgroup-svc-add ipp/server.my_domain --sgroup=mac


  7. Создать файл ключа Kerberos для сервера печати с помощью утилиты администрирования ALD ald-client, используя следующую команду:

    Command
    borderColor#c2e6ff
    bgColor#e2f3ff
    sudo ald-client update-svc-keytab ipp/server.my_domain


  8. От имени учетной записи администратора с использованием механизма sudo выполнить следующие команды:

    Command
    borderColor#c2e6ff
    bgColor#e2f3ff
    sudo cupsctl DefaultPolicy=default ServerName=server.my_domain MacEnable=On DefaultAuthType=Negotiate


  9. Перезапустить сервер печати CUPS, выполнив команду:

    панель
    borderColor#c2e6ff
    bgColor#e2f3ff

    sudo systemctl restart cups


Настройка службы печати CUPS

Настройка службы печати CUPS выполняется одинаково для доменов FreeIPA и ALD.

  1. В файле /etc/cups/cups-files.conf на сервере печати заменить строку:

    Блок кода
    SystemGroup lpadmin

    на строку:

    Блок кода
    SystemGroup lpadmin print_admins


    Информация

    В значениях параметра перечисляются группы пользователей, которым разрешено администрирование. Например, можно не сохранять локальную группу lpadmin, или временно добавить группу admins чтобы предоставить право управления локальным администраторам на время настройки системы, и удалить группу admins после завершения настройки.


  2. Предполагается, что удаленный доступ к службе печати уже настроен как указано в разделе "Включение удаленного использования сервера печати". Выполнить команды (если управление разрешено текущему пользователю):

    Command

    sudo cupsctl DefaultPolicy=authenticated ServerName=printserver.domain.ipa MacEnable=On DefaultAuthType=Negotiate

    или действуя от имени администратора прямо отредактировать конфигурационный файл /etc/cups/cupsd.conf, указав (добавив) нужные значения (знак "=" в конфигурационном файле не используется, значения параметров указываются через пробел):

    Блок кода
    DefaultAuthType Negotiate
    DefaultPolicy authenticated
    ServerName printserver.domain.ipa


  3. Проверить корректность конфигурационного файла:

    Command

    sudo cupsd -t


  4. Перезапустить службу печати CUPS сервер командой:

    Command

    sudo systemctl restart cups



Тестирование функционирования аутентификации Kerberos

В сессии администратора, не имеющего права управления службой cupsd:

  1. Удалить все билеты Kerberos, полученные от имени sudo:

    Command
    sudo kdestroy -A


  2. Попробовать выполнить команду изменения конфигурации (в команде можно использовать уже имеющиеся значения параметров, чтобы не вносить реальные изменения в настроенную конфигурацию), например:

    Command
    sudo cupsctl DefaultPolicy=default

    итогом выполнения команды должен быть отказ в доступе:

    Блок кода
    cupsctl: В доступе отказано

    или (в зависимости от используемой ОС):

    Блок кода
    cupsctl: Запрещено


  3. Получить билет Kerberos ранее созданного доменного администратора печати print_admin, например:

    Command
    sudo kinit print_admin


  4. Повторно выполнить команду изменения конфигурации, при наличии билета Kerberos доменного администратора печати команда должна быть выполнена без ошибок;
  5. Аналогично должна выполняться последовательность команд от имени простого пользователя:

    Command
    kdestroy -A
    /usr/sbin/cupsctl DefaultPolicy=default
    # отказ выполнения
    kinit print_admin
    /usr/sbin/cupsctl DefaultPolicy=default
    # успешное выполнение



Запись журнала документов и сохранение копий документов

После установки обновления Astra Linux Special Edition 1.6 БЮЛЛЕТЕНЬ № 20190222SE16 (оперативное обновление 1.6.2) появляются две новые возможности  управления печатью:

  • Запись журнала документов
  • Сохранение копий документов

Эти возможности можно включить с помощью графического администратора печати fly-admin-printer.

Информация
Журнал и копии заданий записываются в каталог /var/spool/cups/parsec Для доступа к этому каталогу нужны привилегии суперпользователя  (root), или администратор печати должен быть запущен от имени пользователя, входящего в группу lp.

Запуска администратора печати из командной строки от имени суперпользователя:

Command
sudo fly-admin-printer

Запуска администратора печати через графическое меню:

Информация

"Пуск" - "Панель управления" - "Оборудование" - "Принтеры"

После запуска Выбрать в меню

Информация
"Сервер" - "Настроить" - "Безопасность"

Выбрать закладку "МАС" и отметить нужные параметры "Включить журнал маркировки" и/или "Дублировать отпечатанные документы".


Из командной строки параметры можно установить редактируя файл /etc/cups/cupsd.conf.

Пример параметров печати можно найти в файле /usr/share/cups/cupsd.conf.default:


Информация

...
#rbt
MacEnable on
#MacDuplicate off
#MacJournal off
#MacFullUserName on
#
#MarkerUser ipp
#MaxLogSize 0
#\rbt
...



Ограничение видимости заданий

Начиная с:

в систему управления печатью добавлены следующие возможности:

  • Возможность ограничения пользователем видимости заданий других пользователей: опция "Только текущего пользователя" в меню списка заданий. Опция включает отображений заданий только текущего пользователя. Все другие задания будут скрыты.
  • Возможность принудительного ограничения администратором видимости пользователями заданий других пользователей. Для включения этой возможности добавить в файл /etc/cups/cupsd.conf строку:

    Блок кода
     MyJobsAccessOnly On

    и осуществить перезапуск сервиса печати CUPS. В результате включения этой опции пользователям будут разрешено видеть только свои задания.

    Предупреждение
    Исключение - администраторы печати (пользователи, состоящие в группе lpadmin). Они видят все задания независимо от состояния данной опции.


Маркировка документов

Command
Для выполнения маркировки документов должен быть установлен пакет parsec-cups. Этот пакет устанавливается по умолчанию при установке ОС.

Сервер печати, встроенный в Astra Linux Special Edition, проверяет метку безопасности заданий, отправляемых на печать, и все задания, имеющие ненулевые метки безопасности, задерживает до проведения их маркировки.

Маркировка задержанных заданий осуществляется специально назначенным пользователем (пользователями).

Для выполнения маркировки задержанных заданий, имеющих ненулевые метки безопасности, в комплект установки ОС Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) входят:

  • Графический инструмент fly-admin-printer (доступен через меню "Пуск" > "Панель управления" > "Оборудование" > "Принтеры");
  • Графический инструмент fly-jobviewer, представляющий собой упрощенный аналог инструмента fly-admin-printer, не дающий возможностей настройки сервера и принтеров.
    Инструмент доступен из меню: "Пуск"→ "Системные"→ "Очередь печати";
  • Инструмент командной строки  markjob.
Предупреждение

Для выполнения маркировки запуск любого из этих инструмента должен быть осуществлен от пользователя, входящего в группу lpmac.


При работе с графическим инструментом fly-admin-printer:

  • После запуска инструмента выбрать в левой экранной форме  нужный принтер;
  • В правой экранной форме выбрать закладку "Задания";
  • Выбрать нужное задание, правой кнопкой мыши вызвать контекстное меню, и выбрать пункт "Маркировать";
  • В открывшейся экранной форме заполнить необходимые поля, и нажать кнопку "Да";
  • В списке заданий появится несколько дополнительных заданий, причем и исходное и дополнительное задания будут помечены как "приостановленные";
  • Для вывода промаркированного задания на печать печать следует выбрать исходное задание, и нажать кнопку "возобновить".

При работе с инструментом командной строки markjob:

  • После запуска инструмента на экран выводится список заданий печати и запрашивается ввод нужного номера;
  • Ввести номер задания;
  • заполнить необходимые реквизиты;
  • после ввода всех реквизитов маркировка будет выполнена автоматически;
Информация
Формат маркеров документов задаётся в файле /etc/cups/marker.template.


...