Разное

User add samba: How to add or delete a samba user under Linux – The Geek Diary

Содержание

Все о Samba » pdbedit (Samba user account management tool)

Эта страница является переводом man pdbedit(8) из пакета Samba.

Имя

pdbedit — утилита для администрирования базы данных SAM (База данных Пользователей Samba)

СИНТАКСИС

pdbedit [-L] [-v] [-w] [-u username] [-f fullname] [-h homedir] [-D drive] \

[-S script] [-p profile] [-a] [-t, --password-from-stdin] \

[-m] [-r] [-x] [-i passdb-backend] [-e passdb-backend] \

[-b passdb-backend] [-g] [-d debuglevel] [-s configfile] \

[-P account-policy] [-C value] [-c account-control] [-y]

ОПИСАНИЕ

Эта утилита является частью пакета samba(7).

Программа pdbedit используется для управления пользовтельскими учетными записями, сохраненными в базе данных sam, и может быть запущена только с правами пользователя root.

Утилита pdbedit использует модульный интерфейс passdb и независит от выбранной базы данных пользователей (базы smbpasswd, ldap, nis+ и tdb и другие могут использоваться с этой утилитой).

Существует пять способов использования утилиты pdbedit:

  1. добавление учетной записи пользователя;
  2. удаление учетной записи пользователя;
  3. модификация учетной записи пользователя;
  4. просмотр учетных записей пользователей;
  5. импорт учетных записей пользователей.

Параметры

-L

Этот параметр выводит список всех учетных записей пользователей существующих в базе данных пользователей. Выводится список пар user/uid, разделенных символом ':'. Пример:

pdbedit -L

sorce:500:Simo Sorce

samba:45:Test User

-v

Параметр включает расширенный формат вывода. Вынуждает pdbedit выводить список пользователей в расширенном формате. Пример:

pdbedit -L -v

---------------

username: sorce

user ID/Group: 500/500

user RID/GRID: 2000/2001

Full Name: Simo Sorce

Home Directory: \\BERSERKER\sorce

HomeDir Drive: H:

Logon Script: \\BERSERKER\netlogon\sorce.bat

Profile Path: \\BERSERKER\profile

---------------

username: samba

user ID/Group: 45/45

user RID/GRID: 1090/1091

Full Name: Test User

Home Directory: \\BERSERKER\samba

HomeDir Drive:

Logon Script:

Profile Path: \\BERSERKER\profile

-w

Параметр включает формат вывода совместимый с форматом smbpasswd. Вынуждает pdbedit выводить список пользователей из базы в формате совместимом с форматом файла smbpasswd (более подробно смотрите smbpasswd(5)). Пример:

pdbedit -L -w

sorce:500:508818B733CE64BEAAD3B435B51404EE:

D2A2418EFC466A8A0F6B1DBB5C3DB80C:

[UX ]:LCT-00000000:

samba:45:0F2B255F7B67A7A9AAD3B435B51404EE:

BC281CE3F53B6A5146629CD4751D3490:

[UX ]:LCT-3BFA1E8D:

-u username

Параметр передает имя пользователя в запрос (просмотр, добавление, удаление). Опция обязательна для параметров добавление, удаление, изменение и опционально для просмотра.

-f fullname

Опция используется при добавлении или модификации пользовательской учетной записи. Она определяет полное имя пользователя. Пример:

-f "Simo Sorce"

-h homedir

Опция используется при добавлении или модификации пользовательской учетной записи. Определяет путь к домашней директории пользователя. Пример:

-h "\\\\BERSERKER\\sorce"

-D drive

Опция используется при добавлении или модификации пользовательской учетной записи. Определяет букву логического диска для домашней директории. Пример:

-D "H:"

-S script

Опция используется при добавлении или модификации пользовательской учетной записи. Оппеделяет путь к пользовательскому logon-скрипту. Пример:

-S "\\\\BERSERKER\\netlogon\\sorce.bat"

-p profile

Опция используется при добавлении или модификации пользовательской учетной записи. Определяет путь к профилю пользователя. Пример:

-p "\\\\BERSERKER\\netlogon"

-G SID|rid

Опция используется при добавлении или модификации пользовательской учетной записи. Определяет для пользователя новый групповой SID (Security Identifier) или rid. Пример:

-G S-1-5-21-2447931902-1787058256-3961074038-1201

-U SID|rid

Опция используется при добавлении или модификации пользовательской учетной записи. Определяет для пользователя новый SID (Security Identifier) или rid. Пример:

-U S-1-5-21-2447931902-1787058256-3961074038-5004

-c account-control

Опция используется при добавлении или модификации пользовательской учетной записи. Она определяет настройки для пользователя. Ниже дан список флагов атрибутов пользователя.

N: Пароль не требуется

D: Учетная запись отключена

H: Домашняя директория

T: Временная копия другой учетной записи

U: Постоянная пользовательская учетная запись

M: Учетная запись входа MNS

W: Доверенная учетная запись рабочей станции

S: Серверная доверенная учетная запись

L: Автоматическая блокировка

X: Пароль не имеет срока давности

I: Доменная доверенная учетная запись

Пример:

-c "[X ]"

-a

Используется для добавления пользователя в базу данных. Эта опция требует ввода имени пользователя в параметре -u. Также придобавлении пользователя будет запрошен пароль для создаваемого пользователя. Пример:

pdbedit -a -u sorce

new password:

retype new password

  Замечание

pdbedit не вызывает скрипт синхронизации unix пароля, даже если параметр unix password sync установлен. Он обновит только базу пользователей Samba.

Если вы хотите добавить пользователя и незамедлительно синхронизировать пароль, используйте опцию -a команды smbpasswd.

-t | --password-from-stdin

Этот параметр вынуждает pdbedit читать пароль со стандартного ввода, предпочтительно с /dev/tty ( дружелюбно для программы passwd(1)). Пароль будет передан дважды и прерывается переходом на новую строку.

-r

Используется для изменения существующего пользователя в базе. Параметр включает имя пользователя определенное в ключе -u. Другие опции могут быть определены для для изменения свойств определенного пользователя. Этот флаг сохранен для обратной совместимости, его использование больше не обязательно.

-m

Этот параметр может использоваться только совместно с параметром -a. Он вынудит pdbedit добавить доверенную учетную запись компьютера вместо учетной записи пользователя (-u username будет представлять имя машины). Пример:

pdbedit -a -m -u w2k-wks

-x

Параметр вынудит pdbedit удалить учетную запись из базы. Он требует указания имени пользователя в ключе -u. Пример:

pdbedit -x -u bob

-i passdb-backend

Использовать альтернативное хранилище паролей для выбора пользователей определенных в smb.conf. Может использоваться для импорта данных в локальную пользовательскую базу.

Эта опция упощает процесс миграции из одного хранилища паролей в другое. Пример:

pdbedit -i smbpasswd:/etc/smbpasswd.old

-e passdb-backend

Использается для экспорта пользователей в альтернативное хранилище пользовательских данных.

Упрощает процесс миграции из одного хранилища данных в другое через резервную копию. Пример:

pdbedit -e smbpasswd:/root/samba-users.backup

-g

Если использовать ключ -g, тогда ключи -i in-backend -e out-backend будут применены к отображению группы вместо пользовательской базы.

Упрощает процесс миграции из одного хранилища данных в другое через резервную копию.

-b passdb-backend

Использовать отличный от умолчального passdb backend. Пример:

pdbedit -b xml:/root/pdb-backup.xml -l

-P account-policy

Выводит политики учетной записи.

Существующие политики:

  • minimum password age - минимальное время жизни пароля;
  • reset count minutes - сброс счетчика минут;
  • disconnect time - время до разъединения;
  • user must logon to change password - требовать смену пароля при следующем входе в систему;
  • password history - история пароля;
  • lockout duration - время блокировки при неудачном входе;
  • min password length - мин длина пароля;
  • maximum password age - максимальное время жизни пароля;
  • bad lockout attempt - блокировка при неудачной попытке. Пример:

pdbedit -P "bad lockout attempt"

account policy value for bad lockout attempt is 0

-C account-policy-value

Устанавливает для политики пользователя специфичное значение. Этот параметр используется совместно с ключем -P. Пример:

pdbedit -P "bad lockout attempt" -C 3

account policy value for bad lockout attempt was 0

account policy value for bad lockout attempt is now 3

-y

Если определен ключ -y, тогда ключи -i in-backend -e out-backend будут применены к политикам учетной записи альтернативной пользовательской базы.

Этот параметр позволяет политикам учетной записи мигрировать из умолчального tdb хранилища в другие хранилища, например на сервер LDAP. Пример:

pdbedit -y -i tdbsam: -e ldapsam:ldap://my.ldap.host

-h | --help

Выводит строку со всеми возможными ключами.

-d | --debuglevel=level

level целое число от 0 до 10. Значение по умолчанию неопределено, то есть 0.

Чем выше значение параметра, тем более подробный log-файл мы получим. При уровне 0, в log запишутся только критические ошибки и серьезные предупреждения. Уровень 1 это разумный уровень для ежедневной работы – генерится немного информации об осуществляемых операциях.

Уровни выше 1 будут создавать значительный объем информации в log файл, и должны использоваться при возникновении проблем. Уровни выше 3 используются разработчиками и создают огромный объем информации в лог файл, большинство из которой будет вам не понятно.

Заметьте что этого параметр переопределяет значение параметра log level в файле smb.conf.

-V

Выводит версию программы.

-s <configuration file>

Задает файл конфигурации для сервера. Этот файл содержит специфичную для сервера конфигурационную информацию например какой использовать printcap-файл, а так же описание всех сервисов предоставляемых сервером. Для получения более подробной информации смотрите файл smb.conf. Имя файла конфигурации по умолчанию определяется во время компиляции.

-l | --log-basename=logdirectory

Путь к директории для файлов log/debug. Могут использоваться расширения «.имя_программы» (например: log.smbclient, log.smbd, и т.д…). Log-файл не может быть удален клиентом.

ЗАМЕЧАНИЕ

Это команда может быть запущена только с правами root.

ВЕРСИЯ

Этот man написан для версии 3 пакета Samba.

СМОТРИТЕ ТАКЖЕ

smbpasswd(5), samba(7)

АВТОР

Изначально Samba и сопутствующие утилиты были разработаны Эндрю Тридгеллом (Andrew Tridgell). Сейчас Samba разрабатывается Samba Team в качестве Open Source проекта – напоминает то, как разрабатывается ядро Linux.

Man pdbedit написан Simo Sorce и Jelmer Vernooij.

Трансляция на русский язык Айзятуллен Рамиль.

Mail-to: argo-uln собака yandex.ru

Обсудить данный перевод можно в соответствующей теме форума

Samba-сервер в локальной сети с Linux и Windows

В инструкции описан процесс настройки общего файлового сервера для всех пользователей локальной или виртуальной сети с операционными системами Linux и Windows.

Что это такое?

Файловый сервер работает по протоколу SMB/CIFS и позволяет предоставить доступ к общим ресурсам в локальной сети, например, текстовым файлам или сетевым принтерам. Для его развертывания на Windows используются штатные средства ОС, на Linux используется файловый сервер Samba.

В инструкции рассмотрена настройка файлового сервера на серверах с операционными системами Linux и Windows. На сервере будет находиться 2 каталога — публичный и приватный. К файловому серверу подключение будет происходить как с операционной системы Windows, так и с Linux, т.к. в виртуальной или физической локальной сети могут находиться серверы с разными ОС.

Создание и настройка частной сети

Для начала в панели управления должны быть созданы все необходимые для сети серверы.

После создания необходимо объединить все машины в единую локальную сеть через панель управления в разделе Сети. В результате серверы получат локальные IP-адреса.

После создания частной сети необходимо настроить сетевые адаптеры на каждом сервере. Об этом можно прочитать в наших инструкциях:

  1. Настройка сетевого адаптера в Ubuntu и Debian
  2. Настройка сетевого адаптера в CentOS
  3. Настройка сетевого адаптера в Windows

Настройка файлового сервера

Прежде всего, необходимо определиться, на сервере с какой операционной системой будет находиться общий каталог.

Настройка файлового сервера на Linux (Debian/Ubuntu)

Для развертывания файлового сервера на системах Linux используется инструмент SAMBA. Ниже перечислены действия по его установке и настройке.

Прежде всего следует обновить локальную базу пакетов:

apt-get update

Далее установите пакеты из главного репозитория:

apt-get install -y samba samba-client

Создайте резервную копию файла конфигурации Samba:

cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

Создайте или выберете директорию, к которой все пользователи будут иметь общий доступ:

mkdir -p /samba/public

Перейдите к этому каталогу и измените режим доступа и владельца:

cd /samba

chmod -R 0755 public

Создайте или выберете каталог, к которому иметь доступ будут ограниченное число пользователей:

mkdir /samba/private

Создайте группу пользователей, которые будут иметь доступ к приватным данным:

groupadd smbgrp

Создайте нужных пользователей с помощью команды useradd:

useradd user1

Добавьте созданных пользователей в группу:

usermod -aG smbgrp user1

Измените группу, которой принадлежит приватная директория:

chgrp smbgrp /samba/private

Задайте пароль, с помощью которого пользователь будет подключаться к каталогу:

smbpasswd -a user1

Откройте файл конфигурации на редактирование с помощью текстового редактора, например nano:

nano /etc/samba/smb. conf

Замените содержимое файла на следующие строки:

[global]

workgroup = WORKGROUP

security = user

map to guest = bad user

wins support = no

dns proxy = no

[public]

path = /samba/public

guest ok = yes

force user = nobody

browsable = yes

writable = yes

[private]

path = /samba/private

valid users = @smbgrp

guest ok = no

browsable = yes

writable = yes

Сохраните внесенные изменения, нажав CTRL+X, затем Enter и Y.

Значения параметров выше:

  • global — раздел с общими настройками для Samba сервера
  • workgroup — рабочая группа Windows, WORKGROUP — значение по умолчанию для всех Windows машин, если вы не меняли самостоятельно
  • security — режим безопасности, значение user означает аутентификацию по логину и паролю
  • map to guest — задает способ обработки запросов, bad user — запросы с неправильным паролем будут отклонены, если такое имя пользователя существует
  • wins support — включить или выключить поддержку WINS
  • dns proxy — возможность запросов к DNS
  • public — название общего каталога, которое будут видеть пользователи сети, может быть произвольным и не совпадать с именем директории
  • path — полный путь до общего каталога
  • browsable — отображение каталога в сетевом окружении
  • writable — использование каталога на запись, инверсия read only
  • guest ok — авторизация без пароля
  • force user — пользователь по умолчанию
  • valid users — список пользователей, у которых есть доступ к каталогу, через @ указывается unix-группа пользователей

Проверить настройки в smb. conf можно с помощью команды:

testparm -s

Чтобы изменения вступили в силу, перезапустите сервис:

service smbd restart

Далее нужно настроить firewall, открыв порты, которые использует SAMBA. Настоятельно рекомендуем разрешить только подключения из локального диапазона IP-адресов или виртуальной частной сети. Адресное пространство вашей частной сети вы можете увидеть в панели управления 1cloud.

Замените значение параметра –s в правилах ниже для соответствия адресному пространству вашей частной сети. Как правило префикс сети /24, если вы явно не подразумеваете иного:

iptables -A INPUT -p tcp -m tcp --dport 445 –s 10.0.0.0/24 -j ACCEPT

iptables -A INPUT -p tcp -m tcp --dport 139 –s 10.0.0.0/24 -j ACCEPT

iptables -A INPUT -p udp -m udp --dport 137 –s 10.0.0.0/24 -j ACCEPT

iptables -A INPUT -p udp -m udp --dport 138 –s 10.0.0.0/24 -j ACCEPT

Теперь необходимо сделать так, чтобы указанные выше правила фаервола iptables были сохранены после перезагрузки машины. Для это установим пакет iptables-persistent:

apt-get install iptables-persistent

После установки откроется окно с предложением последовать запомнить текущие правила iptables для IPv4 и IPv6. Подтвердите это действие.

Проверить актуальные правила iptables можно командой:

iptables -L

В выводе команды вы должны увидеть ранее добавленные разрешающие политики (Accept).

Настройка общего публичного каталога на Windows

Для общего доступа к файлам по сети в Windows используются стандартные средства ОС.

Чтобы пользователи локальной сети могли без пароля подключаться к общему ресурсу, необходимо в панели управления снять ограничения защиты. Откройте панель управления и перейдите в раздел Сеть (Network and Internet) -> Центр управления сетями и общим доступом (Network and Sharing Center) -> Расширенные настройки общего доступа (Advanced sharing settings). В разделе Все сети (All Networks) выберете опцию Отключить доступ с парольной защитой (Turn off password protected sharing) и сохраните изменения.

Далее, чтобы настроить общий доступ к каталогу на Windows необходимо создать или выбрать нужный и открыть его свойства. В свойствах перейдите во вкладку Доступ (Sharing) и нажмите Расширенная настройка (Advanced Sharing).

В открывшемся окне отметьте галочкой Открыть общий доступ к этой папке (Share this folder), для того чтобы она стала общедоступной. В поле Имя общего ресурса (Share name) введите имя, которое будет видно всем пользователям. Далее нажмите Разрешения (Permissions) для настройки прав доступа.

Выберете нужные права доступа для всех пользователей (Everyone). Нажмите Применить (Apply), чтобы изменения вступили в силу.

Теперь в свойствах каталога нажмите Общий доступ (Share).

В поле поиска введите Все пользователи (Everyone) и нажмите Добавить (Add). Для полного доступа выберете права Read/Write и нажмите Поделиться (Share).

Теперь ваш каталог Windows доступен всем пользователям локальной сети без пароля.

Настройка общего приватного каталога на Windows

Для настройки общего каталога, который будет доступен только определенным пользователям, необходимо, чтобы данные пользователи существовали на сервере с общей папкой и на Windows машине с которой будет происходить подключение (наличие пользователя на Linux сервере не требуется), причем логин и пароль пользователей должны полностью совпадать. О том как создать нового пользователя читайте в нашей инструкции.

Чтобы пользователи локальной сети могли без пароля подключаться к общему ресурсу, необходимо в панели управления снять ограничения защиты. Откройте панель управления и перейдите в раздел Сеть (Network and Internet) -> Центр управления сетями и общим доступом (Network and Sharing Center) -> Расширенные настройки общего доступа (Advanced sharing settings). В разделе Все сети (All Networks) выберете опцию Отключить доступ с парольной защитой (Turn off password protected sharing) и сохраните изменения.

Далее, чтобы настроить общий доступ к каталогу на Windows необходимо создать или выбрать нужный и открыть его свойства. В свойствах перейдите во вкладку Доступ (Sharing) и нажмите Расширенная настройка (Advanced Sharing).

Так как каталог будет доступен только определенным пользователям, необходимо удалить группу Все пользователи (Everyone) с помощью кнопки Удалить (Remove).

Далее с помощью кнопки Добавить (Add) добавьте пользователей для управления каталогом.

Введите имя и нажмите Проверить имена (Check Names), выберете полное имя пользователя и нажмите OK.

Установите нужные права и нажмите Применить (Apply).

Теперь в свойствах каталога нажмите Поделиться (Share).

В поле поиска введите имя пользователя и нажмите Добавить (Add). Для полного доступа выберете права Чтение/Запись (Read/Write) и нажмите Поделиться (Share).

В итоге каталог стает общедоступным для определенных пользователей.

Подключение к общему каталогу с помощью Linux

Чтобы подключиться к общему каталогу, необходимо установить клиент для подключения:

sudo apt-get install smbclient

Для подключения используйте следующий формат команды:

smbclient -U <Пользователь> \\\\<IP-адрес>\\<Общий каталог>

