Обработкой зашифрованных паролей управляет параметр encrypt passwords. Для того чтобы сервер Samba выполнял проверку закодированных паролей в файле smbpasswd, следует задать значение Yes этого параметра. Чтобы включить зашифрованный пароль пользователя в файл smbpasswd, надо выполнить следующую команду:
# smbpasswd -а имя_пользователя
В процессе выполнения утилита smbpasswd запросит пароль (по требованию программы вам придется ввести его дважды). В момент вызова smbpasswd на компьютере должна существовать учетная запись пользователя с указанным именем, иначе программа smbpasswd не включит пароль в базу. При первом запуске утилита smbpasswd отобразит предупреждающее сообщение о том, что файл smbpasswd отсутствует. Однако в ходе дальнейшей работы программа автоматически создаст этот файл, поэтому на предупреждающее сообщение можно не обращать внимание.
Дополнительные меры по защите обеспечивают параметры hosts allow и hosts deny. Они действуют подобно файлам /etc/hosts.allow и /etc/hosts.deny TCPWrappers, которые рассматривались в главе 4. Данные параметры позволяют задавать список узлов, которые имеют право взаимодействовать с сервером, и список узлов, для которых такое взаимодействие запрещено. Например, приведенное ниже выражение разрешает взаимодействие с системой только для узлов 192.168.7.0/24 и algernon.pangaea.edu.
hosts allow = 192.168.7. algernon.pangaea.edu
Последующие разделы посвящены работе Samba в качестве сервера имен NetBIOS, основного броузера и контроллера домена. Читатели, не интересующиеся данными вопросами, могут перейти к разделу "Организация файлового сервера с помощью Samba". Конфигурация, установленная по умолчанию, обеспечит работу Samba во многих сетях.
Samba как сервер имен NetBIOS
В сетях NetBIOS необходимы средства преобразования имен. Преобразование имен NetBIOS и TCP/IP выполняется различными способами; основные из них описаны ниже.
• Имена TCP/IP. Для преобразования можно использовать имена TCP/IP; в Windows 2000, Windows XP и Samba этот способ применяется по умолчанию. Следует заметить, что такое решение не имеет непосредственного отношения к NetBIOS.
• Применение файла lmhosts. Система может хранить информацию о соответствии имен IP-адресам в файле, который обычно называется lmhosts и выполняет те же функции, что и файл /etc/hosts в системе Linux.
• Широковещательная передача. Если компьютеру необходимо определить адрес другого компьютера, он передает запрос в широковещательном режиме. Средства, реализующие данный способ, просты в настройке и хорошо работают в небольших сетях. В сетях большого размера такое преобразование приводит к неоправданному увеличению трафика. Если сеть состоит из нескольких подсетей, объединенных маршрутизаторами, данный способ будет применим только в том случае, когда маршрутизаторы настроены для передачи широковещательных сообщений.
• WINS-сервер. Сервер NBNS (NetBIOS Name Service — служба имен NetBIOS), который также известен под названием WINS (Windows Internet Name Service — сервер Internet-имен для системы Windows), выполняет преобразование имен в IP-адреса.
Чтобы сервер Samba мог работать в качестве WINS-сервера, надо включить в раздел [global] файла smb.conf следующий параметр:
wins support = Yes
WINS-сервер не требует дополнительной настройки (по крайней мере на стороне сервера). Если клиенты и серверы NetBIOS могут обмениваться данными по сети, они регистрируются на WINS-сервере. WINS-сервер должен быть задан для каждого компьютера, подключенного к сети. В системе Windows для этого используется диалоговое окно TCP/IP Properties, показанное на рис. 7.1. Если вы установите флажок опции Use DHCP for WINS Resolution, Windows будет получать необходимую информацию от DHCP-сервера. (Вопросы настройки DHCP-сервера рассматривались в главе 5.)
Рис. 7.1. Диалоговое окно TCP/IP Properties в системе Windows позволяет задавать адрес WINS-сервера
Чтобы сервер Samba использовал для преобразования имен NetBIOS WINS-сервер, вам надо задать в файле smb.conf два параметра: wins server и name resolve order. В качестве значения первого параметра надо указать IP-адрес WINS-сервера. Второй параметр может принимать от одного до четырех значений, каждое из которых задает отдельный способ преобразования имен. Samba будет пытаться применить эти способы в том порядке, в котором они указаны в составе name resolve order. (Значения host и beast определяют соответственно обычный метод преобразования с использованием средств TCP/IP и широковещательную передачу, которая осуществляется для преобразования имен NetBIOS.) Пример использования указанных параметров приведен ниже.
wins server = 192.168.1.1
name resolve order = wins lmhosts host beast
Роль WINS-сервера может выполнять только одна система. Если таких серверов будет несколько, ненадежность выполнения процедуры преобразования снизится, так как некоторые компьютеры будут регистрироваться на одном сервере, а остальные — на других серверах. (В NetBIOS-сетях предусмотрен механизм использования вторичного сервера имен. Наличие вторичного сервера увеличивает надежность сети и обеспечивает работу клиентов при выходе основного сервера из строя. Однако система Samba не может работать в качестве вторичного сервера имен.)
Samba как основной броузер
Выше я упоминал о броузерах Network Neighborhood и My Network Places. Эти программы не являются Web-броузерами. Они предназначены для просмотра данных, предоставляемых серверами SMB/CIFS, работающими в сети NetBIOS (рис. 7.2). Дважды щелкнув мышью на имени компьютера, вы увидите информацию о разделяемых объектах SMB/CIFS. Разделяемые объекты файлов отображаются в виде папок, а разделяемые объекты печати — в виде пиктограмм с изображением принтеров. Дважды щелкнув на изображении папки, вы получите доступ к разделяемым файлам и сможете работать с ними так же, как и с файлами на локальном жестком диске.
Рис. 7.2. Windows предоставляет информацию о компьютерах вашего домена или рабочей группы, а также о компьютерах, принадлежащих другим доменам или рабочим группам, которые находятся в текущем сегменте локальной сети
Такое взаимодействие удобно с точки зрения пользователя, но для того, чтобы оно стало возможным, необходимо иметь соответствующим образом настроенное программное обеспечение. Рассмотрим описанную ситуацию с точки зрения сетевого броузера Windows. Как он может получить информацию о том, какие компьютеры присутствуют в сети и какие объекты доступны для совместного использования? Для этого один из компьютеров в сегменте сети NetBIOS должен выполнять функции основного локального броузера (local master browser). Этот компьютер хранит список серверов SMB/CIFS, принадлежащих сегменту сети, и предоставляет данные клиентам SMB/CIFS в ответ на их запросы. В результате, для того, чтобы иметь сведения о разделяемых ресурсах, клиент должен знать только адрес основного броузера, а такую информацию он может получить с помощью широковещательного сообщения. Сразу после загрузки клиент передает в широковещательном режиме запрос на получение адреса основного броузера. То же делает и сервер, но при этом он регистрирует свои ресурсы. В результате на основном броузере всегда содержится самая новая информация о конфигурации сети.