Денис Колисниченко - Linux-сервер своими руками Страница 65
Денис Колисниченко - Linux-сервер своими руками читать онлайн бесплатно
С помощью Samba вы сможете следующее:
1. Предоставлять доступ к разделам Linux для рабочих станций Windows.
2. Получать доступ к ресурсам сети Microsoft.
3. Распечатывать документы на сетевых принтерах сети Microsoft, а также позволить использовать свой принтер в качестве сетевого.
При установке, на первом этапе нужно установить пакеты samba, samba-common и samba-client:
# rpm –ih /mnt/cdrom/Mandrake/RPMS/samba*
При этом, если вы используете другой дистрибутив (не Mandrake, как указано в примере), перейдите в нужный каталог.
Пакет samba состоит из двух основных файлов — smbd и nmbd. Первый из них является носителем протокола 8MB, а второй обеспечивает поддержку имен NetBIOS. Сразу же после их настройки ваш компьютер будет отображаться в сети.
После установки сервисы smbd и nmbd конфигурируются как автозапускаемые, то есть вам не придется самостоятельно производить никаких действий по их запуску. Возможно, вас не устраивает такой вариант (например, в тех случаях, если обращение к ним будет производиться редко, и вы хотите освободить память). В этой ситуации никто не мешает добавить их в файл конфигурации суперсервера /etc/inetd.conf и запускать «по востребованию». При этом не забудьте только отключить их автозагрузку с помощью конфигуратора системы.
В этой главе будет рассмотрена настройка пакета Samba «вручную», то есть не прибегая к помощи конфигуратора. Вы же можете использовать конфигуратор netconf (см. рис. 9.1), но в этом случае есть одно «но»: если вы будете настраивать Samba или любую другую службу сервера в другом дистрибутиве (не Red Hat или Mandrake), привычного вам конфигуратора может и не быть, поэтому вы должны знать хотя бы назначение и расположение системных файлов той или иной службы сервера.
Рис. 9.1. Конфигурирование Samba
Если же вы все-таки решили использовать конфигуратор, запустите netconf и, перейдя на вкладку Server Tasks, выберите конфигурирование samba (см. рис. 9.1).
С помощью конфигуратора netconf вы можете полностью настроить пакет Samba — от указания общих параметров (см. рис. 9.2) до определения общих ресурсов (см. рис. 9.3).
Рис. 9.2. Общие параметры
Рис. 9.З. Определение общих ресурсов
9.2. Настройка файлового сервера
Основным конфигурационным файлом сервера Samba является файл /etc/smb.conf. Именно в нем задаются все используемые и предоставляемые ресурсы. Формат данного файла напоминает формат INI-файла программ для Windows, например, win.ini. Файл /etc/smb.conf состоит из нескольких секций, в начале каждой из которых в квадратных скобках указывается ее имя. Параметры в каждой секции указываются в виде записей Имя=3начение. Основной является секция [global], ее пример приведен в листинге 9.1.
Листинг 9.1. Пример секции global[global]
workgroup = WORK
comment = Linux Server
guest account = guest
security = share
printing = bsd
printcap name = /etc/printcap
load printers = yes
client code page = 866
character set = koi8-r
encrypt passwords = Yes
log file = /var/log/samba/log.%m
max log size = 50
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
dns proxy = no
wins support = yes
domain master = yes
interfaces = 192.168.1.1/24 192.168.2.1/24
Параметр workgroup определяет рабочую группу или имя домена NT. Параметр comment аналогичен параметру NT Description для ОС Windows NT или Description (Описание компьютера) для ОС Windows 9x. Параметр guest account задает имя пользователя. Указание guest в качестве пользователя означает, что пользователи получают доступ без регистрации. Вернее, регистрация все же происходит, но используется гостевая учетная запись.
Следующий параметр — параметр security может принимать три значения:
share — при каждом доступе будет запрашиваться имя пользовательского ресурса.
user — для аутентификации будет использоваться имя пользователя и пароль, которые используются для входа в сеть Windows. Это значение используется по умолчанию.
server — для проверки пароля будет использоваться сервер NT.
Записи printing и printcap name относятся к подсистеме печати. Первая из них задает систему печати типа BSD, а вторая — указывает, где расположен файл, содержащий информацию о принтерах. О настройке принтеров мы поговорим немного позже.
Параметры client code page и character set необходимы для корректного отображения русскоязычных имен файлов файловой системы Windows.
В ОС Windows NT, начиная с Service Pack 3, передача паролей по сети происходит в закодированном виде. Последние версии Samba позволяют поддерживать эту возможность. Для этого нужно установить значение параметра encrypt password равным yes. Если ваша версия Samba не поддерживает данную возможность, то вы можете отключить использование закодированных паролей в Windows. Учитывая, что вам придется вручную изменять параметр реестра всех рабочих станций Windows, мне кажется, что проще обновить Samba. Но если вас все же интересует, какой именно параметр реестра Windows нужно изменить, я укажу его. В разделе реестра ОС Windows NT:
[NT HKEY_LOCAL_MACHINE\System\Current ControlSet\Services\Rdr\Parameters]
нужно создать ключ EnablePlainTextPassword типа DWORD и установить его значение, равное 1. В ОС Windows 9x вам нужно создать тот же ключ, но в разделе
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\Parameters]
В ОС Windows 2000 нужно внести изменения в раздел реестра
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkStation\Parameters]
Параметры log file и max log size определяют имя файла протокола (журнала) и его максимальный размер. Опции сокетов задаются с помощью параметра socket option.
Прежде, чем задавать опции сокета, рекомендую прочитать справочное руководство по файлу smb.conf.
Если в вашем компьютере установлено несколько сетевых интерфейсов, вы можете сконфигурировать пакет Samba так, чтобы он использовал все интерфейсы. Как это сделал я, показано в листинге 9.1.
Теперь перейдем к следующей секции, которая определяет параметры совместно используемых ресурсов. Данная секция называется [homes]. Пример содержимого этой секции приведен в листинге 9.2.
Листинг 9.2. Секция [homes][homes]
comment = Home
browseable = yes
writable = yes
Параметр browseable=yes (см. листинг 9.2) разрешает отображение совместно используемых ресурсов в сети Microsoft. Параметр writable =yes разрешает запись в каталоги (вместо этого параметра может использоваться параметр read only=no).
Теперь создадим общий каталог (см. листинг 9.3). Делается это в секции [public].
Листинг 9.3. Секция [public][public]
comment = Public
Directory path = /home/samba
read only = no
Ваших знаний уже достаточно, чтобы самому произвести дальнейшую настройку. В качестве завершения этого раздела я приведу пару практических примеров (см. листинг 9.4). Обратите внимание, что в файле smb.conf комментарии могут обозначаться либо решеткой (#), либо точкой с запятой (;).
Листинг 9.4.; Каталог NETLOGON для входа в домен
[netlogon]
comment = Samba Netlogon Service
path = /var/netlogon
; He устанавливайте значение yes
case sensitive = no
guest ok = yes
locking = no
writable = yes
browseable = yes
; Профиль для совместно используемых ресурсов
[Profiles]
path = /usr/local/samba/proflies
browseable = no
printable = no
guest ok = yes
; Каталог, используемый пользователем admin
; Пользователь admin должен существовать на сервере Samba
[admin]
comment = admin's directory
path = /home/admin
valid users = admin root
read only = no
9.3. Доступ к SMB-ресурсам из Linux
Будем смотреть правде в глаза, ОС Windows разрабатывалась для домохозяек. Каждая домохозяйка, чтобы просмотреть ресурсы сети Microsoft, использует пиктограмму «Сетевое окружение» на рабочем столе Windows. A теперь представьте, что эта домохозяйка работает в ОС Linux и хочет просмотреть ресурсы сети. Скорее всего, у нее возникнут определенные трудности. Попробуем их сейчас решить.
Для просмотра ресурсов сети Microsoft используется программа smbclient. Допустим, вы хотите подключиться к общему каталогу share компьютера nt_ws1. При этом допустим, что ваше имя пользователя user и пароль 123456. В этом случае использование команды smbclient выглядит следующим образом:
$ smbclient //nt_ws1/share –U user%123456
Если пароль не нужен, то указывается только имя пользователя без знака процента.
После подключения к общему ресурсу, если точнее, к каталогу, вы можете использовать те же команды, что и при работе с клиентом ftp (см. табл. 9.1).
Команды программы smbclient Таблица 9.1
Команда Описание Dir Выводит список файлов в каталоге cd [каталог] Выполняет переход в заданный каталог на сервере (учтите, что именно на сервере, а не на клиентском компьютере). В том случае, если каталог не указан, то smbclient просто выдаст имя текущего каталога get [файл] [лок. имя] Получает указанный файл из общего ресурса и сохраняет его на локальном компьютере. Если указано локальное имя, то полученный с сервера файл будет сохранен на клиентском компьютере под этим именем put [файл] [удал, имя] Копирует файл на удаленный компьютер (сервер) и сохраняет его там под именем, указанном в поле удаленное имя. Соответственно, если это имя не указано, то файл при сохранении переименовываться не будет rm [каталог] rmdir [каталог] Удаляет указанный каталог на удаленном компьютере (сервере) md [каталог] mkdir [каталог] Создает указанный каталог на удаленном компьютере (сервере) mput [файлы] Копирует все указанные файлы на удаленный компьютер (сервер) del [файлы] Удаляет на сервере указанные файлы, если конечно пользователь обладает на это правами help Помощь exit или quit Завершение сеанса работы программы smbclientИспользовать программу smbclient не очень удобно. Гораздо удобнее использовать программу smbmount, которая умеет монтировать удаленный общий ресурс как обычную файловую систему. При этом впоследствии использовать общий ресурс становится гораздо приятнее и удобнее. Ниже приведен пример команды, которая монтирует общий ресурс customers компьютера nt, используя имя пользователя user. Точка монтирования — каталог /mnt/customers, идентификатор пользователя (UID) равен 500, а группы (GID) — 100:
Жалоба
Напишите нам, и мы в срочном порядке примем меры.