Также можно выполнить монтирование общего каталога, для этого установите дополнительный пакет утилит:

sudo apt-get install cifs-utils

Для монтирования используйте следующий формат команды:

mount -t cifs -o username=<Пользователь>,password= //<IP-адрес>/<Общий каталог> <Точка монтирования>

Где <ip-адрес> — адрес машины, на которой расположена общая директория, а <Общий каталог> — путь до общей директории.

Например:

mount -t cifs -o username=Everyone,password= //10.0.1.2/Win /root/shares/public

Если общий каталог находится на Windows Server?

Если общий каталог находится на сервере с операционной системой Windows, то для публичного каталога используйте имя пользователя Everyone, а в качестве пароля просто нажмите Enter. Например:

smbclient -U Everyone \\\\10.0.1.2\\Win

Enter Everyone's password:
OS=[Windows Server 2016 Standard 14393] Server=[Windows Server 2016 Standard 6.3]

smb: \>

Для приватного каталога используйте имя пользователя и пароль, которому разрешен доступ.

Если общий каталог находится на Linux?

Если общий каталог находится на сервере с операционной системой Linux, то для публичного каталога используйте имя пользователя nobody, а в качестве пароля просто нажмите Enter. Например:

smbclient -U nobody \\\\10.0.1.2\\public

Enter nobody's password:
OS=[Windows Server 2016 Standard 14393] Server=[Windows Server 2016 Standard 6. 3]

smb: \>

Для приватного каталога используйте имя пользователя и пароль, которому разрешен доступ.

Подключение к общему каталогу с помощью Windows

Для подключения используйте Проводник Windows, в адресную строку введите строку в следующем формате:

\\<Локальный IP-адрес>\<Название общего каталога>

Если общий каталог находится на Windows Server?

Если вы подключаетесь к приватному каталогу, то он откроется автоматически, а если подключаетесь к публичному, то перед вами вами появится окно для ввода данных для входа. Введите логин Everyone и пустой пароль, нажмите OK. В результате вы будете подключены к общему каталогу.

Если общий каталог находится на Linux?

Для подключения к публичной папке не требуется вводить логин или пароль, достаточно в адресную строку ввести нужный ip-адрес без ввода дополнительной информации. Для подключения к приватному каталогу введите логин и пароль пользователя в появившееся окно.

 

P. S. Другие инструкции:




Спасибо за Вашу оценку!
К сожалению, проголосовать не получилось. Попробуйте позже

Как установить и настроить Samba в CentOS 7


Samba — это бесплатная и открытая реализация протокола сетевого обмена файлами SMB / CIFS, который позволяет конечным пользователям получать доступ к файлам, принтерам и другим общим ресурсам.


Мы создадим следующие общие ресурсы и пользователей Samba.


Пользователи:

  • sadmin — Администратор с правами чтения и записи для всех общих ресурсов.
  • josh — обычный пользователь со своей собственной файловой папкой.


Shares:

  • users — эта папка будет доступна всем пользователям с правами на чтение / запись.
  • josh — этот ресурс будет доступен с правами на чтение / запись только пользователям josh и sadmin.


Общий доступ к файлам будет доступен со всех устройств в вашей сети. Далее в этом руководстве мы также предоставим подробные инструкции о том, как подключиться к серверу Samba из клиентов Linux, Windows и macOS.


Прежде чем начать, убедитесь, что вы вошли в систему CentOS 7 как пользователь с привилегиями sudo .

Установка Samba на CentOS 


Samba доступна из стандартных репозиториев CentOS. Чтобы установить его в вашей системе CentOS, выполните следующую команду:

sudo yum install samba samba-client


После завершения установки запустите службы Samba и включите их автоматический запуск при загрузке системы:

sudo systemctl start smb.servicesudo systemctl start nmb.service
sudo systemctl enable smb.servicesudo systemctl enable nmb. service


smbd - служба обеспечивает совместный доступ к файлам и полиграфические услуги и прослушивает порты TCP 139 и 445.nmbd Служба предоставляет NetBIOS поверх IP служб имен для клиентов и прослушивает порт UDP 137.

Настройка брандмауэра 


Теперь, когда Samba установлена ​​и работает на вашем компьютере с CentOS, вам нужно настроить брандмауэр и открыть необходимые порты. Для этого выполните следующие команды:

firewall-cmd --permanent --zone=public --add-service=sambafirewall-cmd --zone=public --add-service=samba

Создание пользователей Samba и структуры каталогов 


Для удобства обслуживания и гибкости вместо использования стандартных домашних каталогов ( /home/user) все каталоги и данные Samba будут расположены в /sambaкаталоге.


Начните с создания /samba каталога:

sudo mkdir /samba


Создайте новую группу с именем sambashare. Позже мы добавим всех пользователей Samba в эту группу.

sudo groupadd sambashare 


Установите владельца группы /samba каталогов на :sambashare

sudo chgrp sambashare /samba


Samba использует пользователей Linux и систему разрешений групп, но имеет собственный механизм аутентификации, отличный от стандартной аутентификации Linux. Мы создадим пользователей, используя стандартный useradd инструмент Linux , а затем установим пароль пользователя с помощью smbpasswd утилиты.


Как мы уже упоминали во введении, мы создадим обычного пользователя который будет иметь доступ к своему личному общему файлу и одну административную учетную запись с чтения и записи для всех общих ресурсов на сервере Samba.

Создание пользователей Samba


Чтобы создать нового пользователя с именем josh, используйте следующую команду:

sudo useradd -M -d /samba/josh -s /usr/sbin/nologin -G sambashare josh


В useradd опции имеют следующие значения:

  • -M — не создавать домашний каталог пользователя. Мы вручную создадим этот каталог.
  • -d /samba/josh — установить домашний каталог пользователя в /samba/josh.
  • -s /usr/sbin/nologin - отключить доступ к оболочке для этого пользователя.
  • -G sambashare — добавить пользователя в sambashare группу.


Создайте домашний каталог пользователя и установите владельца каталога для пользователя josh и группы sambashare:

sudo mkdir /samba/joshsudo chown josh:sambashare /samba/josh


Следующая команда добавит бит setgid в /samba/josh каталог, чтобы вновь созданные файлы в этом каталоге наследовали группу родительского каталога. Таким образом, независимо от того, какой пользователь создает новый файл, он будет иметь владельца группы sambashare. Например, если вы не установите права доступа к каталогу, 2770 а sadmin пользователь создаст новый файл, josh он не сможет читать и записывать этот файл.

sudo chmod 2770 /samba/josh


Добавьте josh учетную запись пользователя в базу данных Samba, установив пароль пользователя:

sudo smbpasswd -a josh


Вам будет предложено ввести и подтвердить пароль пользователя.

New SMB password:
Retype new SMB password:
Added user josh.


После того, как пароль установлен, включите учетную запись Samba, введя:

sudo smbpasswd -e josh
Enabled user josh.


Для создания другого пользователя повторите тот же процесс, что и при создании пользователя josh.


Далее давайте создадим пользователя и группу sadmin. Все члены этой группы будут иметь административные разрешения. Позже, если вы хотите предоставить права администратора другому пользователю, просто добавьте этого пользователя в sadmin группу .


Создайте административного пользователя, набрав:

sudo useradd -M -d /samba/users -s /usr/sbin/nologin -G sambashare sadmin


Команда выше будет также создать группу sadmin и добавить пользователя как sadmin и sambashare группы.


Установите пароль и включите пользователя:

sudo smbpasswd -a sadminsudo smbpasswd -e sadmin


Далее создайте Users каталог общего доступа:

sudo mkdir /samba/users


Установите владельца каталога для пользователя sadmin и группы sambashare:

sudo chown sadmin:sambashare /samba/users


Этот каталог будет доступен всем аутентифицированным пользователям. Следующая команда настраивает доступ на запись / чтение для членов sambashare группы в /samba/users каталоге:

sudo chmod 2770 /samba/users

Конфигурация акций Samba 


Откройте файл конфигурации Samba и добавьте разделы:

sudo nano /etc/samba/smb.conf


/etc/samba/smb.conf

[users]
    path = /samba/users
    browseable = yes
    read only = no
    force create mode = 0660
    force directory mode = 2770
    valid users = @sambashare @sadmin

[josh]
    path = /samba/josh
    browseable = no
    read only = no
    force create mode = 0660
    force directory mode = 2770
    valid users = josh @sadmin


Опции имеют следующие значения:

  • [users] и [josh]— имена общих ресурсов, которые вы будете использовать при входе в систему.
  • path — Путь к доле.
  • browseable — должна ли акция быть указана в списке доступных акций. Установив для noдругих пользователей, не сможет увидеть общий ресурс.
  • read only — могут ли пользователи, указанные в valid usersсписке, писать в этот общий ресурс.
  • force create mode — Устанавливает разрешения для вновь созданных файлов в этой общей папке.
  • force directory mode — Устанавливает разрешения для вновь созданных каталогов в этой общей папке.
  • valid users — Список пользователей и групп, которым разрешен доступ к общему ресурсу. Группы имеют префикс с @символом.


Для получения дополнительной информации о доступных параметрах см. Файл конфигурации Samba. Страницу документации .


После этого перезапустите сервисы Samba:

sudo systemctl restart smb.servicesudo systemctl restart nmb.service


В следующих разделах мы покажем вам, как подключиться к общему ресурсу Samba из клиентов Linux, macOS и Windows.

Подключение к Samba Share из Linux 


Пользователи Linux могут получить доступ к общему ресурсу samba из командной строки с помощью файлового менеджера или смонтировать общий ресурс Samba.

Использование клиента smbclient 


smbclient это инструмент, который позволяет вам получить доступ к Samba из командной строки. smbclient Пакет не предустановлен на большинстве дистрибутивов Linux , так что вам нужно будет установить его с помощью менеджера пакетов распределения.


Для установки smbclient на Ubuntu и Debian запустите:

sudo apt install smbclient


Для установки smbclient на CentOS и Fedora выполните:

sudo yum install samba-client


Синтаксис для доступа к общему ресурсу Samba выглядит следующим образом:

mbclient //samba_hostname_or_server_ip/share_name -U username


Например, чтобы подключиться к общему ресурсу с именем joshна сервере Samba с IP-адресом 192.168.121.118 от имени пользователя, которого josh вы запустите:

smbclient //192.168.121.118/josh -U josh


Вам будет предложено ввести пароль пользователя.

Enter WORKGROUP\josh's password:


После того, как вы введете пароль, вы войдете в интерфейс командной строки Samba.

Try "help" to get a list of possible commands.
smb: \>

Монтирование общего ресурса Samba


Чтобы смонтировать общий ресурс Samba в Linux, сначала необходимо установить cifs-utils пакет.


На Ubuntu и Debian запустите:

sudo apt install cifs-utils


На CentOS и Fedora работают:

sudo yum install cifs-utils


Далее создайте точку монтирования:

sudo mkdir /mnt/smbmount


Смонтируйте общий ресурс с помощью следующей команды:

sudo mount -t cifs -o username=username //samba_hostname_or_server_ip/sharename /mnt/smbmount


Например, чтобы смонтировать общий ресурс с именем josh на сервере Samba с IP-адресом 192.168.121.118 от имени пользователя josh до /mnt/ монтирования, которую вы запустите:

sudo mount -t cifs -o username=josh //192.168.121.118/josh /mnt/smbmount


Вам будет предложено ввести пароль пользователя.

Password for josh@//192.168.121.118/josh:  ********

Использование GUI 


Файлы, файловый менеджер по умолчанию в Gnome имеет встроенную опцию для доступа к общим ресурсам Samba.

  1. Откройте «Файлы» и нажмите «Другие места» на боковой панели.
  2. В поле «Подключение к серверу» введите адрес общей папки Samba в следующем формате smb://samba_hostname_or_server_ip/sharename.
  3. Нажмите «Подключиться» и появится следующий экран:

  4. Выберите «Зарегистрированный пользователь», введите имя пользователя и пароль Samba и нажмите «Подключиться».
  5. Файлы на сервере Samba будут показаны.

Подключение к Samba Share из macOS 


В macOS вы можете получить доступ к общим ресурсам Samba либо из командной строки, либо с помощью стандартного менеджера файлов MacOS Finder. Следующие шаги показывают, как получить доступ к общему ресурсу с помощью Finder.

  1. Откройте «Finder», выберите «Go» и нажмите «Connect To».
  2. В поле «Подключиться к» введите адрес общего ресурса Samba в следующем формате smb://samba_hostname_or_server_ip/sharename.

      

  3. Нажмите «Подключиться» и появится следующий экран:

  4. Выберите «Зарегистрированный пользователь», введите имя пользователя и пароль Samba и нажмите «Подключиться».
  5. Файлы на сервере Samba будут показаны.

Подключение к общему ресурсу Samba из Windows 


Пользователи Windows также могут подключаться к общему ресурсу Samba как из командной строки, так и из графического интерфейса. В приведенных ниже действиях показано, как получить доступ к общему ресурсу с помощью проводника Windows.

  1. Откройте проводник и в левой панели щелкните правой кнопкой мыши на «Этот компьютер».
  2. Выберите «Выбрать пользовательское сетевое расположение» и нажмите «Далее».
  3. В поле «Интернет или сетевой адрес» введите адрес общего ресурса Samba в следующем формате \\samba_hostname_or_server_ip\sharename.

  4. Нажмите «Далее», и вам будет предложено ввести учетные данные, как показано ниже:

  5. В следующем окне вы можете ввести собственное имя для сетевого расположения. По умолчанию будет выбран сервер Samba.

  6. Нажмите «Далее», чтобы перейти к последнему экрану мастера настройки соединения.
  7. Нажмите «Готово», и файлы на сервере Samba будут показаны.

Вывод 


Из этого руководства вы узнали, как установить сервер Samba в CentOS 7 и создать различные типы общих пользователей и пользователей. Мы также показали, как подключиться к серверу Samba с устройств Linux, macOS и Windows.

Быстрая и простая настройка samba

Иногда нужно очень быстро на сервере настроить файловую шару и открыть на нее доступ. При этом нет необходимости городить какие-то сложные конфигурации, права доступа или что-то еще. Нужен просто оперативный доступ к информации без лишних вопросов.


Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, рекомендую познакомиться с онлайн-курсом «Специализация Administrator Linux» в OTUS. Курс для новичков из двух ступеней — Junior и Middle. Полная программа курса по .

Мне, к примеру, недавно подобное понадобилось, чтобы открыть доступ к резервным копиям, которые хранились на сервере. Самому разбираться и искать информацию не хотелось, нужно было быстро дать человеку доступ на чтение, чтобы он сам нашел все, что ему нужно.

Я не буду специально оперировать версиями операционных систем. У самбы конфиги одинаковые почти везде, где мне приходилось с ними работать, тем более в самых простых конфигурациях.

Итак, устанавливаем самбу любым подходящим способом для вашей операционной системы. Конфигурации справедливы для 3-й версии самбы. Дальше решаем, что нам нужно:

  • доступ по пользователю и паролю,
  • доступ по ip адресу,
  • доступ всем подряд без ограничений.

В зависимости от этого настройки будут немного разные.

Для доступа по паролю рисуем такой конфиг:

[global]
security = user
passdb backend = tdbsam
workgroup = MYGROUP
server string = Samba

[share]
path = /mnt/shara
valid users = @users
force group = users
create mask = 0660
directory mask = 0771
writable = yes
browseable = yes

Перезапускаем самбу. Дальше добавляем пользователя в систему примерно так:

# useradd share-user -M -G users -s /sbin/nologin

Импортируем этого пользователя в самбу и задаем пароль:

# smbpasswd -a share-user

И пробуем зайти на шару по адресу:

\\ip-сервера\share

Чтоб организовать доступ в зависимости от ip адреса, делаем такие настройки в smb.conf:

[global]
security = share
workgroup = MYGROUP
server string = Samba
map to guest = bad user

[share]
path = /mnt/files
browsable = yes
writable = yes
guest ok = yes
read only = no
hosts allow = 192.168.0.171

В данном случае полный доступ будет у адреса 192.168.0.171. Чтобы добавить всю подсеть, то указать нужно следующее:

hosts allow = 192.168.0.

Комбинировать можно разные подсети и адреса, разделяя их пробелами. Для того, чтобы отключить доступ каким-то отдельным адресам из разрешенной подсети, можно сделать вот так:

hosts allow = 192.168.0. except 192.168.0.15

Доступ будет разрешен всей подсети 192.168.0.0/24, кроме адреса 192.168.0.15.

Делаем перезапуск самбы и проверяем.

Если у вас установлена samba 4, то эта конфигурация не заработает и вы получите ошибку:

 WARNING: Ignoring invalid value 'share' for parameter 'security'

Чтобы доступ по ip нормально заработал, вам необходимо внести следующие изменения в приведенный выше конфиг:

security = user
map to guest = Bad Password

Остальные параметры оставляете те же. После этого доступ по ip будет работать и на 4-й версии самбы.

Если доступ будет предоставлен всем без ограничений, то простейшая конфигурация самбы будет такой:

[global]
security = user
workgroup = MYGROUP
server string = Samba
guest account = nobody
map to guest = Bad User

[share]
path = /mnt/files
browseable = Yes
guest ok = Yes
writeable = Yes
public = yes

Не забываем сделать права для всех на папку:

# chmod 0777 /mnt/files

Перезапускаем самбу и пробуем зайти. Должно пустить без лишних вопросов.

Вот так буквально за 5 минут можно организовать простейший файловый сервер с помощью samba. А часто сложнее и не надо. Для какой-нибудь файловой помойки подойдет самый последний вариант.

Для более сложных конфигураций у меня есть отдельные статьи:

Онлайн курс по Kubernetes

Онлайн-курс по Kubernetes – для разработчиков, администраторов, технических лидеров, которые хотят изучить современную платформу для микросервисов Kubernetes. Самый полный русскоязычный курс по очень востребованным и хорошо оплачиваемым навыкам. Курс не для новичков – нужно пройти вступительный тест.

Если вы ответите «да» хотя бы на один вопрос, то это ваш курс:

  • устали тратить время на автоматизацию?
  • хотите единообразные окружения?;
  • хотите развиваться и использовать современные инструменты?
  • небезразлична надежность инфраструктуры?
  • приходится масштабировать инфраструктуру под растущие потребности бизнеса?
  • хотите освободить продуктовые команды от части задач администрирования и автоматизации и сфокусировать их на развитии продукта?

Сдавайте вступительный тест по и присоединяйтесь к новому набору!.


Не понравилась статья и хочешь научить меня администрировать? Пожалуйста, я люблю учиться. Комментарии в твоем распоряжении. Расскажи, как сделать правильно!

Помогла статья? Подписывайся на telegram канал автора

Анонсы всех статей, плюс много другой полезной и интересной информации, которая не попадает на сайт.

Easy How To — Linux / Unix, вопросы и ответы от nixCraft

Простой в использовании Linux, macOS, * BSD и Unix-подобный учебник {вопросы и ответы} для разработчиков и системных администраторов. Вы можете получить последний учебник, используя RSS / XML-канал или еженедельный информационный бюллетень.

Допустим, вы хотите повторить такой символ, как «» ИЛИ « = », несколько раз при написании сценария bash. Обратите внимание, что мне нужен был быстрый сценарий для работы на сервере Linux, macOS и FreeBSD, чтобы повторять строку / символ n раз.Один из простых способов повторить строку или символ n раз — это просто использовать команду echo command / printf следующим образом:

 echo '------------------------------------'
printf '% s \ n' '------------------------------------' 

[продолжить чтение…]

