Ж у р н а л   о   к о м п ь ю т е р н ы х   с е т я х   и   т е л е к о м м у н и к а ц и о н н ы х   т е х н о л о г и я х
СЕТИ И СИСТЕМЫ СВЯЗИ on-line
  ПОИСК: ПОДПИСКА НА НОВОСТИ: НОМЕР:
    ДОМОЙ • Архив: Новостей | Конференций | НомеровПодписка
 
   
 
   
    
РЕДАКЦИЯ
 
Все о журнале
Подписка
Как проехать
Где купить
Отдел рекламы
График выхода журнала
Адреса в Интернет

РУБРИКАТОР
   
• Инфраструктура
• Информационные
   системы

• Сети связи
• Защита данных
• Кабельные системы
• Бизнес
• Колонка редактора
• Электронная
   коммерция

• Только на сервере
• Системы
   учрежденческой
   связи

• Новые продукты


Rambler's Top100

  

Сетевая печать — от Windows к Linux и обратно

Пит Пейн

Сейчас, когда ОС Linux уже “пришла” на серверы и все шире распространяется на настольных компьютерах, все большему числу организаций приходится обеспечивать интероперабельность между несколькими версиями Windows и Linux. А это сделать не так просто даже для одной из самых основных задач — печати.

При отсутствии соответствующих кросс-платформенных средств печати, Linux-клиен-там придется довольствоваться серверами печати Linux, а Windows-клиентам — серверами печати Windows, что может (в перспективе) удвоить ваши расходы на приобретение оборудования и сопровожде-ние сетевой печати. Более старые механизмы для этого процесса, такие, как LPD и LPRng, здесь не всегда помогают — фирменные расширения поставщиков плохо или совсем не поддерживают многие средства, необходимые в гетерогенных средах Windows—Linux, — например, просмотр очередей принтеров, удаленное администрирование серверов печати, преодоление отказов, кластеризация и интеграция с системами аутентификации и авторизации.

Но есть две технологии, обеспечивающие печать в смешанных средах Linux—Windows, — это Samba и CUPS (Common Unix Printing System). Вы можете выбрать одну из них или использовать некую их комбинацию для создания надежной кросс-платформенной системы печати.

Полную версию данной статьи смотрите в 11-ом номере журнала за 2005 год.

Samba и CUPS

Samba — это ПО с открытым исходным кодом на основе сетевого протокола SMB (Server Message Block), посредством которого не-Windows-машина, например ПК с ОС Linux, может “общаться” с Windows-машиной, используя предпочитаемый Microsoft сетевой протокол. Для Windows-клиента это выглядит как сетевое взаимодействие с очередной машиной, работающей под управлением ОС Windows, а не Linux или любой другой ОС. Samba поддерживает многие службы Windows, включая файловую, аутентификации, авторизации, имен и печати. ПО Samba версии 3 и выше хорошо интегрируется со средствами управления домена Windows — например, со списками контроля доступа (ACL), справочниками Active Directory (AD) и LDAP.

В то же время система CUPS для сетевых коммуникаций использует IPP (Internet Printing Protocol) вместо SMB. Протокол IPP — это расширение протокола HTTP, поддерживаемое всеми основными дистрибутивами Linux и версиями Windows 2000 и выше. Этот протокол пользуется широкой поддержкой среди производителей и уже становится стандартной технологией сетевой печати для основных ОС. Хотя ОС Windows 9.x изначально IPP не поддерживает, можно скачать необходимое ПО с сайта Microsoft.

Но CUPS — это нечто большее, чем просто программа — планировщик печати (спулер): API этого пакета поддерживает команды печати ПО третьих фирм, обеспечивает управление очередью на печать, предоставляет фильтры печати, планировщик заданий и административный Web-интерфейс. В отличие от Samba, использующего для процесса печати отдельную подсистему, CUPS занимается всеми аспектами локальной и сетевой печати — от получения задания на печать до самой печати, админи-стрирования и сбора статистики.

Свежий взгляд

