В этом разделе мы рассмотрим директивы, которые напрямую или косвенно влияют на безопасность:
□
guest account = имя
— указывается учетная запись, с правами которой пользователь сможет входить в систему. Если ваш сервер не содержит секретной информации и используется для открытого обмена файлами, то можно завести гостевую учетную запись, иначе такой вход не безопасен;
□
log file = файл
— название файла-журнала, например, можно написать /var/log/samba/%m.log. Обратите внимание, что в имени присутствует символ процента, вместо которого во время
работы будет подставляться имя пользователя, активность которого сохраняется. Так, например, для пользователя robert будет создан журнал /var/log/samba/robert.log;
□
max log size = n
— определяет максимальный размер журнала в килобайтах. Укажите значение 0, если ограничения не должно быть;
□
security = уровень
— определяет степень доступа, параметр может принимать одно из следующих значений:
•
user
— на уровне пользователя;
•
share
— аутентификация на основе имени и пароля;
•
server
— задаст имя сервера, на котором хранятся пароли (с помощью директивы
password server = ИмяСервера
), т.к. пароли держатся на другом smb-сервере;
•
security = domain
— включает сервер в домен Windows NT, пароль для доступа указывается в файле, определенном с помощью директивы
smb passwd file = ИмяФайла
;
□
encrypt passwords = yes
— позволяет шифровать пароли, передаваемые по сети. Данная опция требует пояснении, потому что могут возникнуть проблемы при авторизации с компьютеров с Windows-системой.
Суть в том, что Windows так шифрует пароли, что они могут быть восстановлены. Зашифрованный пароль передается по сети, и на сервере происходит его дешифровка. Linux же использует необратимую схему хэширования по алгоритму MD5. Для проверки правильности пароля он шифруется по тому же алгоритму, а затем сравнивается результат (хэш-сумма). Таким образом, шифрование Linux и Windows не совместимы.
Чтобы пользователи Windows смогли авторизоваться на Samba-сервере, необходимо передавать пароль в незашифрованном виде. Для этого значение
encrypt passwords
должно быть равно
no
. При этом в Windows-системе необходимо в реестре изменить параметр
EnablePlainTextPassword
, установив в нем значение 1. В Windows 9х этот параметр находится в реестре по адресу:
Если соответствующего параметра не существует, то его следует создать. Он должен иметь тип dword.
Если возникли проблемы с входом в систему, то переключите систему в режим работы с незашифрованными паролями. В этом случае Samba использует для авторизации файлы /etc/passwd и /etc/shadow. Полученный открытый пароль шифруется по алгоритму MD5 и сравнивается со значениями из этого файла.
Если вы используете шифрованный пароль, то при авторизации будет использоваться файл /etc/samba/smbpasswd (можно изменить с помощью директивы
smb passwd file
). Он необходим из-за отличий в шифровании Windows и Linux.
Не применяйте открытые пароли без особой надобности. Не забывайте о существовании программ-снифферов,
которые анализируют сетевой трафик и позволяют найти пароли, передаваемые по сети. Если они не зашифрованы, то злоумышленник сможет проникнуть в вашу систему;
□
smb passwd file = файл
— указывает на расположения файла с паролями. По умолчанию это та же директория, где расположены конфигурационные файлы Samba;
□
ssl CA certFile = файл
— указывает на файл сертификата, необходимый для работы протокола SSL, гарантирующего безопасность передачи данных;
□
unix password sync = yes
— разрешает пользователям Windows менять пароль Samba, одновременно обновляя системные пароли в Linux. Если нет такой необходимости, то установите значение параметра
no
. Для работы этой директивы нужно указать программы, которые будут изменять пароли (команда
passwd program
) и сообщения, появляющиеся перед пользователем (команда
— задает параметры протокола и размер входного и выходного буфера.
В данном случае:
•
TCP_NODELAY
— позволяет быстрее передавать данные (без задержек);
•
SO_RCVBUF
— размер принимающего буфера;
•
SO_SNDBUF
— размер передающего буфера;
□
interfaces = интерфейсы
— если у вас установлено две сетевые карты, которые направлены на разные сети, то с помощью этой директивы можно позволить работать с Samba пользователям из обеих сетей.
6.1.4. Как домен
Если проанализировать все параметры, которые мы будем рассматривать в этом разделе, то станет очевидно, что Samba способна заменить Windows- сервер, и рабочие станции на базе Windows не заметят неудобств:
□
local master = yes
— позволяет сделать ваш Samba-сервер основным браузером сети;
□
domain master = yes
— позволяет сделать Samba-сервер главным браузером домена. Не устанавливайте значение
yes
, если в вашей сети есть Windows NT контроллер домена;