Мы используем команду df для определения общего дискового пространства и доступного места в файловой системе Linux / Unix. Давайте посмотрим, как использовать команду df для просмотра количества свободного места, оставшегося в вашей файловой системе Linux, macOS, * BSD и Unix.Мы также объясним, как автоматизировать мониторинг дискового пространства и отправить уведомление по электронной почте или push-уведомление на ваше мобильное устройство.
[продолжить чтение…]

При обновлении FreeBSD с 12 до 13 мы получаем обновленную версию ZFS. FreeBSD 13 выпущена с поддержкой OpenZFS с различными повышениями производительности. Иногда исправление ОС и незначительное обновление FreeBSD также может предлагать обновленную версию zpool. В любом случае нам необходимо обновить версию пулов хранения ZFS, чтобы получить новые функции и исправления ошибок.На этой странице объясняется, как обновить версию пулов хранения ZFS на FreeBSD.
[продолжить чтение…]

Мне нужно загрузить большой файл и получить указанный файл, используя несколько подключений, чтобы ускорить загрузку на FreeBSD. Как установить lftp и загрузить файлы с помощью FreeBSD?
[продолжить чтение…]

Дома или в облачной среде IP-адреса назначаются динамически сервером DHCP. Установка статического IP-адреса на сервере Alpine Linux требуется по разным причинам.Например, Alpine Linux настроен как DHCP-сервер или KVM-сервер для размещения нескольких виртуальных машин. Статический IP-адрес упрощает работу с переадресацией портов, межсетевым экраном и HTTPS-сервером. В этом кратком руководстве объясняется, как настроить статический IP-адрес в Alpine Linux.
[продолжить чтение…]

Alpine Linux поставляется с пакетом датчиков мониторинга, который называется lm-sensor. Это простое в использовании приложение с открытым исходным кодом для мониторинга температуры процессора, напряжения и вентиляторов. На этой странице объясняется, как установить, настроить и использовать lm-датчики в Alpine Linux для просмотра температуры процессора и других данных на вашем ноутбуке или сервере под управлением Alpine Linux.
[продолжить чтение…]

Каждый раз, когда мы обновляем критически важную библиотеку, такую ​​как OpenSSL, нам необходимо перезапускать все демоны, которые используют эту библиотеку. Сам Systemd с PID 1 также использует OpenSSL. Как перезапустить демон systemd без перезагрузки Linux и других служб, таких как Nginx, SSHD, Firewalld? Вот несколько советов.
[продолжить чтение…]

Как добавить или удалить пользователя samba под Linux — The Geek Diary

Чтобы добавить нового пользователя для доступа к общему ресурсу samba, вам необходимо сначала создать учетную запись пользователя сервера с помощью команды «useradd», а затем использовать ту же учетную запись для добавления пользователь самбы.Следуйте инструкциям ниже, чтобы добавить пользователя john и предоставить ему доступ к общему ресурсу samba.

Добавление учетной записи пользователя Linux

Один из способов просмотра общего ресурса Samba — наличие учетной записи UNIX на сервере Samba. Это делается с помощью команд « useradd [имя пользователя] » и « passwd [имя пользователя] ». Если у вас уже есть учетная запись пользователя, созданная в системе, пропустите часть ниже и перейдите к добавлению пользователя samba напрямую.

Установите пароль для нового созданного пользователя.

Добавление пользователя Samba

Если у пользователя есть локальная учетная запись, его можно добавить соответствующего пользователя Samba samba с помощью команды smbpasswd -a . Команда smbpasswd при использовании с параметром -a добавляет нового пользователя samba, а также позволяет вам установить пароль для нового пользователя samba. Например, для пользователя john используйте команду ниже:

 # smbpasswd -a john
Новый пароль SMB:
Введите новый пароль SMB еще раз: 

Ключ -a добавляет john в список паролей Samba.

Чтобы изменить существующий пароль Samba пользователя Samba (снова используя пример пользователя john):

 # smbpasswd john
Новый пароль SMB:
Введите новый пароль SMB еще раз: 

Разрешение пользователю доступа к общему ресурсу samba

Настройте общий ресурс Samba в файле конфигурации /etc/samba/smb.conf , чтобы новый пользователь мог просматривать общий ресурс:

 # vi /etc/samba/smb.conf
[share1]
   comment = Общий каталог
   путь = / var / tmp / sharedir
   Действительные пользователи = Энтони  Джон 
   public = нет
   Writable = да 

Используйте testparm , чтобы показать обновленный общий ресурс.Перезагрузите файл конфигурации smb.conf с помощью следующей команды.
для RHEL / CentOS 6

для RHEL / CentOS 7

Удаление пользователя Samba

Чтобы удалить пользователя samba, выполните следующие действия. при необходимости убедитесь, что вы также удалили соответствующего пользователя UNIX с сервера.

1. Удалите пользователя samba (john) с помощью команды smbpasswd с опцией -x .

 # smbpasswd -x джон
удалить пользователя unix (john) пользователемdel 

2.Теперь вы можете удалить пользователя ОС UNIX john вместе со всеми файлами, связанными с этим пользователем, например, с домашним каталогом, с помощью команды «userdel -r».

Как добавить пользователя Samba в Linux

Samba — это бесплатная сетевая служба с открытым исходным кодом, работающая по сетевой модели клиент / сервер. Он обеспечивает совместное использование файлов в операционных системах Windows и Linux / Unix и использует протоколы SMB (Server Messaging Block) и CIFS (Common Internet File System) для беспрепятственного совместного использования ресурсов в сети.Совместное использование Samba считается одним из наиболее эффективных и экономичных способов совместного использования ресурсов в локальной сети — LAN.

Общая папка в Samba, называемая общей папкой samba. Общий ресурс samba может быть любым файлом, каталогом или даже принтером. При настройке сети клиент отправляет запрос на сервер Samba для файла, каталога или общего принтера. В свою очередь, сервер Samba отвечает на эти запросы, запрещая или предоставляя клиенту доступ к запрошенным общим ресурсам.

Новый пользователь должен быть добавлен в качестве пользователя samba в Linux, чтобы иметь доступ к общему ресурсу samba. Затем пользователь samba может подключиться к серверу Samba, используя пароль samba, и получить доступ к общим ресурсам. В этом руководстве мы покажем вам процедуру добавления пользователя samba

.

Добавить пользователя

Теперь давайте сосредоточимся на том, как добавить нового пользователя в Samba. Сначала создайте новую учетную запись пользователя, как в любой системе Linux. В этом примере мы создадим новую учетную запись для пользователя с именем « joe ».

  $ аддусер джо  

Затем добавьте пользователя samba, назначив ему пароль samba с помощью команды smbpasswd , как показано:

  $ sudo smbpasswd -a joe  

Вам будет предложено ввести новый пароль samba, а затем подтвердить его, как показано в выходных данных ниже

  Новый пароль SMB:
Введите новый пароль SMB еще раз:
добавил пользователь joe.
  

После того, как вы создали пользователя samba, вам необходимо добавить его в общий ресурс samba, отредактировав samba smb.conf , который является файлом конфигурации Samba. Прокрутите и найдите общий ресурс samba, в данном случае «документы» , и добавьте пользователя в список допустимых пользователей, как показано в 4-й строке в блоке конфигурации ниже.

  [документы]
comment = Документы отдела поделятся
путь = / SRV / документы
допустимые пользователи = Джо
public = нет
Writable = да
browsable = да 
 

Теперь сохраните изменения и выйдите из файла конфигурации. Чтобы изменения сохранились, перезапустите демон Samba, как показано.

  $ sudo systemctl перезапуск smb  

Добавить существующего локального пользователя в samba

Если у вас уже есть существующий пользователь в вашей системе, то добавить его в samba довольно просто. Просто используйте команду ‘ smbpasswd ‘, как показано:

  $ sudo smbpasswd -a существующий_пользователь  

Затем измените файл конфигурации и добавьте существующего пользователя в список допустимых пользователей samba, как показано ранее.

  действующих пользователей = существующий_пользователь  

Пункт о добавлении пользователей в Samba версии 4.х

Начиная с версии Samba 4.x и новее, Samba может работать как контроллер домена AD. Вам не нужно иметь стандартного пользователя Linux или Unix в Linux для каждого создаваемого пользователя Samba. Чтобы добавить пользователей в каталог Samba Active, используйте показанную команду:

  пользователь samba-tool добавить имя пользователя  

Удалить пользователя samba

Если вы хотите удалить или удалить пользователя Samba из своей системы, используйте команду « smbpasswd » с параметром -x, за которым следует имя пользователя.

  $ sudo smbpasswd -x joe  

При желании вы можете полностью удалить пользователя вместе с домашним каталогом, используя команду userdel, как показано:

  $ sudo userdel -r joe  

Заключение

Мы рассмотрели, как добавить и удалить пользователя Samba в системе Linux. Как указывалось ранее, версия Samba 4.x теперь поддерживает аутентификацию через Active Directory, в отличие от более ранних версий Samba.

разрешений — Samba: общий доступ к каталогу с определенным пользователем Windows 10 без пароля

Мне нужны инструкции по созданию общего ресурса Samba, доступ к которому может получить только конкретный пользователь Windows 10 без пароля.

Я прочитал несколько руководств и, хотя я могу легко создать общий ресурс, к которому может получить доступ любой, мне не удалось создать общий ресурс, доступ к которому может получить только конкретный пользователь. Я могу видеть каталог, о котором идет речь, но если я попытаюсь открыть его, я получаю сообщение об ошибке «Доступ запрещен» и проводник Windows запрашивает имя пользователя и пароль.

Я создал пользователя linux с именем пользователя на ПК с Windows и тем же паролем, что и пользователь Windows. Если я введу учетные данные созданного мной пользователя Linux в указанное выше приглашение, мне будет предоставлен доступ.На данный момент я могу думать только о том, что имя пользователя учетной записи Linux не совпадает с именем соответствующей учетной записи Windows.

Вот что у меня в smb.conf

  шифровать пароли = да
безопасность = пользователь

[Резервное копирование электронной почты]
    comment = резервная папка электронной почты
    путь = / главная / самба / emailbackup
    гость ок = да
    только чтение = нет
    browseable = да
    действительные пользователи = электронная почта xavie + резервная копия электронной почты
  

xavie — это имя учетной записи Linux, которая должна соответствовать учетной записи Windows, emailer — еще одна учетная запись Linux, которой требуется доступ к каталогу, а emailbackup — это группа, членами которой являются обе учетные записи.Учетная запись Windows является учетной записью Microsoft (т. Е. Не локальной учетной записью; привязана к адресу электронной почты @ Outlook.com), если это что-то меняет.

Если эта проблема вызвана неправильным именем пользователя, может ли кто-нибудь посоветовать мне, как я могу найти имя пользователя, которое необходимо назначить учетной записи Linux (например, есть ли файл журнала, который я могу посмотреть, чтобы узнать, какой пользователь пытался получить доступ к ресурсу Samba)? В противном случае, могу ли я еще что-нибудь проверить, что могло бы быть причиной этой проблемы?

РЕДАКТИРОВАТЬ:
Я поискал в Интернете и добился определенных успехов.Изучив файлы журнала Samba, я обнаружил, что был прав, полагая, что имя пользователя было неправильным. Согласно файлам журнала, Windows 10, когда пользователь использует учетную запись Microsoft, идентифицирует пользователя для Samba с помощью адреса электронной почты, используемого этой учетной записью, а не имени пользователя. Вот журнал (уровень 2), который я видел:

  [2016/08/20 14: 15: 36.349641, 2] ../source3/param/loadparm.c:2700(lp_do_section)
  Раздел обработки "[Все пользователи]"
[2016/08/20 14: 15: 36.349966, 2]../source3/param/loadparm.c:2700(lp_do_section)
  Раздел обработки "[Резервное копирование электронной почты]"
[2016/08/20 14: 15: 36.350850, 2] ../source3/auth/auth.c:315(auth_check_ntlm_password)
  check_ntlm_password: Аутентификация для пользователя [] -> [] ВЫПОЛНЕНА с ошибкой NT_STATUS_NO_SUCH_USER
  

Я добавил адрес электронной почты в файл smbuser, связав его с созданной мной учетной записью Linux. Это сработало, и теперь в журнале написано, что я успешно прошел аутентификацию, но теперь у меня возникла новая проблема.

Новая проблема заключается в том, что совместное использование Samba не работает на моем ПК при входе в учетную запись, которую я указал выше. По сути, у меня на сервере Ubuntu есть два общих ресурса; общедоступный общий ресурс, к которому может получить доступ любой, и другой общий ресурс, который я хочу, чтобы он был доступен только пользователю Windows 10. Этот пользователь Windows 10 после того, как я внес вышеупомянутые изменения, больше не может видеть ни один из общих ресурсов и даже не иметь доступа к серверу Ubuntu. OTOH, ноутбук моего отца, у которого нет учетной записи на Samba, может получить доступ к серверу и видеть оба общих ресурса (но не может получить доступ к закрытому общему ресурсу без аутентификации).Вот новый журнал, созданный с изменениями в smbusers:

  [2016/08/20 14: 36: 44.523779, 2] ../source3/param/loadparm.c:2700(lp_do_section)
  Раздел обработки "[Все пользователи]"
[2016/08/20 14: 36: 44.524358, 2] ../source3/param/loadparm.c:2700(lp_do_section)
  Раздел обработки "[Резервное копирование электронной почты]"
[2016/08/20 14: 36: 44.552274, 2] ../source3/auth/auth.c:305(auth_check_ntlm_password)
  check_ntlm_password: аутентификация для пользователя [] -> [xavie] -> [xavie] прошла успешно
[2016.08.20 14:36:44.553509, 1] ../source3/param/loadparm.c:2389(lp_idmap_range)
  Диапазон idmap не указан для домена '*'
[2016/08/20 14: 36: 44.553782, 1] ../source3/auth/token_util.c:430(add_local_groups)
  SID S-1-5-21-1934213540-7097-1557597498-1000 -> getpwuid (1002) не удалось
[2016/08/20 14: 36: 44.554723, 1] ../source3/param/loadparm.c:2389(lp_idmap_range)
  Диапазон idmap не указан для домена '*'
[2016/08/20 14: 36: 44.554938, 1] ../source3/auth/token_util.c:430(add_local_groups)
  SID S-1-5-21-1934213540-7097-1557597498-1000 -> getpwuid (1002) не удалось
  

Вот текущее содержимое smb.conf, если это кому-то поможет. Я включаю только то, что изменил; все, что не упомянуто, по умолчанию:

  [весь мир]
  уровень журнала = 2
  карта имени пользователя = / etc / samba / smbusers
  шифровать пароли = да
  безопасность = пользователь

[Все пользователи]
    comment = Каталог доступен всем пользователям
    путь = / главная / самба / аллусеры
    гость ок = да
    только чтение = нет
    browseable = да
    создать маску = 0777
    маска каталога = 0777

[Резервное копирование электронной почты]
    comment = резервная папка электронной почты
    путь = / главная / самба / emailbackup
    гость ок = да
    только чтение = нет
    browseable = да
    действительные пользователи = электронная почта xavie + резервная копия электронной почты
  

Может ли кто-нибудь увидеть, в чем моя новая проблема?

Помощь будет принята с благодарностью,
С уважением,

Как добавить и включить пользователей для общего ресурса Samba

Если ваши пользователи не могут пройти аутентификацию в Samba, скорее всего, вы забыли один очень важный шаг.Джек Уоллен показывает, что нужно сделать, чтобы пользователи могли получить доступ к этим общим ресурсам.

Я не знаю, сколько раз ко мне обращались люди, чтобы сказать: «Помогите, я не могу заставить пользователей успешно пройти аутентификацию на общем ресурсе Samba! Что мне делать?» После многих лет помощи людям с этой проблемой ответ на данный момент уже довольно банален. К удивлению большинства людей, решение этой проблемы довольно простое. Что это? Вы должны добавить и включить пользователей, чтобы Samba знала, что они существуют.

Что? Ждать! Пользователи находятся в системе. Они могут войти в свои учетные записи на сервере Samba. Разве этого не должно быть достаточно? Одним словом, нет. Несмотря на то, что система знает о пользователях, Samba нет. Но не волнуйтесь, решение можно решить двумя простыми командами. Вот что ты делаешь.

Откройте окно терминала на сервере Samba (или просто войдите в систему, если это безголовый компьютер) и введите следующую команду sudo smbpasswd -a USER (где USER — имя пользователя, которое нужно добавить).Вам будет предложено ввести и подтвердить новый пароль для пользователя. Затем введите команду sudo smbpasswd -e USER, и пользователю будет разрешено использовать общие ресурсы Samba.

Теперь, когда пользователь пытается пройти аутентификацию на общем ресурсе Samba, он действительно работает.

Это один из тех шагов, о которых часто забывают, которые могут свести с ума администратора Samba. Обязательно всегда добавляйте и активируйте пользователей Samba, иначе, что бы вы ни делали, они не смогут войти в эти общие ресурсы.

Еженедельный бюллетень с открытым исходным кодом

Вы не хотите пропустить наши советы, руководства и комментарии по ОС Linux и приложениям с открытым исходным кодом.Доставка по вторникам

Зарегистрироваться Сегодня

См. Также

Изображение: Джек Уоллен

Как настроить быстрый и простой обмен файлами с Samba

Если вы хотите использовать рабочий стол или сервер Linux для обмена файлами, посмотрите, насколько просто это может быть с помощью Samba.

Изображение: Джек Уоллен

Samba — это невероятно мощный инструмент, позволяющий без проблем организовать общий доступ к файлам и принтерам для клиентов SMB / CIFS с сервера / рабочего стола Linux. С помощью Samba вы даже можете подключить этот Linux-компьютер к домену Windows. Но прежде чем вы сможете заняться более сложными аспектами Samba, вы должны сначала запустить ее.

Мы пока не собираемся рассматривать контроллеры домена Windows; вместо этого мы сосредоточимся на гораздо более простой задаче присоединения к рабочей группе Windows и совместного использования папок для всех клиентов в этой рабочей группе.

SEE: Политика настройки и управления веб-сервером (Tech Pro Research)

Что вам понадобится

Для того, чтобы Samba начала работать, много не нужно. Вам понадобится:

  • Рабочая группа Windows
  • Машина Linux
  • Немного времени

Я продемонстрирую это на Ubuntu 16.04, но этот процесс работает одинаково в большинстве дистрибутивов Linux. Сначала мы создадим папку, которая позволит анонимно предоставлять общий доступ в вашей рабочей группе, а затем создадим защищенный паролем общий ресурс.

Примечание: Вы должны изменить инструкции в соответствии с вашим выбором дистрибутива.

Установка Samba

  1. На машине Linux откройте окно терминала.
  2. Установите необходимое программное обеспечение с помощью команды sudo apt-get install -y samba samba-common python-glade2 system-config-samba.
  3. Введите свой пароль sudo и нажмите Enter.
  4. Подождите, пока установка завершится.

Вот и все — Samba установится и запустится.

Настройка Samba

Основной файл конфигурации для Samba: /etc/samba/smb.conf . Многие люди посоветуют вам сделать резервную копию этого файла и создать новый файл с определенным содержимым; однако я предлагаю использовать этот файл, так как он лучше настроен для установленной вами версии Samba.

Следует создать резервную копию файла конфигурации по умолчанию, чтобы можно было безопасно редактировать оригинал и всегда иметь рабочую копию, к которой можно вернуться. Чтобы создать резервную копию файла конфигурации, введите команду:

sudo cp -pf /etc/samba/smb.conf /etc/samba/smb.conf.bak

Теперь откройте файл / etc / samba / smb. conf в вашем любимом текстовом редакторе и приготовьтесь внести некоторые изменения.

Найдите эту строку:

workgroup = WORKGROUP

Измените WORKGROUP в соответствии с потребностями вашей сети.