Печать через сеть — задача в общем-то простая: обычно клиентская машина подготавливает задание на печать, используя фирменный драйвер целевого принтера. Затем готовое задание пересылается серверу печати, который его буферизует (ставит в очередь). Когда принтер освободится, спулер (планировщик печати) отправляет ему задание на печать. Схема “Простая организация печати” показывает, что задание на печать переправляется на принтер без всяких преобразований. Подсистема печати, которой может быть LPD, LPRng, планировщик печати Windows или любой другой подходящий спулер, играет роль простого “транзитного пункта” для выполнения задания на печать.

В большинстве организаций можно легко осуществлять печать с использованием одного спулера, правда, при этом возникнут трудности с администрированием. Этот вариант лучше всего подойдет для домашних сетей и малых офисов, где принтеры редко заменяют и модернизируют. Но в более крупных сетях, где каждый клиент должен быть сконфигурирован особо, с указанием драйвера конкретного принтера, это не является столь хорошим решением. В лучшем случае оно может стать дополнительной “головной болью”, которая превращается в кошмар, когда наступает время модернизировать драйвер принтера или заменять сам принтер. Для обновления драйверов вам придется, что называется, “лично посетить” каждую настольную систему или принудительно загрузить драйверы на клиентские машины с помощью ПО удаленного управления.

Кроме того, такая организация печати (с одним спулером) не поддерживает средства преодоления отказов и кластеризацию. Клиент должен “знать” серверы печати по именам, иначе если сервер по умолчанию недоступен, то задание на печать не будет автоматически переадресовано другому серверу. И наконец, не все спулеры печати поддерживают новейшие методы аутентификации и авторизации. Сервер печати контролирует доступ к ресурсам печати, и каждому клиенту он предоставляется особо. Посему этот этап часто опускается, и в результате вы получаете незащищенный централизованный сервер печати без всяких возможностей контролировать принтерные ресурсы.

Впрочем, при такой конфигурации печати (с одним спулером) можно воспользоваться сетевым ПО Samba. В сложных инсталляциях оно справляется с данными проблемами безопасности и загружает драйверы принтеров клиентам. Однако спулеры печати Samba не поддерживают средства обеспечения отказоустойчивости и кластеризации. (Вы можете запустить и ПО CUPS в конфигурации с одним спулером, но это не лучший способ его использования.)

Заставьте работать сервер

Более гибкая архитектура сетевой печати возможна, если сервер печати выполняет некую обработку заданий на печать. На схеме “CUPS обеспечивает сетевую печать” видно, что клиент не формирует задание на печать с помощью драйвера конкретного принтера. Вместо этого он конвертирует задание в формат PostScript, затем оно пересылается на сервер печати. При этом спулер печати сконфигурирован сообразно возможностям поддержки PostScript целевым принтером. Если принтер поддерживает PostScript изначально, то спулер напрямую отправляет задание на принтер без дальнейших модификаций. Если же целевой принтер не поддерживает PostScript, то подсистема печати пропускает задание на печать через один или более фильтров. Эти фильтры преобразуют задание, “переводя” (конвертируя) поступающие команды PostScript на язык, понятный этому принтеру.

Главное преимущество такой архитектуры заключается в том, что специфичные команды печати на языках PCL, ESC/P2 и др. более не генерируются драйверами печати на клиентах — теперь эта задача возложена на сервер печати. Вместо драйвера конкретного принтера, обычно инсталлируемого на Windows-клиент, на последний ставится новый принтерный драйвер, который генерирует задание на печать, используя команды PostScript. В этом случае для модернизации принтера вам достаточно изменить конфигурацию подсистемы печати на сервере так, чтобы он использовал новый набор фильтров. Клиенты будут подвергнуты модификации только при отсутствии у их драйверов печати какого-либо средства или если они окажутся дефектными.

