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

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

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

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

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


Rambler's Top100

  

Как внедрить SMB в среде Unix

Эрик Хэммонд

Интеграция систем Unix и Windows — занятие не для слабохарактерных.

У администраторов есть множество вариантов по предоставлению совместного доступа к файлам, принтерам, эмуляции терминалов, но это не снимает проблему обеспечения работы в гетерогенной среде. Доступ Windows-клиентов к файлам и принтерам Unix можно осуществить несколькими способами — посредством клиентов NFS (Network File System), через шлюзы NFS или с помощью сервера SMB (Server Message Block).

NFS требует инсталляции специальных клиентов в Windows и демона PCNFSd на сервере Unix для аутентификации. Хотя файловая система NFS широко распространена и документирована, она до сих пор является источником множества проблем. К примеру, вы должны получить доступ к каждому клиенту Windows и администрировать пользователей и на Unix и на Windows.

Шлюз NFS, такой, как Reflection NFS Gateway фирмы WRQ, — это вариация на тему клиента NFS. Он запускается на сервере Windows NT и работает на нем как клиент NFS, устанавливая файловые системы NFS, экспортированные из Unix, и предоставляя совместный доступ к ним в сети Windows. Это отменяет необходимость работать с каждым клиентом и сводит к минимуму воздействие на сервер, работающий под управлением Unix. Но в таком случае вы должны будете использовать два сервера, чтобы обеспечить работу одного, таким образом создавая потенциальное узкое место в виде NFS-шлюза.

Третий способ — установка режима совместимости с сетью Windows на Unix-сервере путем предоставления доступа к файлам и принтерам Windows через SMB. Привлекательность его состоит в том, что вам не понадобится иметь дело с клиентами Windows или перезагружать сервер NT задачами обеспечения доступа к файлам и принтерам Unix. Такого рода возможности обеспечивает множество продуктов, как бесплатных, так и коммерческих, включая Samba, TotalNet Advanced Server (TAS), Advanced Server для Unix фирмы AT&T и VisionFS фирмы The Santa Cruz Operation.

Мы остановимся только на внедрении SMB в Unix, используя сервер Samba, работающий на Solaris. Хотя основанные на Unix SMB-решения предлагают различные дополнительные возможности, к примеру Total Advanced Server фирмы AT&T обеспечивает функционирование первичного контроллера (Primary Domain Controller Windows NT — PDC), а TAS предлагает доступ к файлам и принтерам для клиентов Novell NetWare и Apple Macintosh, их способность предоставления доступа к файлам и принтерам посредством SMB приблизительно одинакова.

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

Конфигурировать средства совместного использования файлов и принтеров в Samba достаточно просто. К тому же сетевые переназначения имен файлов стали меньшей проблемой, поскольку платформы стали более приспособленными для обращения со свободными именами логических устройств. Вы можете использовать сервер Unix в качестве PDC или BDC (Backup Domain Controller). Такой подход дает большую гибкость. В то же время остается весь инструментарий управления инфраструктурой, имеющийся в Unix.

Для получения копии Samba обратитесь на узел www.Samba.org, который предоставит вам список зеркальных серверов, из него всегда можно выбрать ближайший к вам Web-сервер Samba. Там вы найдете все, что вам нужно, чтобы поставить Samba и работать, включая бинарные файлы для множества платформ, необходимые исходные коды и разнообразные утилиты. Web-сервер Samba содержит также клиенты SMB для множества других платформ.

Я загрузил исходный код для Samba 1.9.18 и позднее для Samba 2.0.2 с Web-сервера. Samba поддерживает специальную утилиту, созданную в рамках проекта GNU, упрощающую процедуру конфигурирования путем запуска конфигурационного сценария на хосте. У меня не возникло никаких трудностей при создании исполняемых файлов Samba как для SPARC-компьютеров, так и для Solaris на платформе Intel.

Обеспечение безопасности на уровне разделяемых ресурсов

В конфигурировании совместного доступа к файлам и принтерам нет ничего сложного, если вы хоть раз уже делали это. Все настройки прописываются в файле smb.conf. Он хорошо документирован, так что вам будет довольно просто отредактировать его вручную. Если же вы столкнетесь с какими-нибудь трудностями, выполните конфигурацию с помощью дополнительных графических средств, которые можно загрузить с Web-сервера Samba. Начиная с версии 2.0, этот продукт поставляется с SWAT — инструментом, позволяющим производить администрирование с помощью любого браузера.

Для каждого разделяемого ресурса требуется указать имя и путь, а также некоторые дополнительные данные, такие, как флаги разрешения чтения, записи или гостевого доступа (guest access). Как и многие SMB-решения для Unix, сервер Samba выделяет для пользователей домашние каталоги, которые находятся в системе Unix и для которых не требуется специальных записей в файле smb.conf. Он проверяет запрос на получение совместного доступа путем обращения к файлу smb.conf и затем (если такое предусмотрено) к списку пользователей в каталоге /etc/passwd либо к аутентификационной базе данных. На основе полученной информации сервер и выделяет соответствующий домашний каталог для каждого пользователя.