Следующий раздел, который вам нужно отредактировать, находится далеко внизу в разделе «Определения общих ресурсов». Прокрутите вниз под этим разграничением и добавьте следующее:

[Анонимный]

путь = / samba / anonymous
просматриваемый = да
доступный для записи = да
только для чтения = нет
force user = никто

Сохраните этот файл и перезапустите Samba с помощью этой команды:

sudo service smbd restart

У вас должна быть возможность получить доступ к этим общим ресурсам с любого компьютера в вашей сети.Поскольку мы установили этот общий ресурс как анонимный, пользователям не нужно будет входить в систему для доступа к файлам и папкам внутри.

Добавление защищенных паролем общих ресурсов

Мы только что добавили анонимный общий ресурс, к которому может получить доступ любой желающий. Если вы хотите добавить папку (в качестве примера мы будем использовать / samba / share), защищенную паролем, выполните следующие действия.

  1. Откройте окно терминала на сервере Samba.
  2. Создайте новую группу с помощью команды sudo addgroup smbgrp.
  3. Создайте нового пользователя с помощью команды sudo useradd share -G smbgrp.
  4. Создайте пароль Samba для пользователя с помощью команды smbpasswd -a share.
  5. Введите и подтвердите пароль для пользователя.
  6. Создайте папку с помощью команды sudo mkdir -p / samba / share.
  7. Измените права доступа к папке с помощью команды sudo chmod -R 0770 / samba / share.
  8. Измените владельца папки с помощью команды sudo chown root: smbgrp / samba / share.

Теперь откройте файл / etc / samba / smb.conf и добавьте следующее в разделе Определения общих ресурсов:

[SECURED]

path = / samba / share
valid users = @smbgrp
browsable = yes
writable = yes
read only = no

Сохраните файл и перезапустите Samba с помощью команды sudo service smbd restart . Теперь у вас есть защищенный паролем общий ресурс Samba, готовый к использованию. Любой, кому нужен доступ к общему ресурсу, войдет в систему с общими именами пользователей и паролем, который вы установили при вводе команды sudo smbpasswd -a share .

Согните ее по размеру

Одна из замечательных особенностей Samba — это то, что она позволяет сгибать ее в соответствии с вашими потребностями. Создавайте столько общих ресурсов, сколько хотите (защищенных паролем или нет), делитесь принтерами и даже присоединяйтесь к доменам Windows. Сделайте Samba своей, и она прослужит вам долго.

Информационный бюллетень тенденций центров обработки данных

DevOps, виртуализация, гибридное облако, хранилище и операционная эффективность — вот лишь некоторые из тем, которые мы выделим для центров обработки данных.Доставка по понедельникам и средам.

Зарегистрироваться Сегодня

См. Также

Глава 9. Пользователи и безопасность

В этой главе мы
охватить основные концепции управления безопасностью в Samba, чтобы вы
можете настроить свой сервер Samba с политикой безопасности, подходящей для вашего
сеть.

Одна из самых сложных задач Samba заключается в
согласование моделей безопасности систем Unix и Windows. Самба
должны идентифицировать пользователей, связывая их с действительными именами пользователей и
группы, аутентифицируйте их, проверяя их пароли, а затем управляйте
их доступ к ресурсам путем сравнения их прав доступа к
разрешения на файлы и каталоги. Это сложные темы по
свои собственные, и не помогает то, что их три
различные типы операционных систем (Unix, Windows
95/98 / Me и Windows NT / 2000 / XP) и что Samba поддерживает несколько
методы обработки аутентификации пользователя.

Пользователи и группы

Начнем
как можно проще и добавить поддержку для одного пользователя. В
Самый простой способ настроить пользователя клиента — создать учетную запись Unix (и
домашний каталог) для этого человека на сервере и уведомить Samba о
существование пользователя. Вы можете сделать последнее
создание общего диска, который сопоставляется с домом пользователя
в файле конфигурации Samba и ограничивая доступ к
этот пользователь с действующим
вариант пользователей. Например:

 [Дэйв]
        путь = / домой / Дэйв
        comment = домашний каталог Дэйва
        Writable = да
        действительные пользователи = dave 

Списки допустимых опций пользователей
пользователи, которым разрешен доступ к общему ресурсу.В этом случае только пользователь
Дэйву разрешен доступ к общему ресурсу. В некоторых
ситуации можно указать, что любой пользователь может получить доступ к диску
поделиться с помощью гостя ОК
параметр. Потому что мы не хотим позволять гостю
доступ, эта опция здесь отсутствует. Если вы разрешите оба аутентифицированных
пользователи и гостевые пользователи имеют доступ к одному и тому же общему ресурсу, вы можете сделать некоторые
файлы, доступные для гостевых пользователей, путем назначения общедоступных
разрешения на эти файлы, ограничивая доступ к другим файлам для
конкретных пользователей или групп.

Когда клиентские пользователи получают доступ к общему ресурсу Samba, они должны пройти два уровня.
ограничения. Разрешения Unix для файлов и каталогов применяются как
обычный, а параметры конфигурации указаны в Samba
файл конфигурации также применяется. Другими словами, клиент должен сначала
передать механизмы безопасности Samba (например,
аутентификация с действующим именем пользователя и паролем, прохождение проверки
для допустимого параметра пользователей
и параметр только для чтения,
и т. д.), а также обычные права доступа к файлам и каталогам Unix
его пользователь на стороне Unix, прежде чем он сможет получить доступ для чтения / записи к общему ресурсу.

Помните, что вы можете сокращать домашний адрес пользователя
каталог с помощью переменной% H. Кроме того, вы можете использовать
Переменная имени пользователя Unix% u и / или переменная имени пользователя клиента
% U также в ваших опциях. Для
пример:

 [Дэйв]
    comment = домашний каталог% U
    Writable = да
    действительные пользователи = Дэйв
    путь =% H 

Если один пользователь получает доступ к домашнему каталогу, права доступа
позаботились о том, когда создается учетная запись пользователя. Домашний каталог
принадлежит пользователю, и права на него установлены соответствующим образом.Однако, если вы создаете общий каталог для
групповой доступ, необходимо выполнить еще несколько шагов.
Давай ударим по
групповая доля для
бухгалтерия в файле smb.conf :

 [бухгалтерский учет]
    comment = Справочник бухгалтерии
    Writable = да
    действительные пользователи = @account
    путь = / главная / самба / бухгалтерский учет
    создать режим = 0660
    режим каталога = 0770 

Первое, что мы сделали иначе, — это указали
@account как действительный пользователь вместо одного или нескольких
индивидуальные имена пользователей.Это сокращение для того, чтобы сказать, что действительный
пользователи представлены учетной записью группы Unix.
Этих пользователей нужно будет добавить в запись группы.
счет в
системный групповой файл (
/ и т.д / группа
или эквивалент), чтобы быть признанным частью группы. Как только они появятся,
Samba распознает этих пользователей как допустимых пользователей для общего ресурса.

Кроме того, вам необходимо создать общий каталог, в котором участники
группы могут получить доступ и указать на него с помощью
вариант конфигурации пути. Вот Unix
команды, которые создают общий каталог для учета
отдел (при условии, что / home / samba уже
существует):

 #  мкдир / home / samba / бухгалтерия 
#  аккаунт chgrp / home / samba / бухгалтерия 
#  chmod 770 / home / samba / бухгалтерия  

Есть два других варианта в этом smb.conf
Пример, оба из которых мы видели в предыдущей главе. Эти варианты
являются режимом создания и
режим каталога. Эти
параметры устанавливают максимальные права доступа к файлам и каталогам, которые новый
файл или каталог могут иметь. В этом случае мы отрицали весь мир
доступ к содержимому этого общего ресурса. (Это подкрепляется
chmod , показанная ранее.)

Работа с несколькими отдельными пользователями

Вернемся
к пользовательским ресурсам на мгновение. Если у нас есть несколько пользователей, для которых нужно установить
вверх общие папки домашнего каталога, мы, вероятно, захотим использовать специальные
[дома] поделитесь тем, что мы рассказали в главе 8.С
[дома] поделитесь, все, что нам нужно сказать, это:

 [дома]
    browsable = нет
    Writable = да 

Доля [домов] является особым разделом
Файл конфигурации Samba. Если пользователь пытается подключиться к
обыкновенная акция, не фигурирующая в
smb.conf файл (например, указав его с помощью UNC
в проводнике Windows), Samba будет искать
[дома] поделитесь. Если таковой существует, входящая акция
Предполагается, что имя является именем пользователя и запрашивается как таковое в
база данных паролей ( / etc / passwd или эквивалент)
файл сервера Samba.Если он появляется, Samba предполагает, что клиент
пользователь Unix пытается подключиться к своему домашнему каталогу.

В качестве иллюстрации предположим, что
София пытается подключиться к общему ресурсу с именем
[софия] на сервере Samba. Нет доли
это имя в файле конфигурации, но [дома]
общий ресурс существует, и пользователь sofia присутствует в
база данных паролей, поэтому Samba выполняет следующие шаги:

  1. Samba создает новый общий диск с именем [sofia] с
    путь, указанный в
    [дома] раздел.Если нет пути
    опция указана в [homes], Samba инициализирует
    в ее домашний каталог.

  2. Samba инициализирует опционы на новые акции из
    значения по умолчанию в [globals], а также любые переопределения
    варианты в [домах] за исключением
    просматриваемый.

  3. Samba соединяет клиента софии с
    эта доля.

Доля [домов] — это быстрый и безболезненный способ
создавать акции для вашего сообщества пользователей без необходимости дублировать
информация из файла базы паролей в
чел.conf файл. В нем есть
особенности, которые нам необходимо
указать:

  • Раздел [дома] может представлять любую учетную запись на
    машина, что не всегда желательно. Для
    Например, он потенциально может создать общий ресурс для
    корень, корзина,
    sys, uucp и т. д. Ты
    может установить глобальный
    неверная опция пользователей
    чтобы защититься от этого.

  • Значение
    просматриваемый вариант конфигурации
    отличается от других акций; это указывает только на то, что
    Раздел [дома] не будет отображаться в
    локальный список просмотра, а не то, что [алиса] поделился
    не будет.Когда раздел [alice]
    создается (после первоначального подключения), он будет использовать
    просматриваемое значение из
    [globals] для этой доли, а не значение
    из [домов].

Как мы уже упоминали, в инструкции пути нет необходимости.
[дома], если у пользователей есть домашние каталоги Unix в
файл / etc / passwd сервера.
Однако вы должны убедиться, что действующий домашний каталог существует, поскольку
Samba не будет автоматически создавать домашний каталог для пользователя и
откажется от подключения дерева, если каталог пользователя
не существует или недоступен.

Управление доступом к акциям

Часто бывает необходимо ограничить пользователей, которые
может получить доступ к определенному общему ресурсу по соображениям безопасности. Это очень просто
делать с Samba, потому что она содержит множество вариантов для создания
практически любая конфигурация безопасности. Давайте
представьте несколько конфигураций, которые вы, возможно, захотите использовать в своих собственных
Настройка Samba.

Мы видели, что происходит, когда вы указываете действительный
пользователей. Однако вы также можете указать список
недействительные пользователи — пользователи, которых никогда не следует
разрешил доступ к Samba или ее общим ресурсам.Это делается с помощью
недействительные пользователи
вариант. Ранее мы намекали на одно частое использование этой опции:
глобальное значение по умолчанию с разделом [homes], чтобы гарантировать
что различные пользователи системы и суперпользователи не могут быть подделаны для доступа.
Например:

 [весь мир]
    недопустимые пользователи = root bin daemon adm sync shutdown \
                        остановить почтовые новости оператор uucp
    автосервисы = дэйв питер боб

[дома]
    browsable = нет
    Writable = да 

Неверная опция пользователей, например
действующие пользователи, могут принимать группу
имена, которым предшествует знак (@), а также
имена пользователей.Если пользователь или группа отображаются в обоих списках,
опция недействительных пользователей принимает
приоритет, и пользователю или группе отказано в доступе к общему ресурсу.

На другом конце спектра вы можете явно указать пользователей
кому будет разрешен суперпользовательский (root) доступ к общему ресурсу с
пользователи-администраторы
вариант. Пример ниже:

 [продажи]
        путь = / дом / продажи
        comment = Данные о продажах недвижимости Sedona
        Writable = да
        Действительные пользователи = Софи Шелби Адилия
        пользователи admin = Майк 

Эта опция принимает как имена групп, так и имена пользователей.Кроме того, вы
можно указать сетевые группы NIS, поставив перед ними
@ также; если сетевая группа не найдена, Samba
будет предполагать, что вы имеете в виду стандартную группу Unix.

Будьте осторожны, если вы назначаете административные привилегии общему ресурсу для
вся группа. Команда Samba настоятельно рекомендует избегать использования этого
вариант, поскольку он по сути дает root-доступ указанным пользователям или
группы для этой доли.

Если вы хотите принудительно разрешить доступ только для чтения или чтения / записи для пользователей, которые
получить доступ к общему ресурсу, вы можете сделать это с помощью
прочитать список и
параметры списка записи,
соответственно.Эти параметры можно использовать для каждой акции, чтобы
ограничить доступ для записи или предоставить доступ для записи определенным пользователям
в общей папке, доступной только для чтения, соответственно. Например:

 [продажи]
        путь = / дом / продажи
        comment = Данные о продажах недвижимости Sedona
        только чтение = да
        написать список = Софи Шелби 

Опция списка записи
не может отменять разрешения Unix. Если вы создали
общий ресурс без предоставления пользователю списка записи записи
разрешение в системе Unix, ей будет отказано в доступе на запись
независимо от настройки записи
список.

Гостевой доступ

Как уже упоминалось
ранее вы можете настроить общий ресурс, используя
гость хорошо
= да, чтобы разрешить доступ гостю
пользователей. Это работает только при использовании безопасности на уровне общих ресурсов, что мы и будем
позже в этой главе. Когда пользователь подключается как гость,
аутентификация с использованием имени пользователя и пароля не требуется, но Samba
по-прежнему нужен способ сопоставить подключенного клиента с пользователем на локальном
система. Гость
параметр учетной записи может быть использован в акции для
укажите учетную запись Unix, которую должны назначать гостевые пользователи, когда
подключение к серверу Samba.Значение по умолчанию для этого установлено
во время компиляции и, как правило, никто, что
хорошо работает с большинством версий Unix. Однако в некоторых системах
никому аккаунту не разрешен доступ к некоторым
службы (например, печать), и вам может потребоваться настроить гостевой пользователь
вместо этого на ftp или другую учетную запись.

Если вы хотите ограничить доступ к общему ресурсу только для гостей — в
другими словами, все клиенты подключаются как гостевая учетная запись при доступе
доля — вы можете использовать гостя
единственный вариант в сочетании с
гость ок вариант, как показано на
следующий пример:

 [продажи]
        путь = / дом / продажи
        comment = Данные о продажах недвижимости Sedona
        Writable = да
        гость ок = да
        гостевая учетная запись = ftp
        только для гостей = да 

Убедитесь, что вы указали да для обоих
только гость и
гость ок; в противном случае Samba будет
не использовать указанную вами гостевую учетную запись.

Опции контроля доступа

В Таблице 9-1 перечислены параметры, которые вы можете использовать.
для контроля доступа к акциям.

Таблица 9-1. Варианты доступа на уровне общих ресурсов

Опция

Параметры

Функция

По умолчанию

Область применения

пользователей с правами администратора

строка (список имен пользователей)

Пользователи, которые могут выполнять операции как root

Нет

Поделиться

действительных пользователя

строка (список имен пользователей)

Пользователи, которые могут подключиться к общему ресурсу

Нет

Поделиться

недействительных пользователя

строка (список имен пользователей)

Пользователи, которым будет отказано в доступе к общему ресурсу

Нет

Поделиться

список для чтения

строка (список имен пользователей)

Пользователи, имеющие доступ только для чтения к общему ресурсу с возможностью записи

Нет

Поделиться

список записи

строка (список имен пользователей)

Пользователи, у которых есть доступ для чтения и записи к общему ресурсу только для чтения

Нет

Поделиться

макс. Соединений

числовой

Максимальное количество подключений к общему ресурсу одновременно

0

Поделиться

только гость (только гость)

логический

Если да, разрешает только гостевой доступ

Поделиться

гостевой счет

строка (имя счета)

Учетная запись Unix, которая будет использоваться для гостевого доступа

никто

Поделиться

администраторов

Эта опция определяет список пользователей, которые выполняют файловые операции как
если бы они были root.Это означает, что они могут изменять
или уничтожить файлы любого другого пользователя, независимо от
разрешения. Любые файлы, которые они создают, будут иметь root-права и
будет использовать группу по умолчанию администратора. В
опция пользователей с правами администратора позволяет ПК
пользователи действуют как администраторы для определенных общих ресурсов. Будь очень осторожен
при использовании этой опции и убедитесь, что пароль и другие
действуют политики безопасности.

действительных пользователя, недопустимые пользователи

Эти два параметра позволяют перечислить пользователей и группы, которые
предоставил или отказал в доступе к определенной общей папке.Вы можете войти в список
имен пользователей и / или групп. Если перед именем стоит знак at
(@), это интерпретируется как имя группы — с
Поиск в группах NIS выполнялся раньше, чем в группах Unix. Если перед именем стоит префикс
знак плюс (+), он интерпретируется как имя
Группа Unix, а поиск NIS не выполняется. Если перед именем стоит префикс
амперсанд (&), это интерпретируется как NIS
имя группы, а не имя группы Unix. Знак плюс и
амперсанд можно использовать вместе, чтобы указать, будут ли группы NIS или Unix
ищутся первыми.Например:

 [база данных]
    Действительные пользователи = Мэри Эллен Сью и продажи + маркетинг @dbadmin
    недействительные пользователи = гэвин сид дана и технические специалисты + & служба поддержки 

В допустимом параметре пользователей
пользователи Мэри, Эллен и
подавать иски разрешен доступ к
[база данных], как и члены Unix
групповой маркетинг и группа NIS / Unix
dbadmin. Инвалид
Параметр users запрещает доступ к общему ресурсу по
пользователи gavin, syd и
дана, а также участники группы NIS
технари и группа Unix / NIS
служба поддержки.В этом последнем случае список Unix
группы сначала ищутся для группы службы поддержки,
и если он там не найден, ищется список групп NIS.

Важное правило, которое следует помнить при использовании этих параметров, заключается в том, что любое имя или
группа в списке недействительных пользователей
будет всегда будет отказано в доступе, даже если это
включены (в любой форме) в действующий
список пользователей.

список чтения, список записи

Нравится действующим пользователям
и недействительный
параметры пользователей, эта пара параметров указывает
какие пользователи имеют доступ только для чтения к общему ресурсу с возможностью записи и для чтения / записи
доступ к общему ресурсу только для чтения соответственно.Ценность либо
options — это список пользователей. Чтение
параметр list имеет приоритет над любой другой Samba
предоставленные разрешения, а также разрешения для файлов Unix на
серверная система — запретить пользователям доступ на запись.
Запись
Параметр list переопределяет другие разрешения Samba
предоставить доступ на запись, но не может предоставить доступ на запись, если пользователь
не имеет прав на запись в файл в системе Unix. Ты можешь
укажите имена групп NIS или Unix, добавив к имени префикс в
(например, @users). Ни один из вариантов конфигурации не имеет
значение по умолчанию, связанное с ним.

макс. Соединений

Этот параметр определяет максимальное количество клиентских подключений, которое
поделиться можно в любой момент. Любые попытки подключения
после достижения максимума будут отклонены. Значение по умолчанию —
0, что является частным случаем, позволяющим
неограниченное количество подключений. Вы можете переопределить его для каждой акции как
следует:

 [бухгалтерский учет]
    макс. подключений = 30 

