Данная статья применима к:
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.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) (версия cups 2.3.3op2-4astra.se9 b dsit).
Включение удаленного использования сервера печати
Для включения удаленного использования сервера печати:
От имени администратора (в Astra Linux Special Edition с включенным МКЦ - администратора с высоким уровнем целостности) через механизм sudo выполнить команду:
sudo cupsctl --remote-admin --share-printers --remote-any ServerAlias=`hostname`где:
--remote-admin - указание разрешить удаленное администрирование. По умолчанию разрешено только локальное администрирование (т.е. принимаются только обращения через адрес localhost, но не через полное имя хоста);
--share-printers - указание включить разделение принтеров;
--remote-any - разрешение принимать задания печати с любых адресов (по умолчанию задания печати разрешено получать только от компьютеров, находящихся в той же подсети, что и сервер);
ServerAlias - "псевдоним" сервера печати, который может быть указан в HTTP-обращениях к нему (подразумевается, что все эти псевдонимы разрешаются в IP-адреса с помощью настроенной службы DNS). Можно указать метасимвол "*" (звездочка) для обозначения любых псевдонимов. При необходимости в конфигурационном файле можно указать несколько псевдонимов, разделенных пробелами (в команде cupsctl такая возможность не поддерживается). Для того, чтобы псевдонимы работали, должно быть разрешено удаленное администрирование.В конфигурационном файле /etc/cups/cupsd.conf удалить строку:
Port 631
и строку Listen привести к виду:
Listen 0.0.0.0:631
При первичных настройках значение параметра DefaultAuthType должно быть Basic;
Проверить корректность конфигурационных файлов:
sudo cupsd -tПерезапустить сервер печати CUPS командой:
sudo systemctl restart cupsПроверить состояние сервиса печати CUPS командой:
sudo systemctl status cups
Предоставление пользователям прав на выполнение административных действий
Пользователи, от имени которых будут выполняться действия по настройке принтеров не связанные с мандатным управлением доступом, должны быть включены в группу lpadmin (локальная группа, используемая "по умолчанию") или в другую группу, указанную в списке значений параметра SystemGroup в конфигурационном файле /etc/cups/cups-files.conf).
Кроме того, разрешения на выполнение операций для отдельных пользователей и групп могут быть явно заданы в описаниях ресурсов в конфигурационном файле /etc/cups/cupsd.conf (пример использования доменной группы приведен делее в разделе про настройку аутентификации Kerberos, подробное описание форматов конфигурационных файлов см. man cupsd.conf.
Предоставление пользователям прав на выполнение административных действий с классификационными метками
Пользователи, работающие с маркировкой заданий печати в Astra Linux Special Edition, должны быть включены в локальную группу lpmac (создается при установке ОС) или группу lpmac_ald (предназначена для использования в доменах и должна быть создана вручную). Имена этих групп задаются в параметре MacAdmin в конфигурационном файле /etc/cups/cupsd.conf (параметр используется отдельно для каждого определяемого ресурса).
Добавление принтера через web-интерфейс CUPS
Для добавления принтера открыть web-браузер и ввести адрес:
Нажать кнопку "Добавить принтер", на запрос аутентификации ввести имя и пароль пользователя, входящего в группу lpadmin.
Далее будет представлен список устройств для выбора. Фактическое имя принтера отображается рядом с меткой ( например, USB-принтеры напротив USB Printer #1). Принтеру можно присваивать любое имя, аналогично для пунктов 'Расположение' и 'Описание'. После выбора соответствующего драйвера настройки будут окончены.
При установке USB-принтер должен отображаться в списке устройств на странице Добавить принтер.
Убедитесь в правильности настроек, нажав на кнопку Print Test Page (Печать тестовой страницы) в выпадающем меню Maintenance (Обслуживание). Если принтер не печатает, но вы уверены в правильности всех настроек, попытайтесь сменить драйвер принтера на другой.
Печать файла из командной строки
Печать файла из командной строки можно выполнить командой:
Добавление сетевого принтера из командной строки
Добавление сетевого принтера из командной строки можно выполнить командой:
Ограничение отображения сетевых принтеров в LibreOffice
Раздел "Ограничение отображения сетевых принтеров в LibreOffice" применим только к Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) с установленным обновлением БЮЛЛЕТЕНЬ № 20210611SE16 (очередное обновление 7)
По умолчанию при выборе устройства печати в LibreOffice (Файл - Печать - Принтер) в списке устройств отображаются все обнаруженные сетевые принтеры. Для того, чтобы в списке доступных устройств отображались только принтеры, добавленные через менеджер печати Fly, нужно добавить в файл /etc/cups/client.conf строчку:
DiscoveredOnly Yes
после чего перезапустить службу cups:
Копирование настроек принтеров
Для централизованного управления можно копировать файлы /etc/cups/printers.conf и /etc/cups/ppd/* с компьютера с настроенным принтером на удаленный компьютер при помощи команды scp:
Настройка печати на клиентской машине
- На сервере печати настроить удаленное использование сервера печати;
- На сервере печати настроить принтеры (в том числе, при работае с конфиденциальной информацией в Astra Linux Special Edition установить политику parsec и назначить максимальные допустимые классификационные метки заданий). Настройка принтеров может быть выполнена с использованием утилиты fly-admin-printer (см. электронную справку) или с помощью web-интерфейса CUPS;
На клиентских машинах создать файл /etc/cups/client.conf, в котором должен быть задан единственный параметр ServerName, определяющий имя сервера печати, например:
ServerName <имя_сервера_печати>
Настройка аутентификации Kerberos
Перед настройкой аутентификации Kerberos для корректной работы команд управления на сервере должна быть выполнена настройка клиента, т.е должен быть создан файл /etc/cups/client.conf, в котором должен быть задан единственный параметр ServerName, определяющий имя сервера печати:
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.
Получить билет Kerberos администратора домена (только при работе с CLI FreeIPA. Для примера используется имя администратора admin):
kinit adminСоздать доменные группы:
Доменную группу для общих задач администрирования с именем, например, print_admins:
ipa group-add print_admins
-------------------------------
Добавлена группа "print_admins"
-------------------------------
Имя группы: print_admins
ID группы: 848400014По необходимости - доменную группу для маркировки заданий:
ipa group-add lpmac_ald
Добавить доменных пользователей, которые будут выполнять функции администратора печати, в доменную группу print-admins. Например:
Создать пользователя print_admin:
ipa user-add print_admin --first <имя> --last <фамилия>Добавить доменного пользователя print_admin в доменную группу print_admins:
ipa group-add-member --users=print_admin print_adminsПри необходимости выполнения маркировки заданий печати добавить доменного пользователя (для примера - print_admin) в доменную группу lpmac_ald командой:
sudo gpasswd -a print_admin lpmac_ald
На контроллере домена зарегистрировать доменную службу печати ipp (используется при работе с интерфейсом командной стройки cups и графическим инструментом fly-admin-cups):
ipa service-add ipp/printserver.domain.ipaЕсли необходимо испольровать web-интерфейс cups и сервер печати находится на отдельном сервере, то для этого сервера зарегистрировать службу HTTP:
sudo ipa service-add HTTP/printserver.domain.ipaЕсли сервер печати находится на контроллере домена, то такая служба создана автоматически при создании домена.
Настройки на сервере печати
- Войти в сессию пользователя - администратора системы (на Astra Linux Special Edition с включенным МКЦ - администратора с высоким уровнем целостности) на сервере печати;
Получить билет Kerberos администратора домена для суперпользователя:
sudo kinit adminПолучить таблицы ключей для зарегистрированных доменных служб и сохранить их в файле /etc/krb5.keytab:
Для службы ipp:
sudo ipa-getkeytab -p ipp/printserver.domain.ipa@DOMAIN.IPA -k /etc/krb5.keytabПри необходимости использовать аутентификацию в web-интерфейсе cups:
Если сервер печати находится на отдельном сервере, то получить новую таблицу ключей:
sudo ipa-getkeytab -p HTTP/printserver.domain.ipa@DOMAIN.IPA -k /etc/krb5.keytabЕсли сервер печати находится на контроллере домена, то получить копию существующих ключей доменной службы HTTP (обязательно использовать ключ -r):
sudo ipa service-allow-retrieve-keytab HTTP/dc.domain.ipa --groups=adminsсм. также Настройка использования аутентификации Kerberos в web-браузерах.
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
Убедиться, что ключи добавлены:
sudo klist -kte /etc/krb5.keytab
Настройка аутентификации Kerberos в домене ALD
Настройка аутентификации Kerberos в домене ALD в целом аналогична настройке в домене FreeIPA, отличаются команды для выполнения необходимых действий.
Создать в ALD учетную запись группы администраторов печати:
sudo
ald-admin group-add print_adminsДля выполнения действий по маркировке заданий создать в ALD группу lpmac_ald:
sudo ald-admin group-add lpmac_aldВ файле /etc/cups/cups-files.conf в значении параметра SystemGroup добавить (установить) значение print_admins;
Создать в ALD учетную запись администратора печати и добавить ее в группу администраторов печати ALD, например выполнив команды:
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Для обеспечения совместной работы сервера печати с ALD создать в БД ALD с помощью утилиты администрирования ALD принципала, соответствующего серверу печати. Принципал создается с автоматически сгенерированным случайным ключом:
sudo ald-admin service-add ipp/server.my_domainВвести созданного принципала в группу сервисов mac, используя следующую команду:
sudo ald-admin sgroup-svc-add ipp/server.my_domain --sgroup=mac
Создать файл ключа Kerberos для сервера печати с помощью утилиты администрирования ALD ald-client, используя следующую команду:
sudo ald-client update-svc-keytab ipp/server.my_domain
От имени учетной записи администратора с использованием механизма sudo выполнить следующие команды:
sudo cupsctl DefaultPolicy=default ServerName=server.my_domain MacEnable=On DefaultAuthType=NegotiateПерезапустить сервер печати CUPS, выполнив команду:
sudo systemctl restart cups
Настройка службы печати CUPS
Настройка службы печати CUPS выполняется одинаково для доменов FreeIPA и ALD.
В файле /etc/cups/cups-files.conf на сервере печати заменить строку:
SystemGroup lpadmin
на строку:
SystemGroup lpadmin print_admins
В значениях параметра перечисляются группы пользователей, которым разрешено администрирование. Например, можно не сохранять локальную группу lpadmin, или временно добавить группу admins чтобы предоставить право управления локальным администраторам на время настройки системы, и удалить группу admins после завершения настройки.
Предполагается, что удаленный доступ к службе печати уже настроен как указано в разделе "Включение удаленного использования сервера печати". Выполнить команды (если управление разрешено текущему пользователю):
sudo cupsctl DefaultPolicy=authenticated ServerName=printserver.domain.ipa cupsctl MacEnable=On DefaultAuthType=Negotiateили действуя от имени администратора прямо отредактировать конфигурационный файл /etc/cups/cupsd.conf, указав (добавив) нужные значения (знак "=" в конфигурационном файле не используется, значения параметров указываются через пробел):
DefaultAuthType Negotiate DefaultPolicy authenticated ServerName printserver.domain.ipa
Проверить корректность конфигурационного файла:
sudo cupsd -tПерезапустить службу печати CUPS сервер командой:
sudo systemctl restart cups
Тестирование функционирования аутентификации Kerberos
В сессии администратора, не имеющего права управления службой cupsd:
Удалить все билеты Kerberos, полученные от имени sudo:
sudo kdestroy -AПопробовать выполнить команду изменения конфигурации (в команде можно использовать уже имеющиеся значения параметров, чтобы не вносить реальные изменения в настроенную конфигурацию), например:
sudo cupsctl DefaultPolicy=defaultитогом выполнения команды должен быть отказ в доступе:cupsctl: В доступе отказано
или (в зависимости от используемой ОС):
cupsctl: Запрещено
Получить билет Kerberos доменного администратора печати, например:
sudo kinit ipa_print_admin- Повторно выполнить команду изменения конфигурации, при наличии билета Kerberos доменного администратора печати команда должна быть выполнена без ошибок.
Ограничение видимости заданий (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.
в систему управления печатью добавлены следующие возможности:
- Возможность ограничения пользователем видимости заданий других пользователей: опция "Только текущего пользователя" в меню списка заданий. Опция включает отображений заданий только текущего пользователя. Все другие задания будут скрыты;
Возможность принудительного ограничения администратором видимости пользователями заданий других пользователей. Для включения этой возможности добавить в файл /etc/cups/cupsd.conf строку:
MyJobsAccessOnly On
и осуществить перезапуск сервиса печати CUPS. В результате включения этой опции пользователям будут разрешено видеть только свои задания.
Исключение - администраторы печати (пользователи, состоящие в группе lpadmin). Они видят все задания независимо от состояния данной опции.