23.5. Включение аутентификации на сервере Samba

Проблема
Вам не нравятся либеральные, незащищенные методы организации общего дос тупа к файлам, описанные в предыдущих разделах. Вы предпочитаете создать цен трализованный файловый сервер с общими каталогами и управлять доступом
пользователей к этим каталогам.
Решение
Прежде всего следует отредактировать smb.conf, включить безопасность уровня
пользователей и потребовать шифрования паролей (обе возможности включены
в 3.0 по умолчанию, но всегда лучше четко выразить свои намерения). После это го пользователи Samba создаются утилитой smbpasswd. Пользователи Samba так же должны иметь системные учетные записи Linux на сервере (их следует создать
заранее). Учетные записи Samba необходимы как пользователям Windows, так
и пользователям Linux.
В следующем примере приводится измененный вариант конфигурации из раз дела 23.2:
[global]
workgroup m workgroup
netbios name

• windbag
server string = Ian file server
security = user
encrypt passwords = yes
browseableт
hosts allow = 192.168.1.
[sharel]
path = /sharedstuff
comment - testfiles
read only = No
Перезапустите Samba после редактирования smb.conf.
Теперь создаются пользователи Samba, и им назначаются пароли:
# smbpasswd -a andrew
New SMB password:
Retype new SMB password:
Added user andrew.
ВНИМАНИЕ
Пользователи, создаваемые командой smbpasswd, должны иметь системные учетные записи на сер вере Samba. Если данные отсутствуют в /etc/passwd, вы получите следующее сообщение об ошибке:
Failed to initialize SAM_ACCOUNT for user <foo>.
Failed to modify password entry for user <foo>
Комментарий
Неудобная схема с двумя базами данных паролей объясняется различиями меж ду паролями Unix и Windows и спецификой управления файловыми разрешени ями на этих платформах. Команда sm paswwd прокладывает мост между этими силь но различающимися платформами. В следующем разделе будет показано, как
преобразовать/etc/passwd в/etc/samba/smbpasswd командой mksmbpasswd.
См. также
Smb.conf(5), smbpasswd(5), smbpasswd(8).