Как показано выше в файле smb.conf
, организация доступа к дискам
Linux для пользователей Windows является довольно простым делом.
Однако, с помощью Samba Вы можете контролировать доступ
расширенными возможностями. Ниже приводится несколько примеров:
Чтобы организовать доступ для всех пользователей, создайте копию
раздела [tmp]
, приведенного выше, добавив в smb.conf
что-то
подобное:
[public]
comment = Public Stuff
path = /home/public
public = yes
writable = yes
printable = no
Теперь у Вас будет возможность запустить Samba и просмотреть доступные ресурсы из Windows PC. Однако, с недавнего времени Microsoft ``усложнила жизнь'' тем, кто использует Samba. Windows 98, Windows NT (service pack 3 или выше) и поздние версии Windows 95 по умолчанию используют шифрованные пароли, а Samba по умолчанию использует нешифрованные пароли. Вы не сможете просматривать содержимое сервера, когда либо клиент либо сам сервер использует шифрованные пароли, потому что соединение не может быть создано без регистрации.
Если существует несоответствие типов паролей между клиентом и
сервером и Вы пытаетесь подключится к ресурсу, то можете увидеть
окно диалога в котором будет сказано примерно следующее:
You are not authorized to access that account from this machine
.
Вам нужно настроить Samba-сервер для использования шифрованных
паролей, либо настроить машины с Windows таким образом, чтобы они
использовали нешифрованные пароли.
Для того, чтобы заставить Windows работать с нешифрованными
паролями SMB сделайте следующее:
Windows 95/98
=============
Используя редактор registry (regedit), создайте ключ registry
HKEY_LOCAL_MACHINE - System - CurrentControlSet - Services - VxD - VNETSUP
Добавьте значение типа DWORD:
Имя значения: EnablePlainTextPassword
Данные: 0x01.
Windows NT
==========
Используя редактор registry (regedit), создайте ключ registry
HKEY_LOCAL_MACHINE - System - CurrentControlSet - Services - Rdr - Parameters
Добавьте значение типа DWORD:
Имя значения: EnablePlainTextPassword
Значение: 0x01
Windows 2000
============
Using the registry editor (regedit), create the registry setting
HKEY_LOCAL_MACHINE - SYSTEM - CurrentControlSet - Services - LanmanWorkStation - Parameters
Add a new DWORD value:
Value Name: EnablePlainTextPassword
Data: 0x01
После того, как Вы сделали эти изменения, перезагрузите машину с Windows и попытайтесь подключить сетевой диск к серверу Samba.
Для того, чтобы настроить Samba для использования шифрованных
паролей в раздел [global]
файла /etc/smb.conf
, добавьте следующие
строки:
encrypt passwords = yes
smb passwd file = /etc/smbpasswd
\begin{verbatim}
Настоятельно рекомендуется прочитать файлы \verb|ENCRYPTION.txt|,
\verb|Win95.txt| и \verb|WinNT.txt| в документации по Samba до того как Вы
будете делать это.
Если и клиенты и сервер используют шифрованные пароли, то Вы не
сможете просмотреть списки доступных ресурсов до тех пор, пока
начальное соединение не будет сделано с указанием правильных
параметров входа. Для того чтобы сделать первоначальное
соединение, введите вручную имя ресурса в диалоговом окне Windows
File Manager или Explorer, имя должно быть в форме
\verb!\\<hostname>\<sharename>!. Подключитесь к серверу с достоверными
для данного сервера именем и паролем.
Если Вы видите, что сервис имен NetBIOS неправильно настроен
(например, Вы получаете сообщение об ошибке \verb|host not found|
(машина не найдена) при попытке подключения), то попытайтесь
использовать IP-адрес сервера: \verb!\\<host ip address>\<sharename>!.
Для того, чтобы имена отображались правильно, может понадобиться
указать некоторые настройки в соответствующем разделе для ресурса.
Настройки достоверно работают для клиентов под управлением
95/98/NT, но может быть необходимо изменить их, если вы
используете в качестве клиентов машины с Windows 3.X.
\begin{verbatim}
; Mangle case = yes seems to give the correct filenames
; for Win95/98/NT.
mangle case = yes
; If samba is case sensitive when looking for files
case sensitive = no
; Default case of files that are created
default case = lower
; Preserve case for all filenames
preserve case = yes
; Preserve case for dos (8.3) filenames
short preserve case = no
Значение после знака /
- это ссылка на сетевую маску. Для сети
класса С этим значением будет 24
. Для получения дополнительной
информации о том, как вычислять значения для подсетей, Вы можете
посмотреть информацию по адресу http://www.ralphb.net/IPSubnet/
.
Конечно, настройка Samba более объемна, чем приведено здесь. Если Вы хотите сделать что-то более сложное, то рекомендуется посетить сервер Samba, упомянутый выше.
Чтобы сделать директорий доступным для чтения всеми, но разрешить
писать в нее только пользователям из группы staff
, измените запись
как показано в следующем примере:
[public]
comment = Public Stuff
path = /home/public
public = yes
writable = yes
printable = no
write list = @staff
Для изучения других приемов изменения прав доступа к дискам, смотрите документацию на Samba и справочные страницы.