Ниже приведены два примера описания ресурсов для совместного использования. Первый из них показывает предоставление доступа только к одному каталогу:

[myhomedir]

path= /export/home/eric

valid users=eric

public=no

writeable=yes

Второй приведен для иллюстрации роли раздела [homes] файла smb.conf. Сервер Samba может выделять домашние каталоги автоматически. Заметьте, что здесь уже отсутствует часть записей, необходимых в первом случае.

[homes]

writeable=yes

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

Конфигурирование принтеров очень похоже на конфигурирование файлов при предоставлении совместного доступа, требуется всего лишь подключить совместный доступ к очереди печати Unix и включить соответствующие опции, например разрешающие гостевой доступ.

Вам следует хорошо обдумать, так ли уж необходим совместный доступ к принтерам на стороне Unix для клиентов Windows. Современные принтеры имеют свои сетевые интерфейсы, и пользователи, возможно, предпочли бы иметь непосредственный доступ к принтерам.

Три конфигурации Samba

При всех своих преимуществах использование SMB для Unix таит в себе один существенный недостаток: сложность администрирования пользователей, работающих на разных платформах. Наиболее надежное решение предполагает поддержку пользователей и на стороне Unix, и на стороне сети Windows, а следовательно, и наличие паролей там и там. Другой, менее надежный подход не предусматривает аутентификации пользователей со стороны Unix, в то время как пользователи Windows имеют одинаковые права доступа ко всем разделяемым ресурсам.

До тех пор пока не появятся более совершенные средства обеспечения кроссплатформенного взаимодействия, чем протокол SMB, администрирование пользователей в смешанной среде Unix—Windows будет потреблять повышенные ресурсы. В принципе существуют инструменты, которые могут унифицировать задачу администрирования, но они вынудят вас иметь дело с каждым пользователем отдельно. К счастью, в сервере Samba имеется опция аутентификации пользователей, которая является на данный момент лучшим решением.

В продукте Samba реализованы три схемы обеспечения безопасности (рис. 1). Первая схема (Share Level) предоставляет защиту на уровне разделяемых ресурсов. Она предусматривает аутентификацию всех пользователей посредством единственного пароля. Вторая (User Level) — обеспечивает доступ к определенным файлам на основе индивидуальных паролей пользователей Unix. Третья (Server Level) — обеспечивает безопасность на уровне сервера посредством аутентификации пользователей на сервере Samba. Выбор соответствующей схемы определяется параметром безопасности в разделе [global] файла smb.conf.

Для включения схемы безопасности Share Level установите параметр security=share.

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

При выборе схемы безопасности User Level сервер Samba использует уже встроенные средства безопасности Unix. Недостаток этого метода заключается в том, что вам придется управлять двумя наборами пользователей, каждому из которых будут присвоены два пароля: один — для сети Windows, другой — для Unix-хоста. Мы рекомендуем набраться терпения и спокойно воспринимать звонки, которые непременно последуют от пользователей; это будет длиться до тех пор, пока пользователи Windows не станут разбираться в Unix не хуже вас.

Для включения режима User Level в файле smb.conf необходимо выставить параметр security=user. Если ваши пользователи, работающие в Windows, идентифицируются посредством зашифрованных паролей, вам нужно будет завести и поддерживать отдельный файл зашифрованных паролей Samba на Unix-хосте и присвоить соответствующему логическому флагу в разделе [global] значение “yes”. В итоге вы создадите еще один очень важный файл, о котором никогда не должны забывать. Samba предоставляет сценарий для конвертирования файлов из каталога /etc/ passwd в файл паролей Samba, но он оказался слишком примитивным. Мы должны были преобразовать его таким образом, чтобы он мог работать со скрытым файлом системы Solaris, в котором хранятся зашифрованные пароли (в отличие от других записей из /etc/passwd).

Помимо работы с базой данных паролей системы Unix, сервер Samba поддерживает множество других методов аутентификации: модули PAM (Pluggable Authentication Modules), систему AFS, среду DCE/DFS и протокол Kerberos. В каждом конкретном случае использование одной из указанных опций может оказаться наиболее удобным, но для этого вам понадобится инсталлировать дополнительное ПО на каждом клиенте Windows.

Но самым привлекательным нам кажется последний метод (Server Level), предусматривающий, помимо сервера Samba, применение дополнительного SMB-сервера уже для аутентификации пользователей. В этом случае параметру security из конфигурационного файла Unix присваивается значение “server”. Адрес дополнительного SMB-сервера (еще одного сервера Samba или просто Windows-компьютера) тоже задается специальным параметром в файле smb.conf.