Эта опция полезна в том случае, если вам нужно ограничить количество
пользователей, которые получают доступ к лицензионной программе или фрагменту данных
одновременно.

только для гостей

Этот опцион на уровне акций (также называется только
гость) принудительно устанавливает соединение с общим ресурсом
выполняется с пользователем, указанным гостем
вариант учетной записи. Доля, к которой это применяется
необходимо явно указать гостя
ок = да для
эта опция должна быть распознана Samba. Значение по умолчанию для этого
вариант нет.

гостевой аккаунт

Этот параметр указывает имя учетной записи, которая будет использоваться для гостя.
доступ к акциям в Samba. Значение по умолчанию для этого параметра варьируется от
система в систему, но часто никому не задается.У некоторых учетных записей пользователей по умолчанию возникают проблемы с подключением в качестве гостевых пользователей. Если
что происходит в вашей системе, команда Samba рекомендует использовать
учетная запись ftp в качестве гостя.

Параметры имени пользователя

В таблице 9-2 показаны две дополнительные опции, которые Samba
можно использовать для исправления несовместимости имен пользователей между Windows
и Unix.

Таблица 9-2. Параметры имени пользователя

Опция

Параметры

Функция

По умолчанию

Область применения

карта имен пользователей

строка (имя файла)

Устанавливает имя файла сопоставления имен пользователей

Нет

Глобальный

логин

уровень

числовой

Указывает количество заглавных букв для использования при попытке сопоставления
имя пользователя

0

Глобальный

карта имени пользователя

Клиентские имена пользователей в сети SMB могут быть относительно длинными (до 255
символов), в то время как имена пользователей в сети Unix часто не могут быть длиннее
чем восемь символов.Это означает, что отдельный пользователь может иметь
одно имя пользователя на клиенте, а другое (короче) на Samba
сервер. Вы можете решить эту проблему по .
отображение клиента произвольной формы
имя пользователя для имени пользователя Unix, состоящего из восьми или менее символов. это
помещается в стандартный текстовый файл в формате, который
опишем вкратце. Затем вы можете указать
путь к Samba с глобальным именем пользователя
вариант карты. Обязательно ограничьте доступ к этому
файл; сделать пользователя root владельцем файла и запретить
доступ на запись для других (с восьмеричным разрешением 744 или 644).В противном случае ненадежный пользователь с доступом к файлу может легко сопоставить
его клиентское имя пользователя корневому пользователю сервера Samba.

Вы можете указать эту опцию следующим образом:

 [весь мир]
    имя пользователя map = /usr/local/samba/private/usermap.txt 

Каждая запись в файле сопоставления имен пользователей должна быть указана следующим образом:
Имя пользователя Unix, за которым следует знак равенства (=),
за которыми следуют одно или несколько имен пользователей клиентов SMB, разделенных пробелами.
Обратите внимание, что если не указано иное (т.е., гостевое подключение),
Samba ожидает, что и клиент, и пользователь сервера будут иметь
тот же пароль. Вы также можете сопоставить группы NT с одним или несколькими конкретными
Группы Unix используют знак @. Вот некоторые
примеры:

 jarwin = Джозеф Арвин
manderso = Марк Андерсон
users = @account 

Вы также можете использовать звездочку, чтобы указать подстановочный знак, соответствующий любому
имя пользователя клиента в свободной форме как запись в файле карты имен пользователей:

 никто = * 