Такую архитектуру поддерживает система CUPS, что позволяет ей обеспечивать надежную аутентификацию и авторизацию, применяя базовую или дайджест-аутентификацию либо аутентификацию на основе механизма сертификатов. CUPS также предоставляет возможность просмотра очередей принтеров через Web-браузер. Это ПО поддерживает удаленное администрирование сервера печати через стандартный Web-браузер, автоматическое преодоление отка-зов и кластеризацию, используя неявные или явные классы (группирование идентично именованных принтеров в сети), механизмы посредника, шифрования и постоянно растущую библиотеку фильтров печати.

Кроме того, CUPS предоставляет массу возможностей в плане поддержки оконечных устройств. Это позволяет перенаправлять вывод на печать на различные целевые устройства, в том числе на параллельные и последовательные, USB-порты, совместные ресурсы Samba для печати через серверы печати Windows, а также другие CUPS-серверы, благодаря чему обеспечиваются дополнительные возможности преодоления отказов и кластеризация.

Расширенные опции

Лучше всего для сетевой печати воспользоваться сразу и Samba и CUPS. В этом случае Samba действует как спулер печати, позволяя присоединить сервер печати к домену AD, обеспечить аутентификацию посредством LDAP или с помощью других методов. Благодаря этому совершенствуется и усиливается встроенная аутентификация CUPS. К тому же можете сконфигурировать Samba так, чтобы гарантировать загрузку принтерных драйверов клиентам и не заниматься каждой клиентской машиной отдельно. Причем для загрузки драйверов можно создать сценарий, который будет исполняться после регистрации пользователя в системе. Samba также позволяет публиковать принтеры в справочнике AD или LDAP, что облегчает их обнаружение и использование в сети. Такой комбинированный подход является наилучшим решением для смешанных сетей и обеспечивает вам гибкую, легко конфигурируемую и стабильную архитектуру сетевой печати, гарантирующую “хорошее поведение” Windows- и Linux-машин относительно друг друга.

Используя серверы печати Windows, вы можете на своих Linux-клиентах локально запустить пакеты CUPS, которые — если их соответственно сконфигурировать — конвертируют команды печати PostScript в команды, “понятные” целевому принтеру. После конвертирования ПО CUPS отсылает задание на печать Windows-серверу. Таким образом, запустив CUPS на Linux-клиентах, вы сможете пользоваться и сервером печати Windows.

Другой подход предлагает расширить возможности серверов печати Windows, установив промежуточную Linux-машину с работающим ПО CUPS. Эта Linux-машина может использоваться как Linux-, так и Windows-клиентами для сетевой печати. Причем она не будет заниматься собственно печатью, а переадресует задания на печать Windows-серверу печати, который, в свою очередь, отправит их на принтер. Это позволит вам сохранить свой Windows-сервер печати и вдобавок воспользоваться всеми преимуществами CUPS.

Еще один вариант организации сетевой печати в среде Linux—Windows — использование специального сетевого устройства. Аналогично аппаратным межсетевым экранам и маршрутизаторам оно подсоединяется к сети и одному или более принтерам. Это устройство “объявляет” эти принтеры в сети и обеспечивает сетевую печать. С помощью Web-браузера вы сможете конфигурировать принтеры, изменять параметры безопасности и т. д. Только предварительно убедитесь в том, что выбранное вами устройство поддерживает все операционные системы, из которых вы будете печатать..





  
11 '2005
СОДЕРЖАНИЕ

инфраструктура

• Недорогие коммутаторы Ethernet

• Сетевая печать — от Windows к Linux и обратно

• Выбираем IP-телефоны

информационные системы

• Архивирование сообщений электронной почты

• Тестируем системы архивирования электронной почты

сети связи

• Реализация программы «Тетрарус»

• По пути либерализации

• Видеосвязь в трех ипостасях

кабельные системы

• Сеть 10-Gigabit Ethernet на базе медной проводки. Реально ли это?

• Кабельные лотки развиваются в соответствии с меняющимися потребностями

защита данных

• Тестируем межсетевые экраны для филиалов компаний

• Content-security силами ISP

• Устраняйте уязвимые места прежде, чем их атакуют


• Калейдоскоп



 Copyright © 1997-2007 ООО "Сети и Системы Связи". Тел. (495) 234-53-21. Факс (495) 974-7110. вверх