Поскольку ваши пользователи идентифицируются другим SMB-сервером, у них будет доступ к Unix-файлам на основе конфигурации, определяемой Samba. Таким образом, любой злоумышленник, желающий взломать ваш аутентификационный сервер, должен также получить доступ к вашему Unix-серверу. Поэтому от защиты вашего домена Windows NT или рабочей группы требуется такая же надежность, как и от защиты Unix-системы.

Применение для аутентификации пользователей другого сервера SMB придает схеме обеспечения безопасности дополнительную гибкость. Вы можете обслуживать пользователей только в Windows-сети и назначить всем им единый идентификатор на стороне Unix. Либо вы можете поддерживать пользователей в обеих системах с идентичными именами, позаботившись о том, чтобы они хранили список паролей в сети Windows.

Существуют также и смешанные схемы обеспечения безопасности — когда одним пользователям предоставляется индивидуальный доступ, остальные же обращаются к общим ресурсам через один идентификатор Unix. Достаточную гибкость предоставляют также группы пользователей в Unix.

Чем больше усилий вы потратите, создавая понятную стратегию администрирования пользователями, тем в дальнейшем вам будет легче выполнять функции администратора. Возможно, вам понадобится разработать или приобрести специальные инструменты для администрирования пользователей в Unix и Windows, но тогда вы вынуждены будете потратить некоторое время и на их обучение.

Поскольку Windows 95/98 и Windows NT поддерживают длинные имена файлов, следует предусмотреть и постараться свести к минимуму проблемы, связанные с совместным использованием таких файлов в Unix и в Windows. Для клиентов, использующих имена файлов только в формате 8.3, сервер Samba позволяет соответствующим образом их преобразовывать. Способ очень похож на тот, который применяется Windows 95/98 для преобразования имен файлов в формат DOS.

Кроме того, Samba позволяет преобразовывать и типы файлов — например, файлы *.htm на стороне Unix могут быть представлены как *.htm на стороне DOS. Подобно Windows NT, версия 2.0 по умолчанию не чувствительна к регистру символов, однако сохраняет его при выводе имени файла на дисплей. В случае необходимости вы можете изменить эту настройку, отредактировав файл smb.conf.

Работа в качестве контроллера домена является очень интересным вопросом для SMB-решений в Unix: может ли Unix-компьютер действовать как PDC или BDC в домене Windows NT? Advanced Server для Unix фирмы AT&T предлагает полное функционирование NT-сервера для Unix-платформ (этот продукт появился в результате соглашения между фирмами Microsoft и AT&T). Отсюда можно сделать вывод, что AT&T имеет доступ к исходному коду NT.

В некоторые продукты, включая Samba и ОС Solaris фирмы Sun, также заложены возможности PDC, но нам пока не известно ни одного случая отказа от NT-сервера в пользу двух вышеназванных. Ни в одном из этих продуктов до сих пор не реализована полная функциональность первичного контроллера домена.

Подведем итоги

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

Протокол CIFS (Common Internet File System) — следующее поколение SMB — обещает значительно упростить совместное использования файлов между приложениями Unix и Windows. Он уже поддерживается несколькими продуктами, включая и Samba. Применение CIFS позволит эффективнее использовать протокол TCP/IP, а соединения через распределенные сети сделает более надежными.

Установка SMB на стороне Unix делает доступными ресурсы этой ОС для Windows-клиентов без необходимости устанавливать какое-либо дополнительное системное ПО. Тщательно спланировав процесс внедрения такого продукта, как Samba, вы тем самым обеспечите надежный и защищенный доступ со стороны ваших клиентов.





  
8 '1999
СОДЕРЖАНИЕ

колонка редактора

• Виртуальный Госснаб для реальной экономики

локальные сети

• Устанавливаемые в стойку серверы

• СКС категории 6: за и против

• Избежать полировки наконечников оптических разъемов пока не удается

• Коаксиальный кабель: кому сухарь, а кому хлеб с маслом

• Nortel Networks: объединение на всех уровнях

• Балансировка загрузки «многозадачных» руководителей

• На заводе APC в Галвее

интернет и интрасети

• Настоящее и будущее средств разработки

• XML: эсперанто для приложений

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

• Как внедрить SMB в среде Unix

• Управление уровнем обслуживания с разных точек зрения

• Подключение филиала по выделенной линии. Практические советы

услуги сетей связи

• MSDSL: технология на все случаи жизни

• Маленькие и большие шлюзы IP-телефонии

• GSM on the Net: мобильность и интеграция обслуживания

• Операторы связи на рубеже столетий

системы учрежденческой связи

• Микросотовые системы стандарта Dect

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

• Средства антивирусной защиты серверов

• С такими друзьями...

новые продукты

• HP для инженеров, дизайнеров и поставщиков информационных услуг; Никто не хочет класть все яйца в одну корзину; Сatalyst 2924M XL: больше портов для сетевых штормов



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