Комментарии могут быть помещены в файл, начав строку с хеша
знак (#) или точка с запятой (;).

Обратите внимание, что вы также можете использовать этот файл для перенаправления одного пользователя Unix на
другой пользователь. Однако будьте осторожны, поскольку Samba и ваш клиент могут не
уведомить пользователя о том, что сопоставление выполнено и Samba может быть
ожидая другого пароля.

логин

уровень

Клиенты

SMB (например, Windows) часто отправляют имена пользователей в SMB
запросы на подключение полностью прописными буквами; другими словами,
имена пользователей клиентов не обязательно чувствительны к регистру. На Unix
server, однако, имена пользователей чувствительны к регистру :
пользователь ANDY отличается от пользователя
Энди.По умолчанию Samba решает эту проблему с помощью
сделать следующее:

  1. Проверка учетной записи пользователя с точным именем, отправленной клиентом

  2. Проверка имени пользователя строчными буквами

  3. Проверка имени пользователя строчными буквами только с первой буквы
    с заглавной буквы

Если вы хотите, чтобы Samba пробовала больше комбинаций верхних и
строчные буквы, можно использовать имя пользователя
опция глобальной конфигурации уровня.Этот вариант
принимает целочисленное значение, указывающее, сколько букв в
при попытке подключения к общему ресурсу имя пользователя должно начинаться с заглавной буквы.
Вы можете указать эту опцию следующим образом:

 [весь мир]
    уровень имени пользователя = 3 

В этом случае Samba пытается все возможные перестановки имен пользователей.
имеющий три заглавные буквы. Чем больше число, тем больше
вычисления, которые Samba должна выполнить, чтобы сопоставить имя пользователя, и
дольше будет проходить аутентификация.

Аутентификация клиентов

в
На этом этапе мы должны обсудить, как Samba аутентифицирует пользователей.Каждый
пользователь, который пытается подключиться к общему ресурсу, не разрешая гостевой доступ
должен предоставить пароль для
сделать успешное соединение. Какие
Samba использует этот пароль — и, следовательно, стратегия
Samba будет использовать для аутентификации пользователей — это арена
вариант конфигурации безопасности. Самба в настоящее время
поддерживает четыре
уровни безопасности в своей сети:
доля , пользователь ,
сервер и домен .

Безопасность на уровне акций

Каждый общий ресурс в рабочей группе имеет один или несколько паролей, связанных с
Это.Любой, кто знает действующий пароль для общего ресурса, может получить к нему доступ.

Безопасность на уровне пользователя

Каждый общий ресурс в рабочей группе настроен на разрешение доступа из
определенные пользователи. При каждом начальном подключении к дереву сервер Samba
проверяет пользователей и их пароли, чтобы разрешить им доступ к общему ресурсу.

Безопасность на уровне сервера

Это то же самое, что и безопасность на уровне пользователя, за исключением того, что сервер Samba
использует другой сервер для проверки пользователей и их паролей перед
предоставление доступа к общему ресурсу.

Безопасность на уровне домена

Samba становится членом домена Windows NT и использует один из
контроллеры домена домена — PDC или
BDC — для аутентификации. После аутентификации пользователь
получает специальный токен, который позволяет ей получить доступ к любому общему ресурсу с
соответствующие права доступа. С помощью этого токена контроллер домена
не нужно будет повторно подтверждать пароль пользователя каждый раз
когда она пытается получить доступ к другому общему ресурсу в домене.В
Контроллер домена может быть Windows NT / 2000 PDC или BDC, или Samba
действует как Windows NT PDC.

Каждая политика безопасности может быть реализована с помощью глобального
вариант безопасности, как показано в Таблице 9-3.

Таблица 9-3. Опция безопасности

Опция

Параметры

Функция

По умолчанию

Область применения

безопасность

домен, сервер,
share, или пользователь

Указывает тип защиты, которую будет использовать сервер Samba.

пользователь

Глобальный

Безопасность на уровне акций

С безопасностью на уровне общего ресурса каждый общий ресурс имеет один или несколько паролей.
связанный с ним, причем клиент аутентифицируется при первом
подключение к общему ресурсу.Это отличается от других режимов
безопасность в том, что нет никаких ограничений относительно того, кто может получить доступ к
поделиться, если этот человек знает правильный пароль. Акции
часто имеют несколько паролей. Например, один пароль может предоставить
доступ только для чтения, в то время как другой может предоставлять доступ для чтения / записи.
Безопасность поддерживается до тех пор, пока неавторизованные пользователи не обнаруживают
пароль для общего ресурса, к которому они не должны
иметь доступ.

OS / 2 и Windows 95/98 / Me поддерживают безопасность на уровне общих ресурсов на своих
Ресурсы.Вы можете настроить безопасность на уровне общих ресурсов в Windows 95/98 / Me.
сначала включив безопасность на уровне общих ресурсов на вкладке Контроль доступа
диалогового окна «Панель управления сетью». Затем выберите
Радио «Управление доступом на уровне общего доступа»
кнопка (которая отменяет выбор «Доступ на уровне пользователя
control «), как показано на рисунке 9-1, и нажмите кнопку OK. Выполните перезагрузку по запросу.

Рисунок 9-1. Выбор безопасности на уровне общих ресурсов в системе Windows 95/98 / Me

Затем щелкните правой кнопкой мыши ресурс, например жесткий диск или
CD-ROM — и выберите пункт меню «Свойства».Это вызовет
диалоговое окно «Свойства ресурса». Выберите вкладку «Общий доступ» вверху.
диалогового окна и включите ресурс как Shared As. Отсюда,
вы можете настроить, как общий ресурс будет отображаться для отдельных
пользователей, а также укажите, будет ли ресурс отображаться как
только для чтения, для чтения / записи или сочетание, в зависимости от пароля, который
поставляется.

Вы могли подумать, что эта модель безопасности не подходит для
Самба — и вы были бы правы. Фактически, если вы установите
безопасность =
опцию share в файле конфигурации Samba,
Samba по-прежнему будет повторно использовать комбинации имени пользователя и пароля в
файлы системных паролей для аутентификации доступа.Точнее Самба
предпримет следующие шаги, когда клиент запросит соединение
с использованием безопасности на уровне общих ресурсов:

  1. Когда будет запрошено соединение, Samba примет пароль и
    (если отправлено) имя пользователя клиента.

  2. Если общий ресурс предназначен только для гостей,
    пользователю сразу предоставляется доступ к ресурсу с правами
    пользователя, указанного гостем
    параметр счета; нет проверки пароля
    выполнено.

  3. Для других общих ресурсов Samba добавляет имя пользователя в список пользователей, которые
    разрешен доступ к общему ресурсу.Затем он пытается проверить
    пароль, указанный в связи с этим именем пользователя. В случае успеха
    Samba предоставляет пользователю доступ к общему ресурсу с правами, назначенными
    этот пользователь. Пользователю не потребуется повторная аутентификация, если только
    revalidate =
    опция да была установлена ​​внутри доли.

  4. Если аутентификация не удалась, Samba пытается проверить
    пароль к списку пользователей, ранее составленному во время
    попытки подключения, а также те, которые указаны под акцией в
    файл конфигурации.Если пароль совпадает с паролем любого имени пользователя
    (как указано в файле паролей системы, обычно
    / etc / passwd ) пользователю предоставляется доступ к
    поделиться под этим именем пользователя.

  5. Однако, если у доли есть гость
    ОК или общедоступный параметр,
    пользователь по умолчанию будет иметь доступ с правами пользователя, указанного в
    вариант гостевой учетной записи.

Вы можете указать в файле конфигурации, какие пользователи должны быть
изначально помещен в список пользователей безопасности на уровне общего ресурса с помощью
вариант конфигурации имени пользователя, как показано здесь:

 [весь мир]
    безопасность = доля

[бухгалтерский учет1]
    путь = / главная / самба / бухгалтерский учет1
    гость ок = нет
    Writable = да
    имя пользователя = davecb, pkelly, andyo 

Здесь, когда пользователь пытается подключиться к общему ресурсу, Samba проверяет
отправил пароль для каждого пользователя в своем собственном списке в дополнение к
пароли пользователей davecb,
пкелли и андё.Если любой из
пароли совпадают, соединение проверено, пользователь
разрешается. В противном случае подключение к конкретному общему ресурсу не будет выполнено.

Параметры безопасности на уровне общих ресурсов

В Таблице 9-4 показаны обычно связанные опции.
с долей уровня
безопасность
.

Таблица 9-4. Варианты доступа на уровне общих ресурсов

Опция

Параметры

Функция

По умолчанию

Область применения

только пользователь

логический

Если да, имена пользователей указаны
имя пользователя — единственное, что разрешено

Поделиться

имя пользователя (пользователь или
пользователей)

строка (список имен пользователей)

Пользователи, у которых проверяется пароль клиента

Нет

Поделиться

только пользователь

Этот логический параметр указывает, разрешит ли Samba подключение к
общий ресурс, использующий безопасность на уровне общего ресурса, основанную исключительно на отдельных лицах
указанные в параметре имени пользователя, вместо тех
пользователей, составленных из внутреннего списка Samba.По умолчанию
значение для этой опции нет. Вы можете отменить это
на акцию:

 [весь мир]
    безопасность = доля
[данные]
    имя пользователя = Энди Питер Валери
    только пользователь = да 

имя пользователя

Эта опция представляет список имен пользователей и / или имен групп для
Samba проверяет пароль подключения, чтобы разрешить доступ. это
обычно используется с клиентами, которые имеют безопасность на уровне общих ресурсов, чтобы разрешить
подключения к определенной услуге исключительно на основании квалификационных
пароль — в данном случае тот, который соответствует паролю, установленному для
конкретный пользователь:

 [весь мир]
    безопасность = доля
[данные]
    username = Энди Питер Терри 

Вы можете ввести список имен пользователей и / или имен групп.Если имя
с префиксом at (@), он интерпретируется как
имя группы, с поиском групп NIS перед группами Unix. Если имя
стоит перед знаком плюс (+), интерпретируется
как имя группы Unix, и поиск NIS не выполняется. Если имя
с префиксом амперсанда (&), это
интерпретируется как имя группы NIS, а не как имя группы Unix. В
знак плюса и амперсанд можно использовать вместе, чтобы указать,
или сначала ищутся группы Unix. Когда Samba встречает имя группы
в этом варианте он пытается аутентифицировать каждого пользователя в группе
до тех пор, пока не найдет тот, который преуспеет.Помните, что это может быть очень
неэффективно.

Мы не рекомендуем использовать эту опцию, если вы не реализуете
Сервер Samba с безопасностью на уровне общих ресурсов.

Безопасность на уровне пользователя

Режим безопасности по умолчанию с Samba — пользовательский уровень.
безопасность
. При использовании этого метода каждая акция
назначены определенные пользователи, которые могут получить к нему доступ. Когда пользователь запрашивает
подключение к общему ресурсу, Samba аутентифицируется путем проверки данного
логин и пароль с авторизованными пользователями в конфигурации
файл и пароли в базе паролей сервера Samba.Как упоминалось ранее в этой главе, один из способов изолировать пользователей
разрешен доступ к определенному общему ресурсу с помощью
допустимый вариант пользователей для каждого
акция:

 [весь мир]
    безопасность = пользователь

[бухгалтерский учет1]
    Writable = да
    допустимые пользователи = bob, joe, sandy 

Каждый указанный пользователь может подключиться к общему ресурсу, если предоставлен пароль.
соответствует паролю, хранящемуся в базе данных системных паролей на
сервер. После успешной первоначальной аутентификации клиент не будет
необходимо снова ввести пароль для доступа к этому общему ресурсу, если только
revalidate =
да опция была установлена.

Пароли могут быть отправлены на сервер Samba в зашифрованном или
незашифрованный формат. Если у вас есть системы обоих типов на вашем
сети, вы должны убедиться, что пароли, представленные каждым
пользователя хранятся как в традиционной базе данных учетных записей, так и
База данных зашифрованных паролей Samba. Сюда,
авторизованные пользователи могут получить доступ к своим общим ресурсам с любого типа
клиент. [1] Однако мы рекомендуем вам
переведите свою систему на зашифрованные пароли и откажитесь от незашифрованных
пароли, если безопасность является проблемой.Раздел 9.4 данной главы
объясняет, как использовать как зашифрованные, так и незашифрованные пароли.

Безопасность на уровне сервера

Уровень сервера
безопасность
аналогична безопасности на уровне пользователя.
Однако с безопасностью на уровне сервера Samba передает пароль
аутентификации к другому серверу паролей SMB — обычно другому
Сервер Samba или сервер Windows NT / 2000, действующий как PDC на
сеть. Обратите внимание, что Samba по-прежнему ведет список акций и их
конфигурация в его smb.conf файл. Когда
клиент пытается подключиться к определенному ресурсу, Samba
подтверждает, что пользователь действительно авторизован для подключения к общему ресурсу.
Затем Samba пытается проверить пароль, передав имя пользователя
и пароль к серверу паролей SMB. Если пароль принят,
с клиентом устанавливается сеанс. См. Рисунок 9-2 для иллюстрации этой установки.

Рисунок 9-2. Типичная настройка системы с использованием защиты на уровне сервера

Вы можете настроить Samba на использование отдельного сервера паролей под
безопасность на уровне сервера с использованием
сервер паролей
вариант глобальной конфигурации, как показано ниже:

 [весь мир]
    безопасность = сервер
    сервер паролей = mixtec toltec 

Обратите внимание, что вы можете указать более одной машины в качестве цели для
сервер паролей; Самба движется
вниз по списку серверов в случае, если его первый выбор —
недоступен.Серверы, идентифицированные
вариант сервера паролей
заданы как имена NetBIOS, а не их DNS-имена или эквивалентные IP-адреса.
адреса. Кроме того, если какой-либо из серверов отклоняет данный пароль,
соединение автоматически прерывается — Samba не будет пытаться выполнить другое
сервер.

Одно предостережение: при использовании этой опции вам все равно потребуется учетная запись
представляет этого пользователя на обычном сервере Samba. Это потому что
операционной системе Unix требуется имя пользователя для выполнения различных операций ввода-вывода.
операции. Предпочтительный метод решения этой проблемы — дать
пользовательская учетная запись на сервере Samba, но отключите
пароль аккаунта, заменив его в системе
файл паролей (e.g., / etc / passwd ) с
звездочка (*).

Безопасность на уровне домена

С на уровне домена
security
, сервер Samba действует как член
домен Windows. Напомним из главы 1, что каждый
домен имеет основной контроллер домена, которым может быть Windows
Сервер NT / 2000 или Samba, предлагающий аутентификацию по паролю. Домен
контроллер отслеживает пользователей и пароли в собственной базе данных и
аутентифицирует каждого пользователя, когда он впервые входит в систему и хочет получить доступ
акции другой машины.

Как упоминалось ранее в этой главе, Samba имеет аналогичную способность
предлагают безопасность на уровне пользователя, но этот вариант ориентирован на Unix и
предполагает, что аутентификация происходит через файлы паролей Unix. Если
машина Unix является частью домена NIS или NIS +, Samba
прозрачно аутентифицирует пользователей по общему файлу паролей в
типичный стиль Unix. Затем Samba предоставляет доступ к NIS или NIS +.
домен из Windows. Конечно, нет никакой связи между
Концепция домена NIS и домена Windows NT.

Настройка Samba для обеспечения безопасности на уровне домена рассматривается в главе 4 в разделе 4.7.

Пароли

Пароли
являются сложной проблемой с Samba. На самом деле настолько, что они
часто первая серьезная проблема, с которой сталкиваются пользователи при установке
Самба. На этом этапе нам нужно глубже погрузиться в Samba, чтобы обнаружить
что происходит в сети.

Пароли, отправленные от отдельных клиентов, могут быть зашифрованы или
незашифрованный. Зашифрованные пароли, конечно, более безопасны.А
незашифрованный пароль в виде обычного текста можно легко прочитать с помощью
программа для перехвата пакетов, такая как модифицированная
tcpdump программа для Samba, которую мы использовали в главе 1. Шифрование паролей по умолчанию
зависит от операционной системы, которую использует клиент для подключения
к серверу Samba. В Таблице 9-5 перечислены какие
Операционная система Windows
системы шифруют свои пароли и отправляют пароли в виде простого текста
по умолчанию.

Таблица 9-5. Операционные системы Windows с зашифрованными паролями

Операционная система

Зашифрованный или простой текст

Windows для рабочих групп

Обычный текст

Windows 95

Обычный текст

Windows 95 с обновлением SMB

Зашифрованный

Windows 98

Зашифрованный

Windows Me

Зашифрованный

Windows NT 3.х

Обычный текст

Windows NT 4.0 до SP 3

Обычный текст

Windows NT 4.0 после SP 3

Зашифрованный

Windows 2000

Зашифрованный

Windows XP

Зашифрованный

Используются три различных метода шифрования.Клиенты Windows 95/98 / Me
использовать метод, унаследованный от Microsoft LAN Manager
сетевое программное обеспечение. В системах Windows NT / 2000 / XP используется более новая система,
называется NT LAN Manager или NTLM. Более новая версия этого (называемая NT
LAN Manager версии 2 или NTLMv2) использует другой метод для
хеширование паролей.

Если поддерживаются зашифрованные пароли, Samba сохраняет зашифрованные
пароли в файле с именем smbpasswd . От
по умолчанию этот файл находится в личном кабинете
каталог дистрибутива Samba (обычно
/ usr / local / samba / private ).В то же время
клиент хранит зашифрованную версию пользовательского
пароль в собственной системе. Пароль в виде обычного текста никогда не сохраняется
в любой системе. Каждая система автоматически шифрует пароль
по стандартному алгоритму при установке или изменении пароля.

Когда клиент запрашивает соединение с SMB-сервером, который поддерживает
зашифрованные пароли (например, Samba или Windows NT / 2000 / XP), два
компьютеры проходят следующие переговоры:

  1. Клиент пытается согласовать протокол с сервером.

  2. Сервер отвечает протоколом и указывает, что он поддерживает
    зашифрованные пароли. В это время он отправляет назад случайно сгенерированный
    8-байтовая строка запроса.

  3. Клиент использует строку запроса в качестве ключа для шифрования уже своего
    зашифрованный пароль с использованием алгоритма, предопределенного согласованным
    протокол. Затем он отправляет результат на сервер.

  4. Сервер делает то же самое с зашифрованным паролем, хранящимся в
    свою базу данных.Если результаты совпадают, пароли эквивалентны, и
    пользователь аутентифицирован.

Обратите внимание, что даже если исходные пароли не используются
процесса аутентификации, вам нужно быть очень осторожным, чтобы
зашифрованные пароли, расположенные внутри smbpasswd
файл защищены от неавторизованных пользователей. Если они скомпрометированы,
неавторизованный пользователь может проникнуть в систему, повторив шаги
предыдущий алгоритм. Зашифрованные пароли так же чувствительны
как пароли в виде простого текста — это известно как
эквивалент обычного текста данных в криптографии
Мир.Конечно, ваша локальная политика безопасности должна требовать, чтобы
клиенты также защищают свои пароли, эквивалентные обычному тексту.

Вы можете настроить Samba на прием зашифрованных паролей с помощью
после глобальных дополнений к smb.conf . Примечание
что мы явно называем расположение файла паролей Samba:

 [весь мир]
    безопасность = пользователь
    шифровать пароли = да
    файл пароля smb = / usr / local / samba / private / smbpasswd 

Samba, однако, не будет принимать пользователей до тех пор, пока
smbpasswd Файл создан, и пользователи
были добавлены к нему с помощью smbpasswd
команда, как мы показали вам в главе 2.

Отключение зашифрованных паролей на клиенте

Пока аутентификация Unix была
используется в течение десятилетий, включая использование
telnet и rlogin доступ
в Интернете — он несет в себе хорошо известные риски безопасности.
Пароли в виде обычного текста отправляются через Интернет и могут быть восстановлены.
из TCP-пакетов злоумышленниками. Однако, если вы чувствуете, что
ваша сеть безопасна, и вы хотите использовать стандартный Unix
/ etc / passwd аутентификация для всех клиентов, вы
можно, но вы должны отключить зашифрованные пароли в этих Windows
клиенты, которые по умолчанию их используют.

Для этого необходимо изменить реестр Windows на каждом клиенте.
система. В дистрибутив Samba входит .reg .
нужные для этого файлы, находящиеся в источнике
дистрибутив / docs / Registry
каталог. В зависимости от платформы вы используете один из следующих
файлы:

Win95_PlainPassword.reg

Win98_PlainPassword.reg

WinME_PlainPassword.reg

NT_PlainPassword.рег

Win2000_PlainPassword.reg

(для Windows XP используйте файл .reg для Windows
2000г.) Вы можете выполнить установку, скопировав соответствующий
.reg файл на дискету DOS, вставив дискету
в дисководе клиента и запустив
.reg из пункта меню Выполнить в
меню «Пуск» клиента. (Или вы можете просто дважды щелкнуть
значок файла.)

После перезагрузки машины клиент не будет шифровать свой хеш-код.
пароли перед отправкой на сервер.Это означает, что
простые текстовые пароли можно увидеть в TCP-пакетах, которые
транслировать по сети. Опять же, мы рекомендуем вам не делать этого
если вы не уверены, что ваша сеть безопасна.

Если пароли не зашифрованы, используйте эти две строки в своей Samba.
файл конфигурации:

 [весь мир]
    безопасность = пользователь
    шифровать пароли = нет 

Файл smbpasswd

Samba хранит свои зашифрованные пароли в файле с именем
smbpasswd ,
который по умолчанию находится в
/ usr / local / samba / private каталог.В
smbpasswd файл следует охранять так же тщательно, как
файл паролей системы Unix (либо
/ etc / passwd или
/ etc / shadow ). Только пользователь root должен иметь
доступ для чтения / записи в частный каталог и
никакие другие пользователи не должны иметь к нему доступа. В дополнение
smbpasswd файлу должен быть запрещен доступ к
все пользователи кроме root. Когда все настроено на хорошую безопасность,
длинные списки частного каталога и
smbpasswd файл выглядит следующим образом:

 #  ls -ld / usr / local / samba / private 
drwx- - - - - - 2 root root 4096 26 ноября 01:11 / usr / local / samba / private
#  ls -l / usr / local / samba / private / smbpasswd 
-rw- - - - - - - 1 root root 204 26 ноября 01:11 / usr / local / samba / private / smbpasswd 

Прежде чем вы сможете использовать зашифрованные пароли, вам необходимо создать запись
для каждого пользователя Unix в файле smbpasswd
структура файла чем-то похожа на Unix
passwd , но с другими полями. На рис. 9-3 показана компоновка
smbpasswd файл; показанная запись на самом деле одна
строка в файле.

Рисунок 9-3. Структура записи файла smbpasswd (фактически одна строка)

Обычно записи в файле smbpasswd
создается автоматически командой smbpasswd .
Тем не менее, вам может быть интересно узнать, как интерпретировать данные в
smbpasswd файл, на случай, если вы
хотите посмотреть, какие учетные записи в нем хранятся, или даже изменить его
вручную.Вот разбивка по отдельным полям:

Имя пользователя

Это имя пользователя учетной записи. Берется прямо из
системный файл паролей.

UID

Это идентификатор пользователя (UID) учетной записи. Как и имя пользователя, это
взят непосредственно из файла системного пароля и должен соответствовать UID
там.

Хэш пароля LAN Manager

Это 32-битная шестнадцатеричная последовательность, представляющая пароль.
Клиенты Windows 95/98 / Me будут использовать.Он получается путем разбиения
пароль в две 7-символьные строки со всеми строчными буквами
переводится в верхний регистр. Если меньше 14 символов в
пароль, строки дополняются нулями. Затем каждый 7-значный
строка преобразуется в 56-битный ключ DES и используется для шифрования
постоянная строка KGS! @ # $%. Два 64-битных результата
объединяются и сохраняются как хэш пароля.

Если в настоящее время пароль для пользователя отсутствует, первые 11
символы хеша будут состоять из последовательности
НЕТ ПАРОЛЯ, за которым следует
X символов для остатка.Если пароль
был отключен, он будет состоять из 32 X
символы.

NT LAN Manager (NTLM) Хэш пароля

Это 32-битная шестнадцатеричная последовательность, представляющая пароль.
Клиенты Windows NT / 2000 / XP будут использовать. Он получается путем хеширования
пароль пользователя (представлен в виде 16-битного
последовательность Unicode с прямым порядком байтов) с хешем MD4. Пароль не
сначала конвертируется в прописные буквы.

Флаги счетов

Это поле состоит из 11 символов между двумя фигурными скобками ([]).Любой
следующие символы могут появляться в любом порядке; остальные
символы должны быть пробелами:

U

Эта учетная запись является стандартной учетной записью пользователя.

Д

Эта учетная запись в настоящее время отключена, и Samba не должна разрешать
логины.

N

Эта учетная запись не имеет связанного с ней пароля.

Вт

Это доверительная учетная запись рабочей станции, которую можно использовать для настройки
Samba как PDC, когда разрешает машинам Windows NT присоединяться к своему домену.

Время последнего изменения

Этот код состоит из символов LCT, за которыми следует
шестнадцатеричным представлением количества секунд с момента
эпоха (полночь 1 января 1970 г.), когда запись была изменена в последний раз.

Синхронизация паролей

Наличие обычного пароля (либо в
/ etc / passwd или / etc / shadow )
и зашифрованная версия того же пароля (в
smbpasswd file) может быть проблематичным, когда вам нужно
чтобы изменить их обоих.К счастью, Samba дает вам ограниченные возможности
чтобы ваши пароли синхронизировались. У Samba есть пара
параметры конфигурации для обновления регулярного пользователя
Пароль Unix автоматически при смене зашифрованного пароля на
система. Функцию можно активировать, указав
пароль unix
параметр глобальной конфигурации синхронизации:

 [весь мир]
    синхронизация паролей unix = да 

Если этот параметр включен, Samba пытается изменить
обычный пароль пользователя (root)
когда зашифрованная версия изменяется с
smbpasswd .Тем не менее, два других варианта должны быть
установить правильно, чтобы это работало.

Самый простой из двух — passwd
программа. Эта опция просто указывает Unix
команда, используемая для изменения стандартной системы пользователя
пароль. Он установлен в / bin / passwd
% u по умолчанию. В некоторых системах Unix это
достаточно, и вам не нужно ничего менять. Другие, такие как
Red Hat Linux, используйте вместо него / usr / bin / passwd . В
Кроме того, вы можете изменить это на другую программу или сценарий
в какой-то момент в будущем.Например, давайте
предположим, что вы хотите использовать сценарий с именем
changepass для смены пользователя
пароль. Напомним, что вы можете использовать переменную% u
для представления текущего имени пользователя Unix. Таким образом, пример становится:

 [весь мир]
    синхронизация паролей unix = да
    программа passwd = changepass% u 

Обратите внимание, что эта программа вызывается от имени пользователя root
когда пароль unix
параметр синхронизации установлен на да. Этот
потому что Samba не обязательно имеет старый открытый текст
пароль пользователя.

Более сложный вариант настройки —
passwd chat. В
опция чата passwd работает как
Скрипт чата Unix. Он также определяет серию строк для отправки.
в качестве ответов ожидать от программы, указанной
опция программы passwd. Для
Например, это то, что по умолчанию passwd
чат выглядит. Разделители — это пробелы
между каждой группой символов:

 passwd chat = * старый * пароль *% o \ n * новый * пароль *% n \ n * новый * пароль *% n \ n * изменен * 

Первая группа представляет собой ответ, ожидаемый от
программа для смены паролей.Обратите внимание, что он может содержать подстановочные знаки
(*), которые помогают обобщить чат-программы на
обрабатывать множество похожих выходов. Здесь,
* старый * пароль * указывает, что Samba ожидает
любая строка из программы паролей, содержащая буквы
старый, за которым следуют буквы
пароль, не обращая внимания на то, что было раньше,
после или между ними. Если Samba не получает ожидаемого
ответ, изменение пароля не удастся.

Вторая группа указывает, что Samba должна отправить обратно после
данные в первой группе сопоставлены.В этом случае вы видите
%на. Этот ответ на самом деле состоит из двух пунктов:
переменная% o представляет старый пароль, а
\ n — это символ новой строки. Итак, по сути, это
«наберет» старый пароль в
стандартный ввод программы смены пароля, а затем
«нажмите Ввод.

Далее следует другая группа ответов, за которой следуют данные, которые
будет отправлен обратно в программу смены пароля. (На самом деле это
шаблон ответа / отправки продолжается бесконечно в любом стандартном Unix
чат скрипт.) Скрипт продолжается до тех пор, пока
окончательный образец совпадает.

Вы можете помочь сопоставить строки ответа, отправленные с паролем
программа с символами, перечисленными в Таблице 9-6.
Кроме того, вы можете использовать символы, перечисленные в Таблице 9-7, чтобы сформулировать свой ответ.

Таблица 9-6. Пароль ответных символов чата

Персонаж

Определение

*

Ноль или более появлений любого символа.

«»

Позволяет включать совпадающие строки, содержащие пробелы. Звездочки
по-прежнему считаются подстановочными знаками даже внутри кавычек, и вы можете
представляют собой нулевой ответ с пустыми кавычками.

Таблица 9-7. Пароль чата отправить символы

Персонаж

Определение

% о

Старый пароль пользователя

% п

Новый пароль пользователя

\ п

Символ перевода строки

\ r

Символ возврата каретки

\ т

Символ табуляции

\ с

Помещение

Например, вы можете изменить свой пароль в чате на
следующая запись.Это обрабатывает сценарии, в которых вам не нужно
введите старый пароль. Кроме того, это также относится к новым
все жетоны
успешно обновлена ​​строка
что Red Hat Linux отправляет:

 passwd chat = * Новый пароль *% n \ n * новый пароль *% n \ n * успешно * 

Опять же, для многих систем Unix должно хватить чата по умолчанию.
Если это не так, вы можете использовать
passwd чат
глобальная опция отладки для настройки нового скрипта чата
для программы смены пароля. Пароль
журналы параметров отладки чата
все во время парольного чата.Это простой логический вариант,
как показано здесь:

 [весь мир]
    синхронизация паролей unix = да
    passwd chat debug = yes
    уровень журнала = 100 

После активации функции отладки чата с паролем все операции ввода-вывода
Samba через чат паролей можно отправить на
log.smbd Файл журнала Samba с уровнем отладки
100, поэтому мы ввели новый журнал
вариант уровня. Поскольку это часто может генерировать
множество журналов ошибок, может быть более эффективно использовать свои собственные
скрипт — установив пароль
опция программы — вместо
/ bin / passwd , чтобы записать, что происходит во время
обмен.Будьте осторожны, потому что файл журнала содержит пароли в
простой текст. Хранение файлов, содержащих пароли в виде простого текста, может (или
должен ) противоречить локальной политике безопасности в вашем
организации, а также может вызвать серьезные юридические вопросы. Убеждаться
для защиты файлов журнала с помощью строгих разрешений на доступ к файлам и удаления
их, как только вы схватили информацию, которую вы
нужно. Если возможно, используйте пароль
опция отладки чата только пока
ваш собственный пароль меняется.

Операционная система, в которой работает Samba, может иметь строгие
требования к действующим паролям, чтобы сделать их более невосприимчивыми к
словарные атаки и тому подобное.Пользователи должны знать об этих
ограничения при смене паролей.

Ранее мы говорили, что синхронизация паролей ограничена. Это
потому что нет обратной синхронизации зашифрованных
smbpasswd файл, когда стандартный пароль Unix
обновлено пользователем. Есть разные способы обойти это,
включая NIS и свободно доступные реализации Pluggable
Стандартные модули аутентификации (PAM), но ни один из них на самом деле не решает
все проблемы.

Более подробную информацию о паролях можно найти в Samba.
исходный файл дистрибутива
документы / htmldocs / ENCRYPTION.html .

Параметры конфигурации пароля

Параметры в Таблице 9-8 помогут вам работать с паролями в Samba.

Таблица 9-8. Параметры конфигурации пароля

Опция

Параметры

Функция

По умолчанию

Область применения

шифровать пароли

логический

Если да, включает зашифрованные пароли.

Глобальный

синхронизация паролей unix

логический

Если да, обновляет стандартный пароль Unix.
база данных, когда пользователь меняет свой зашифрованный пароль.

Глобальный

пароль чата

строка (команды чата)

Последовательность команд, отправленных программе паролей.

См. Предыдущий раздел об этой опции

Глобальный

отладка чата passwd

логический

Если да, отправляет журналы отладки смены пароля.
в файлы журнала с уровнем 100.

Глобальный

программа passwd

строка (команда Unix)

Программа для смены паролей.

/ bin / passwd% u

Глобальный

уровень пароля

числовой

Число попыток перестановок заглавных букв при сопоставлении
пароль клиента.

Нет

Глобальный

обновление зашифровано

логический

Если да, обновляет файл зашифрованных паролей, когда
клиент подключается к общему ресурсу с помощью обычного текстового пароля.

Глобальный

пустых паролей

логический

Если да, разрешает доступ для пользователей с нулевым значением
пароли.

Глобальный

файл пароля smb

строка (имя файла)

Имя зашифрованного файла паролей.

/ usr / местный / самба / частный / smbpasswd

Глобальный

хостов эквивалент

строка (имя файла)

Имя файла, содержащего хосты и пользователей, которые могут подключаться без
используя пароль.

Нет

Глобальный

используйте rhosts

строка (имя файла)

Имя а. rhosts файл, который позволяет пользователям
подключиться без пароля.

Нет

Глобальный

зашифровать пароли

Шифрование
глобальная опция паролей отключает Samba от использования
простые текстовые пароли к зашифрованным паролям для аутентификации.Зашифрованные пароли будут ожидаться от клиентов, если опция
установить на да:

 шифровать пароли = да 

В версиях Samba 2.2.x и в предыдущих версиях зашифровано
пароли по умолчанию отключены. Это было изменено в Samba 3.0 на
включить шифрование паролей по умолчанию.

Если вы используете зашифрованные пароли, у вас должен быть действующий
smbpasswd файл на месте и заполнен
имена пользователей, которые аутентифицируются с помощью зашифрованных паролей.(См. Раздел 9.4.2 ранее в
в этой главе.) Кроме того, Samba должна знать расположение
smbpasswd файл; если это не по умолчанию
местоположение (обычно
/ usr / local / samba / private / smbpasswd ), вы можете
явно назовите его, используя smb
параметр файла passwd.

При желании можно использовать обновление
зашифрован, чтобы Samba обновила
smbpasswd файл с зашифрованными паролями каждый
время, когда клиент подключается с использованием незашифрованного пароля.

Если в вашей сети несколько клиентов, некоторые из них
используя зашифрованные пароли и другие пароли, использующие простой текст, вы
можно использовать параметр include, чтобы заставить Samba лечить
каждому клиенту соответственно.Для этого создайте индивидуальный
файлы конфигурации на основе имени клиента (% m).
Эти файлы конфигурации для конкретного хоста могут содержать
зашифрованные пароли
= да опция, которая активирует
только когда эти клиенты подключаются к серверу.

синхронизация паролей unix

Пароль unix
глобальная опция синхронизации позволяет Samba обновлять
стандартный файл паролей Unix, когда пользователь меняет его зашифрованный
пароль. Зашифрованный пароль хранится на сервере Samba в
smbpasswd файл, который по умолчанию находится в
/ usr / local / samba / private .Вы можете активировать это
функция следующим образом:

 [весь мир]
    синхронизация паролей unix = да 

Если эта опция включена, Samba изменяет зашифрованный пароль и,
кроме того, пытается изменить стандартный пароль Unix, передавая
имя пользователя и новый пароль к программе, указанные
опция программы passwd
(описано ранее). Обратите внимание, что Samba не обязательно имеет доступ
на обычный текстовый пароль для этого пользователя, поэтому при изменении пароля
программа должна быть вызвана как root.[2] Если изменение пароля Unix не выполняется
успешно, по какой-либо причине, пароль SMB также не изменился.

passwd чат

Этот параметр определяет последовательность строк отправки / ответа, аналогичных
Скрипт чата Unix, который взаимодействует с программой смены пароля
на сервере Samba. Раздел 9.4.3 ранее в этом
в главе подробно рассматривается этот вариант.

отладка чата passwd

Если установлено «Да»,
passwd чат
глобальная опция отладки регистрирует все отправленное или
полученные Samba во время чата с паролями.Все операции ввода-вывода, полученные от
Samba через чат паролей отправляется в журналы Samba с
уровень отладки 100; необходимо указать журнал
level = 100
для записи информации. Раздел 9.4.3 ранее в этом
Глава описывает эту опцию более подробно. Имейте в виду, что если вы это сделаете
установите эту опцию, пароли в виде обычного текста будут видны в
журналы отладки, которые могут быть угрозой безопасности, если они не
надежно закреплен. Это противоречит политике безопасности некоторых
организации для системных администраторов, чтобы иметь доступ к
пароли пользователей.

программа passwd

пароль
опция программы указывает программу на Unix
Сервер Samba, который Samba может использовать для обновления стандартной системы
файл паролей при обновлении зашифрованного файла паролей. Этот
опция по умолчанию — стандартная программа passwd ,
обычно находится в каталоге / bin . В
Переменная% u обычно используется как запрашивающая
пользователь при выполнении команды. Фактическая обработка ввода и
вывод в эту программу во время выполнения обрабатывается через
опция чата passwd.Раздел 9.4.3 ранее в этом
в главе подробно рассматривается этот вариант.

уровень пароля

При использовании SMB незашифрованные (или текстовые) пароли отправляются с
заглавные буквы, как и имена пользователей, упомянутые ранее. Многие
Однако пользователи Unix выбирают пароли как в верхнем, так и в нижнем регистре.
буквы. Samba по умолчанию пытается только подобрать пароль
полностью строчными буквами и без заглавной буквы.

Как и уровень имени пользователя,
опция уровня пароля может быть
используется для различных перестановок пароля с большой буквы
буквы.Эта опция принимает целочисленное значение, указывающее, сколько
буквы в пароле должны быть заглавными при попытке
подключиться к общему ресурсу. Вы можете указать эту опцию следующим образом:

 [весь мир]
    уровень пароля = 3 

В этом случае Samba пытается выполнить все перестановки пароля.
может вычислить наличие трех заглавных букв. Чем больше число, тем
больше вычислений, которые Samba должна выполнить, чтобы сопоставить пароль, и
может потребоваться больше времени для подключения к определенному общему ресурсу.

зашифрованное обновление

Для сайтов, переходящих на формат зашифрованных паролей, Samba
предоставляет вариант, который должен помочь с переходом. В
опция зашифрованного обновления позволяет
сайт, на котором можно легко использовать зашифрованные пароли из обычного текста
пароли. Вы можете активировать эту опцию следующим образом:

 [весь мир]
    обновить зашифрованный = да 

Указывает Samba на создание зашифрованной версии каждого
пароль пользователя Unix в
smbpasswd файл каждый раз, когда она подключается к
Поделиться.Когда эта опция включена, у вас должен быть
опция шифрования паролей установлена ​​на
нет, чтобы клиент передавал пароли в виде простого текста
в Samba для обновления файлов. После того, как каждый пользователь подключился хотя бы
один раз вы можете установить зашифрованный
пароли =
да, позволяя использовать только зашифрованные
пароли. У пользователя уже должна быть действующая запись в
smbpasswd , чтобы эта опция работала.

пустых паролей

Этот глобальный параметр сообщает Samba, разрешать ли доступ пользователям.
которые имеют пустые пароли (зашифрованные или незашифрованные), установленные в их
учетные записи.Значение по умолчанию — нет. Ты можешь
замените его следующим образом:

 пустых паролей = да 

Мы настоятельно не рекомендуем этого делать из-за угроз безопасности.
эта опция может представить вашей системе, в том числе непреднамеренный доступ
системным пользователям (например, bin) в системе
файл паролей, для которых установлены пустые пароли.

файл пароля smb

Этот глобальный параметр определяет расположение зашифрованного пароля.
база данных. По умолчанию установлено значение
/ usr / местные / самба / частный / smbpasswd .Ты можешь
замените его следующим образом:

 [весь мир]
    файл пароля smb = / etc / samba / smbpasswd 

Это расположение, например, часто встречается во многих дистрибутивах Red Hat.
на котором установлена ​​Samba с помощью пакета RPM.

эквивалента хостов

Этот глобальный параметр определяет имя стандартного Unix
hosts.equiv , который позволяет хостам или пользователям
доступ к общим ресурсам без указания пароля. Вы можете указать
расположение такого файла:

 [весь мир]
    хосты эквивалент = / etc / hosts.экв 

Значение по умолчанию для этой опции не указывает
файл hosts.equiv . Поскольку использование
hosts.equiv файл представляет собой огромную угрозу безопасности, мы
настоятельно не рекомендую использовать эту опцию.

используйте rhosts

Этот глобальный параметр определяет имя стандартного Unix
.rhosts пользователя, который позволяет
внешние хосты для доступа к общим ресурсам без указания пароля. Ты можешь
укажите расположение такого файла следующим образом:

 [весь мир]
    используйте rhosts = / home / dave /.Rhosts 

Значение по умолчанию для этой опции не указывает
.rhosts файл. Как хозяева
эквивалентный вариант, обсуждавшийся ранее, с использованием такого файла
представляет собой угрозу безопасности. Мы настоятельно рекомендуем вам не использовать это
вариант, если вы не уверены в безопасности своей сети.

Аутентификация с помощью winbind

В главе 3 мы
показал вам, как добавить клиентов Windows в сеть, в которой пользователь
учетные записи поддерживались на сервере Samba.Мы добавили учетную запись пользователя
клиенту Windows, используя то же имя пользователя и пароль, что и
аккаунт в системе Unix. Этот метод хорошо работает во многих вычислительных системах.
среды. Однако, если сервер Samba добавлен в Windows
сеть, в которой уже есть основной контроллер домена Windows NT / 2000,
PDC имеет уже существующую базу данных учетных записей пользователей и групп
информация, которая используется для аутентификации. Это может быть большой задачей
передать эту базу данных вручную на сервер Unix, а затем
поддерживать и синхронизировать базы данных Unix и Windows.

В главе 4 мы показали вам, как добавить Samba
сервер в качестве рядового сервера домена в сети, имеющей Windows
Основной контроллер домена NT / 2000. Устанавливаем безопасность
= домен в Samba
файл конфигурации, чтобы сервер Samba передавал аутентификацию
в Windows PDC. Используя этот метод, пароли хранятся только на
PDC, но все же необходимо настроить учетные записи пользователей в Unix
сторона, чтобы убедиться, что у каждого клиента есть действительный UID Unix и идентификатор группы
(GID). Это необходимо для сохранения прав собственности на файлы и
разрешения модели безопасности Unix.Всякий раз, когда Samba выполняет
операции с файловой системой Unix от имени клиента Windows,
пользователь должен иметь действительный UID и GID в локальной системе Unix.

Средство winbind, недавно добавленное в Samba, позволяет
Windows PDC для обработки
не только аутентификация, но и информация о пользователях и группах.
Winbind расширяет пользовательские и групповые базы данных Unix за пределы
стандартный / etc / passwd и
/ etc / group , чтобы пользователи и группы
Windows PDC также существует как действительные пользователи и группы в Unix
система.Расширение применяется ко всей системе Unix и позволяет
пользователи, которые являются членами домена Windows, для выполнения любых действий с
систему Unix, которую будет использовать локальный пользователь, включая вход в систему
Система Unix через telnet или даже на локальном
system, используя свои доменные имена пользователей и пароли.

Когда используется winbind, можно управлять учетными записями пользователей.
на Windows PDC, без необходимости повторять задачи на Unix
боковая сторона. Это включает в себя истечение срока действия пароля и разрешение пользователям изменять
их пароли, которые иначе были бы непрактичными.Помимо
упрощение администрирования домена и отличная экономия времени,
winbind позволяет использовать Samba в вычислительных средах, где она
иначе не могло быть позволено.

ПРЕДУПРЕЖДЕНИЕ

Поскольку это глава о безопасности, мы хотим отметить, что некоторые
проблемы могут быть связаны с разрешением системе Windows аутентифицировать
пользователи, обращающиеся к системе Unix! Что бы вы ни думали о
относительные достоинства моделей безопасности Unix и Windows (и даже больше
главное, их реализации ), одно
уверен: добавление поддержки winbind на ваш сервер Samba значительно
усложняет систему аутентификации в целом — и довольно
возможно дает больше возможностей для взломщиков.

Мы представляем winbind в этой главе не как средство улучшения
безопасности, а скорее как еще один пример Samba
способность интегрироваться в современную среду Windows.

Установка winbind

Установка
и настройка winbind довольно сложна и включает в себя
следующие шаги:

  1. Перенастройте, перекомпилируйте и переустановите Samba — чтобы добавить поддержку
    Winbind.

  2. Настройте коммутатор сервера имен Unix.

  3. Измените файл конфигурации Samba.

  4. Запустите и протестируйте демон winbindd .

  5. Настройте систему для запуска и остановки
    winbindd демон автоматически.

  6. При необходимости настройте PAM для использования с winbind.

На момент написания этой книги winbind поддерживался только на
Linux, поэтому для него характерны все следующие направления. Другой
Варианты Unix могут поддерживаться позже.Кроме того, мы
предположим, что у вас работает основной контроллер домена Windows NT / 2000
в вашей сети.

Во-первых, вам необходимо настроить и скомпилировать Samba с помощью
—with-winbind параметр конфигурации. Направления для
это описано в главе 2 раздела 2.3. Как обычно, беги
make install для переустановки двоичных файлов Samba.

Настройка nsswitch

Когда
Samba компилируется после настройки с
—with-winbind, процесс компиляции
создает библиотеку под названием
libnss_winbind.так в
source / nsswitch каталог. Эта библиотека должна
скопировать в каталог / lib :

 #  cp nsswitch / libnss_winbind.so / lib  

Также должна быть создана символическая ссылка, чтобы winbind был полностью
функциональный:

 #  ln -s /lib/libnss_winbind.so /lib/libnss_winbind.so.2  
НАКОНЕЧНИК

Имя этой символической ссылки верно для Samba 2.2.3 и Red Hat.
7.1. Название может измениться — с более высоким номером версии в
extension — в будущих выпусках. Увидеть
Справочная страница winbindd для подробностей.

Затем нам нужно изменить /etc/nsswitch.conf на
сделайте строки для passwd и
группа выглядит так:

 passwd: файлы winbind
группа: файлы winbind 

Затем активируйте эти изменения, введя следующую команду:

 #  / sbin / ldconfig  

Мы только что перенастроили имя Linux.
сервисный переключатель, который позволяет использовать сервис имен и другие задачи.
настроен на использование традиционного метода (файлы в
/ etc ) или расширение, закодированное в
библиотека, например, libnss_winbind.библиотека so
мы только что установили. У нас есть
в нашей конфигурации указано, что Samba будет искать пользователя и
информация группы сначала в файле / etc / passwd и
/ etc / group files , и если они не найдены
там, в сервисе winbind.

Изменение smb.conf

Для использования winbind у нас должна быть Samba
сервер добавлен в домен Windows NT как рядовой сервер домена (как
мы описали в главе 4), а также добавили несколько
параметры в файл конфигурации Samba для настройки winbind.В
дополнение к параметрам, необходимым для настройки Samba как домена
рядовой сервер, нам нужно:

 [весь мир]
    winbind uid = 10000-20000
    winbind gid = 10000-20000 

uid winbind и
Параметры winbind gid говорят
winbind, как сопоставить относительные идентификаторы Windows (RID) и
Unix UID и GID. Windows использует идентификаторы RID для идентификации пользователей и групп.
внутри домена, и для функционирования система Unix должна иметь UID
и GID, связанный с каждым полученным RID пользователя и группы.
с основного контроллера домена Windows.В
winbind uid и
параметры winbind gid просто
предоставить winbind ряд UID и GID, соответственно,
выделяется системным администратором для пользователей домена Windows NT и
группы. Вы можете использовать любой диапазон для каждого; просто убедитесь
наименьшее число в диапазоне не противоречит никаким записям в
ваш / etc / passwd или
/ etc / group файлов в любое время, сейчас или в
будущее. В этом отношении важно быть консервативным. Один раз
winbind добавляет RID к отображению UID / GID в свою базу данных, это очень
сложно изменить отображение.

ПРЕДУПРЕЖДЕНИЕ

Файл
/usr/local/samba/locks/winbindd_idmap.tdb
по умолчанию содержит файл сопоставления RID winbind. Мы
предлагаем вам рассматривать этот файл как чрезвычайно конфиденциальный и обязательно
тщательно оберегайте его от любого повреждения или потери. Если ты его потеряешь,
вам придется воссоздать его вручную, что может быть очень
трудоемкая задача.

ПРЕДУПРЕЖДЕНИЕ

Будьте осторожны при добавлении локальных пользователей после запуска пользователей домена
доступ к серверу Samba.У пользователей домена будут записи
создан для них с помощью winbind в / etc / passwd, с
UID в указанном вами диапазоне. Если вы используете метод создания
новые учетные записи, которые автоматически назначают UID, он может выбирать UID по
добавление 1 к наивысшему UID, назначенному на данный момент, что будет наиболее
последний UID, добавленный winbind. (Так обстоит дело с Red Hat Linux, с
сценарий useradd , например.) UID для
новый локальный пользователь будет в пределах диапазона, выделенного для winbind,
что будет иметь нежелательные эффекты.Не забудьте добавить новых локальных пользователей
используя метод, который присваивает им UID в правильном диапазоне. Для
Например, вы можете использовать опцию -u для
useradd , чтобы указать UID для назначения новому
Пользователь.

Перезапустите демоны Samba, чтобы внести изменения в конфигурацию.
файл вступает в силу. Если вы еще не сделали этого при добавлении
Сервер Samba в качестве рядового сервера домена необходимо ввести команду:

 #  smbpasswd -j   домен   -r   pdc   -U Администратор  

, как мы описали в главе 4.На данный момент вы
может запустить демон winbindd :

 #  winbindd  

Возможно, вы захотите
запустите команду ps ax , чтобы увидеть, что
winbindd Демон запущен. Теперь, чтобы убедиться
все, что мы сделали до этого момента, работает, мы можем
используйте команду Samba wbinfo :

 $  wbinfo -u 
МЕТРАН \ Администратор
МЕТРАН \ bebe
МЕТРАН \ Гость
МЕТРАН \ Джей
МЕТРАН \ Линда
$  wbinfo -g 
МЕТРАН \ Администраторы домена
МЕТРАН \ Гости домена
МЕТРАН \ Пользователи домена 

Параметр -u запрашивает у контроллера домена
список пользователей домена, а опция -g запрашивает
для списка групп.Вывод показывает, что хост-система Samba
может запросить Windows PDC через winbind.

Еще нужно проверить список пользователей и групп, используя
getent команда:

 #  getent passwd 
корень: x: 0: 0: корень: / корень: / bin / bash
bin: x: 1: 1: bin: / bin:
демон: x: 2: 2: демон: / sbin:
      ... удалено ... 
сойка: х: 500: 500: Джей Ц: / дом / сойка: / бен / баш
рик: х: 501: 501 :: / дома / рик: / бен / баш
МЕТРАН \ Администратор: x: 10000: 10000 :: / home / МЕТРАН / администратор: / bin / bash
МЕТРАН \ bebe: x: 10001: 10000: Bebe Larta: / home / METRAN / bebe: / bin / bash
МЕТРАН \ Гость: x: 10002: 10000 :: / главная / МЕТРАН / гость: / bin / bash
METRAN \ jay: x: 10003: 10000: Джей Ц: / home / METRAN / jay: / bin / bash
METRAN \ linda: x: 10004: 10000: Линда Льюис: / home / METRAN / linda: / bin / bash

# getent group
корень: x: 0: корень
bin: x: 1: корень, bin, демон
демон: x: 2: корень, bin, демон
     ... удалено ... 
Джей: х: 500:
rik: x: 501:
МЕТРАН \ Администраторы домена: x: 10001: МЕТРАН \ Администратор
МЕТРАН \ Гость домена: x: 10002: МЕТРАН \ Гость
METRAN \ Пользователи домена: x: 10000: METRAN \ Administrator, METRAN \ jay, METRAN \ linda, METRAN \ bebe 

Это показывает, что система Linux находит пользователей домена и
группы через winbind, в дополнение к тем, что в
/ etc / passwd и / etc / group
файлы. Если эта часть не работает, как показано ранее,
с пользователями и группами домена, перечисленными после локальных, отметьте
чтобы убедиться, что вы сделали символическую ссылку на
libnss_winbind.поэтому в / lib
правильно.

Теперь вы можете попробовать подключиться к общему ресурсу Samba из системы Windows.
с использованием учетной записи домена. Вы можете войти в домен из
Рабочая станция Windows NT / 2000 / XP или используйте smbclient
с опцией -U для указания имени пользователя.

ПРИМЕЧАНИЕ

Если вы получаете ошибки при попытке входа в домен, это
возможно, потому что вы ранее настроили клиентскую систему с
учетная запись компьютера на другом контроллере домена.Обычно вы получаете
диалоговое окно с надписью «Домен
NAME недоступен. »
В системе Windows 2000 исправление состоит в том, чтобы войти в систему как
пользователь с правами администратора и откройте Панель управления, дважды щелкните значок
Значок системы, щелкните вкладку «Сетевая идентификация», затем щелкните значок
Кнопка «Свойства». В появившемся диалоговом окне нажмите кнопку
«Рабочая группа:» переключатель и заполните
в имени рабочей группы (вы можете использовать то же имя, что и
домен). Нажмите кнопки ОК в диалоговых окнах и перезагрузитесь, если
просил.

Это удаляет учетную запись компьютера с основного контроллера домена.
Теперь снова войдите в систему как административный пользователь и повторите предыдущее.
направления, но переключитесь из рабочей группы обратно в домен. Этот
создает новую учетную запись компьютера, которая
«подгоняет» рабочую станцию ​​к новой
основной контроллер домена. Если в вашей сети есть резервный домен
контроллеры, установка нового компьютера займет до 15 минут
аккаунт для распространения на BDC.

Если вы используете Windows NT / XP, метод немного отличается.Для
точную процедуру см. в разделе в главе 4
это относится к вашей версии Windows.

После входа в систему в качестве пользователя домена попробуйте создать один или два файла в
Samba поделитесь. (Возможно, вам потребуется изменить разрешения для общего
каталог — скажем, на 777 — чтобы разрешить этот доступ. Это очень
разрешительный, но после того, как вы дочитаете этот раздел, вы
понять, как изменить владельца и права доступа к каталогу
чтобы ограничить доступ для выбранных пользователей домена.) После
вы создали файлы одним или несколькими пользователями домена,
взгляните на содержимое каталога из Linux
оболочка.Вы увидите что-то вроде этого:

 $  LS-L / U 
-rwxrw-rw- 1 МЕТРАН \ b МЕТРАН \ D 0 13 апр, 00:00 bebes-file.doc
-rwxrw-rw- 1 МЕТРАН \ l МЕТРАН \ D 0 12 апреля 23:58 lindas-file.doc
drwxrwxr-x 6 джей джей 4096 15 января 05:12 snd
  $ ls -ln / u 
всего 4
-rwxrw-rw- 1 10001 10000 0 13 апреля 00:00 bebes-file.doc
-rwxrw-rw- 1 10004 10000 0 12 апреля 23:58 lindas-file.doc
drwxrwxr-x 6 500 500 4096 15 января 05:12 snd 

Мы даже можем использовать доменные имена пользователей и группы из оболочки Linux:

 #  chown 'METRAN \ linda: METRAN \ Domain Users' / u 
#  ls -ldu / u 
drwxrwxrwx 3 METRAN \ l METRAN \ D 4096 13 апр, 00:44 / u
#  ls -ldn / u 
drwxrwxrwx 3 10004 10000 4096 13 апр, 00:00 / u 

Обратите внимание, как владелец и группа перечислены как принадлежащие
пользователь домена и группа.К сожалению, GNU ls
команда не будет отображать полные имена домена
пользователей и групп, но мы можем использовать список -ln
чтобы показать UID и GID, а затем перевести с
wbinfo команда:

 $  wbinfo -s `wbinfo -U 10004` 
МЕТРАН \ ЛИНДА 1
$  wbinfo -s `wbinfo -G 10000` 
МЕТРАН \ Пользователи домена 2 

(Это немного беспорядочно, но работает, и это показывает, что
система winbind работает!) На этом этапе вы можете захотеть
измените ваш / etc / rc.d / init.d / smb скрипт для запуска
и автоматически остановит демон winbindd
с smbd и nmbd
демоны. Начиная со сценария, представленного в главе 2, мы сначала добавляем этот код в
start () функция:

 echo -n $ "Запуск служб WINBIND:"
/ USR / местные / самба / бен / Winbindd
ОШИБКА2 = $?
если [$ ERROR2 -ne 0]
тогда
    ОШИБКА = 1
фи
эхо 

Предыдущий код должен быть расположен после кода, который запускает
nmbd и до возврата
утверждение.

НАКОНЕЧНИК

Запускаем winbindd после
nmbd , потому что winbindd требует
nmbd для правильной работы.

В функцию stop () добавляем следующее:

 echo -n $ "Завершение работы служб WINBIND:"
/ bin / kill -TERM -a winbindd
ОШИБКА2 = $?
если [$ ERROR2 -ne 0]
тогда
    ОШИБКА = 1
фи
эхо 

Опять же, этот код должен быть расположен после кода, который останавливает
nmbd и до возврата
утверждение.

Настройка PAM

Мост
популярные дистрибутивы Linux используют Pluggable
Модули аутентификации (PAM), набор разделяемых библиотек, которые
предоставить централизованный источник аутентификации для приложений
работает в системе Unix. PAM можно настроить по-разному для
каждое приложение (или сервис), которое его использует, без необходимости
перекомпилируйте приложение. В качестве гипотетического примера, если
политика безопасности организации требует использования
пароли длиной ровно 10 символов, модуль PAM может быть
написано для проверки длины паролей, отправленных пользователями, и
отклонять любые попытки использовать более длинный или короткий пароль.PAM будет
затем перенастроить, чтобы включить новый модуль для таких сервисов, как
ftp , вход в консоль и вход в графический интерфейс, которые вызывают
PAM для аутентификации пользователей.

Если вы еще не знакомы с PAM, мы предлагаем вам прочитать
документацию, поставляемую с пакетом Linux PAM, прежде чем продолжить.
В большинстве систем Linux он находится в
/ usr / share / doc иерархия каталогов. Другой
ресурс — это система Linux-PAM
Администратора
Справочник
, который вы можете найти
в Интернете по адресу http: // www.kernel.org/pub/linux/libs/pam.

Остальная часть этого раздела посвящена использованию модуля PAM, представленного в
дистрибутив Samba, чтобы пользователи домена Windows могли аутентифицироваться
в системе Linux, на которой размещена Samba. В зависимости от того, какие услуги вы
выберите настройку, это позволяет пользователям домена Windows входить в систему
локальной консоли (или через telnet ), войдите в
Рабочий стол с графическим интерфейсом пользователя в системе Linux, аутентификация на FTP-сервере
работает в системе Linux, или использовать другие службы, обычно ограниченные
пользователям, у которых есть учетная запись в системе Linux.Модуль PAM
аутентифицирует пользователей домена Windows, запрашивая winbind, который проходит
отключение проверки подлинности на контроллере домена Windows NT.

В качестве примера мы покажем, как разрешить пользователям домена Windows регистрироваться
в текстовую консоль в системе Linux и получите командную оболочку и
домашний каталог. Метод, использованный в нашем примере, может быть применен (с
вариации) к другим сервисам.

Всем пользователям, которые могут войти в систему Linux, нужна оболочка и дом
каталог. Unix и Linux хранят эту информацию о пользователе в пароле.
файл ( / etc / passwd ), но информация о
Пользователи Windows там не находятся.Вместо этого в
Файл конфигурации Samba, мы добавляем следующее, чтобы уведомить winbind о том, что
оболочка и домашний каталог для пользователей домена Windows будут:

 [весь мир]
    шаблон оболочки = / bin / bash
    шаблон homedir = / home /% D /% U 

Первая строка устанавливает
шаблон оболочки
параметр, который сообщает winbind, какую оболочку использовать для пользователей домена
которые входят в систему на хосте Unix. В
шаблон
Параметр homedir указывает расположение
домашние каталоги пользователей. % D
переменная заменяется именем домена, в котором
учетная запись пользователя находится, а% U
заменяется именем пользователя в этом домене.

Прежде чем пользователи домена смогут успешно войти в систему, их домашняя
каталоги нужно создавать вручную. Чтобы добавить одну учетную запись для
linda в домене METRAN, мы будем использовать эти
команды:

 #  мкдир / главная / МЕТРАН 
#  chmod 755 / home / МЕТРАН 

#  мкдир / home / METRAN / linda 
#  chown 'METRAN \ linda: METRAN \ Domain Users' / home / METRAN / linda 
#  chmod 700 / home / METRAN / linda  
ПРЕДУПРЕЖДЕНИЕ

Одним из побочных эффектов создания домашних каталогов является то, что если Samba
сервер настроен с общим ресурсом [homes],
пользователи домена могут видеть и получать доступ к своим домашним каталогам через
Обмен файлами Samba.

Далее нам нужно скомпилировать и установить модуль PAM в Samba.
распределение. Из исходного каталога в дистрибутиве Samba,
введите следующие команды:

 #  сделать nsswitch / pam_winbind.so 
#  cp nsswitch / pam_winbind.so / lib / security  

и убедитесь, что он был скопирован правильно:

 #  ls /lib/security/pam_winbind.so 
/lib/security/pam_winbind.so 

В Red Hat Linux файлы конфигурации PAM находятся в
/ etc / pam.d . Прежде чем вносить какие-либо изменения, мы
настоятельно рекомендую сделать резервную копию этого каталога:

 # cp -pR /etc/pam.d /etc/pam.d.backup 

Причина в том, что мы будем модифицировать Linux
средства аутентификации входа в систему, и если наш
конфигурация идет наперекосяк, все пользователи (включая
root) будет заблокирован из системы. В случае
в худшем случае мы перезагрузимся в однопользовательский режим (набрав
linux на LILO:
приглашение) или загрузите аварийный диск, а затем мы выдадим эти два
команды:

 #  мв / etc / pam.d /etc/pam.d.bad 
#  mv /etc/pam.d.backup /etc/pam.d  

Будьте очень осторожны, чтобы убедиться, что вы можете исправить любые ошибки, которые вы делаете.
потому что, когда PAM встречает любую информацию о конфигурации, он
не понимает, его действие — не допускать
доступ. Это значит, что вы должны быть уверены, что все ввели правильно!
Возможно, вы захотите войти в систему как root на свободном виртуальном
терминал, пока вы изменяете конфигурацию PAM, чтобы
себе средство легкого выздоровления.

В каталоге /etc/pam.d вы найдете
файл для каждой службы, использующей PAM. Нас интересует только
файл, соответствующий службе входа в систему, которая называется
логин . Он содержит следующие строки:

 требуется авторизация /lib/security/pam_securetty.so
требуется авторизация /lib/security/pam_stack.so service = system-auth
требуется авторизация /lib/security/pam_nologin.so
требуется учетная запись / lib / security / pam_stack.так service = system-auth
требуется пароль /lib/security/pam_stack.so service = system-auth
требуется сеанс /lib/security/pam_stack.so service = system-auth
сеанс необязательный /lib/security/pam_console.so 

Строки, начинающиеся с auth, относятся к
функция аутентификации, то есть печать запроса пароля,
принятие пароля, проверка его правильности и соответствие
пользователя на действительный идентификатор пользователя и группы. Строка, начинающаяся с
учетная запись предназначена для управления учетной записью, что позволяет
доступ должен контролироваться другими факторами, например, в какое время
день, когда пользователю разрешен доступ.Нас не волнуют линии
начиная с пароля или
сеанс, потому что winbind не добавляет ни к одному из
эти функции.

В третьем столбце перечислены модули PAM, возможно, с аргументами, которые
вызывается для выполнения задания. В
pam_stack.so Модуль был добавлен Red Hat для работы
что-то вроде макроса или подпрограммы. Он вызывает файл в
pam.d каталог, названный аргументом службы.
В этом случае файл /etc/pam.d/system-auth
содержит общий набор строк, которые используются по умолчанию для многих
Сервисы.Поскольку мы хотим настроить службу входа в систему для winbind,
сначала заменяем строки pam_stack.so на
авторизация и учетная запись с
авторизация и строки аккаунта из
/etc/pam.d/system-auth . Это дает:

 требуется авторизация /lib/security/pam_securetty.so
  требуется авторизация /lib/security/pam_env.so 
  auth достаточный /lib/security/pam_unix.so likeauth nullok 
  требуется авторизация /lib/security/pam_deny.so 
требуется авторизация / lib / security / pam_nologin.так
  требуется учетная запись /lib/security/pam_unix.so 
требуется пароль /lib/security/pam_stack.so service = system-auth
требуется сеанс /lib/security/pam_stack.so service = system-auth
сеанс необязательный /lib/security/pam_console.so 

Чтобы добавить поддержку winbind, нам нужно добавить строку в оба
разделы auth и account для
позвонить в
pam_winbind.so модуль:

 требуется авторизация /lib/security/pam_securetty.so
требуется авторизация / lib / security / pam_env.так
  аутентификация достаточна /lib/security/pam_winbind.so 
достаточная авторизация /lib/security/pam_unix.so  use_first_pass  likeauth nullok
требуется авторизация /lib/security/pam_deny.so
требуется авторизация /lib/security/pam_nologin.so
  достаточно учетной записи /lib/security/pam_winbind.so 
требуется учетная запись /lib/security/pam_unix.so
требуется пароль /lib/security/pam_stack.so service = system-auth
требуется сеанс / lib / security / pam_stack.так service = system-auth
сеанс необязательный /lib/security/pam_console.so 

Требуемые ключевые слова и
во втором столбце значимы.
Обязательное ключевое слово указывает, что результат
возвращается модулем (либо пройти, либо не пройти аутентификацию)
необходимо учитывать, тогда как ключевое слово
Достаточно указывает, что если модуль
успешно аутентифицирует пользователя, дальнейшие строки не нужны
обработанный. Указав достаточно для
pam_winbind.Итак, модуль , мы позволяем winbind пытаться
аутентифицировать пользователей, и в случае успеха система PAM возвращается к
заявление. Если модуль pam_winbind.so
не находит пользователя или пароль не
совпадение, система PAM переходит к следующей строке, которая выполняет
аутентификация в соответствии с обычной аутентификацией пользователя Linux. Этот
Таким образом, как пользователи домена, так и локальные пользователи могут войти в систему.

Обратите внимание, что мы также добавили use_first_pass
аргумент модуля pam_unix.so в
раздел авторизации.По умолчанию оба
pam_winbind.so и
pam_unix.so модули печатают запрос пароля и
принять пароль. В случаях, когда пользователи входят в систему Linux
системе, используя свои локальные учетные записи, для этого потребуется ввести
свой пароль дважды. Аргумент user_first_pass
сообщает модулю pam_unix.so повторно использовать
пароль, присвоенный pam_winbind.so
модуль, в результате чего пользователям нужно вводить только пароль
однажды.

После изменения файла конфигурации для входа в систему ,
переключитесь на запасную виртуальную консоль и убедитесь, что вы все еще можете войти в систему
используя обычную учетную запись Linux.Если нет, проверьте свои модификации
внимательно и попробуйте еще раз, пока не получите все правильно. Затем войдите в систему, используя
учетную запись пользователя домена из базы данных Windows PDC, чтобы убедиться, что
Аутентификация winbind работает. Вам нужно будет указать имя пользователя
в DOMAIN \ пользователь
формат, например:

 логин: METRAN \ linda
Пароль: 

Более подробную информацию о настройке winbind можно найти в Samba.
исходный файл дистрибутива
docs / htmldocs / winbind.html , а в
Справочная страница winbindd .Если вы хотите узнать
подробнее о настройке PAM мы рекомендуем веб-страницу http://www.kernel.org/pub/linux/libs/pam/ как
отправное место. Некоторая документация для Linux PAM, включая
Расширения Red Hat также можно найти в Red Hat.
Linux в
/ usr / share / doc / pam- версия .

Параметры конфигурации winbind

В таблице 9-9 приведены некоторые часто используемые параметры.
который вы можете использовать для настройки winbind.

Таблица 9-9. параметры winbind

Опция

Параметры

Функция

По умолчанию

Область применения

разделитель winbind

строка (один символ)

Символ для использования в качестве разделителя в именах пользователей домена и именах групп

Обратная косая черта (\)

Глобальный

winbind uid

строка (числовой диапазон)

Диапазон UID для сопоставления RID-to-UID

Нет

Глобальный

winbind gid

строка (числовой диапазон)

Диапазон GID для сопоставления RID-to-GID

Нет

Глобальный

время кеширования winbind

числовой

Количество секунд кеширования демона winbindd в секундах
данные пользователя и группы

15

Глобальный

шаблон homedir

строка (имя каталога)

Каталог, который будет использоваться в качестве домашнего каталога вошедшего в систему домена
пользователь

/ home /% D /% U

Глобальный

шаблон оболочки

строка (название команды)

Программа для использования в качестве зарегистрированного пользователя домена
оболочка

/ бин / ложь

Глобальный

сепаратор winbind

В системах Windows обычно используется обратная косая черта (\).
используется в качестве разделителя в именах файлов, UNC и именах доменов.
пользователи и группы.Например, аккаунт в домене METRAN с
имя пользователя linda будет записано как
МЕТРАН \ Линда. В системах Unix обратная косая черта
обычно используется в качестве метасимвола для цитирования, поэтому учетная запись будет
должны быть указаны как METRAN \\ linda или
‘МЕТРАН \ Линда’. Параметр разделителя winbind
позволяет использовать другой символ вместо обратной косой черты
символ, что значительно упрощает ввод пользователя домена и группы
имена. Например, с:

 [весь мир]
    разделитель winbind = + 

вышеупомянутый счет можно было бы просто записать как
METRAN + linda на хосте Unix, что делает его
необязательно использовать дополнительную обратную косую черту или одинарные кавычки.Winbind
затем использует тот же формат для сообщения имен пользователей и групп домена.

winbind uid

В рамках задачи winbindd
позволяя пользователям домена Windows NT функционировать как локальные пользователи в Unix
host, winbindd предоставляет Unix UID, который
связано с Windows RID пользователя домена. В
Параметр winbind uid позволяет
системный администратор Unix, чтобы выделить диапазон UID для этого
цель. Очень важно, чтобы этот диапазон не перекрывал какие-либо UID.
используется для других целей в системе Unix, поэтому мы рекомендуем вам начать
ваш диапазон на очень большом числе, намного превышающем количество
локальные пользователи и пользователи NIS, которые когда-либо будут существовать.Например,
Winbind uid может быть определен
как:

 [весь мир]
    winbind uid = 10000-15000 

в системе, в которой никогда не будет более 9999 локальных номеров и шекелей
пользователей или, если на то пошло, любые другие записи в
/ etc / passwd , который использовал бы другой UID.
Поскольку в примере выделяется 5000 UID для
winbindd , предполагается, что будет
никогда не должно быть более 5000 пользователей домена, обращающихся к хосту Samba.

Если ваш метод добавления новых локальных пользователей в систему назначает UID
автоматически, убедитесь, что он не назначает их в диапазоне
UID, выделенные для winbind.Это могло произойти, если используемый алгоритм
добавляет 1 к наивысшему назначенному на данный момент UID.

Нет по умолчанию для winbind
uid, поэтому вы должны указать его в своей Samba
файл конфигурации для работы winbind.

winbind gid

Эта опция работает как winbind
uid, за исключением того, что он предназначен для выделения диапазона
GID для использования с winbindd . Вам может не понадобиться
выделить столько GID, сколько UID, потому что у вас, вероятно, есть относительно
несколько доменных групп, которым нужны соответствующие GID.(Во многих случаях пользователи
все являются членами группы пользователей домена, для чего требуется только один GID.)
Однако лучше перестраховаться, поэтому не забудьте выделить много
больше GID, чем вы думаете, что вам нужно.

Как и в случае с winbind uid, если вы
используя метод добавления новых локальных пользователей на ваш Unix-хост, который
автоматически назначает GID, либо убедитесь, что используемый метод
не конфликтует с winbind и не устанавливает GID
вручную.

Нет по умолчанию для winbind
gid, поэтому вы должны указать его в своей Samba
файл конфигурации для работы winbind.

winbind, время кеширования

Демон winbindd поддерживает кэш пользовательских
и группировать данные, полученные из Windows PDC, чтобы уменьшить
сетевые запросы и повышение производительности. В
кеш winbind
параметр time позволяет количество времени (в
секунд) winbindd может использовать кэшированные данные перед
запрос PDC для проверки наличия обновлений. По умолчанию этот интервал равен
установлен на 15 секунд. Это означает, что когда какая-либо часть пользователя или группы
учетная запись на PDC изменена, это может занять до 15 секунд для
winbindd для обновления собственной базы данных.

шаблон homedir

Когда локальная система Unix настроена так, чтобы пользователи домена могли регистрироваться
в, пользователю должен быть предоставлен домашний каталог для многих
программы, включая командные оболочки, для правильной работы. В
используется опция шаблона homedir
для установки имени домашнего каталога. В названии каталога
% D заменяется именем Windows NT
домен, в котором находится пользователь, и% U заменяется его
имя пользователя. По умолчанию шаблон
homedir установлен в / home /% D /% U,
который отлично работает в сети, в которой может быть более одного
Домен Windows NT, и это возможно для разных людей в
разные домены, чтобы иметь одно и то же имя пользователя.Если ты уверен, что будешь
никогда не используйте в сети более одного домена Windows NT, иначе вы
имеют более одного домена, но точно знают, что у уникальных пользователей есть
идентичные имена пользователей в каждом из нескольких доменов, вы можете предпочесть установить
шаблон homedir вот так:

 [весь мир]
    шаблон homedir = / home /% U 

шаблон оболочки

Этот параметр указывает программу, используемую в качестве оболочки для домена.
пользователи, которые вошли в систему на хосте Unix. По умолчанию установлено значение
/ bin / false , что фактически запрещает домен
пользователей для входа в систему.Если вы хотите разрешить вход для пользователей домена, установите
шаблонную оболочку в действительный
командная оболочка (или другая программа), которую вы хотите использовать в качестве текстовой
интерфейс, который пользователи домена получат при входе в систему.
настройка в Linux будет:

 [весь мир]
    шаблон оболочки = / bin / bash 

, который предоставит пользователям оболочку Bash для их интерактивного входа в систему.
сеансы.

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *