Книга: Linux глазами хакера
6.3. Управление пользователями
6.3. Управление пользователями
Для начала разберемся с именами пользователей. Для доступа к серверу Samba используются сведения из системного файла /etc/passwd. Но вы можете завести отдельные записи Samba-сервера, которые будут соответствовать реальным именам, но их можно будет использовать только для подключения к Samba, а не к системе.
Имена Samba-пользователей описываются в файле /etc/samba/smbusers, расположение и название которого могут быть изменены через директиву username map
файла smb.conf. Содержимое файла может быть таким:
# Unix_name = SMB_name1 SMB_name2
root = administrator admin
nobody = guest pcguest smbguest
У списка имен несколько предназначений. Например, с его помощью вы можете спроецировать имена, привычные для пользователей DOS и Windows, на учетные записи Linux. Например, в Windows максимальные права принадлежат пользователю Administrator, а в Linux — это root. Во второй строке приведенного выше примера устанавливается соответствие имени administrator
пользователю root
.
Второе назначение файла — аккумулировать несколько имен на одной учетной записи. Например, у вас есть группа пользователей, которым необходимо назначить одинаковые права. Для этого создаем в Linux только одну учетную запись nobody
(под ней будут работать пользователи), а в smb заводим несколько пользователей guest
, pcguest
и smbguest
(под этими именами они будут входить в систему).
Несмотря на то, что мы отразили имена пользователей administrator и admin, и это разные учетные записи, для них будет использоваться один пароль — назначенный пользователю root.
Информация о пользователях, которым разрешен доступ, хранится в файле /etc/samba/smbpasswd. Его расположение и имя могут быть изменены через директиву smb passwd
file файла smb.conf. Рассмотрим пример содержимого файла:
flenov:0:813D6593C13F1173ED93178CA975D79[UX ]:LCT-41FA818F
robert:500:813D6593C11F1173ED98178CA975D79:[UX ]:LCT-41FA818F
Сразу видно, что файл чем-то похож на /etc/passwd. Он также разделен на несколько колонок. Наиболее интересные из них первые три — имя пользователя, его UID в Linux-системе и пароль.
Но добавлять пользователей вручную не очень удобно, потому что нужно зашифровать и прописать пароль, что не так уж и просто. Чтобы облегчить задачу, в пакет Samba включена утилита smbpasswd, которая имеет следующие параметры:
? a
— добавить пользователя в Samba-систему. Учетная запись должна уже существовать в /etc/passwd. Например, давайте пропишем Роберта, с которым мы уже не раз работали:
smbpasswd -a robert
В ответ на это программа попросит вас дважды ввести пароль. Указанная вами комбинация никак не влияет на системный пароль и используется только для доступа к Samba. Таким образом, пароли могут отличаться, Я даже рекомендую сделать их различными. ОС Windows умеет запоминать пароли и хранить в своей системе, а версии Windows 9x делают это небезопасно. Если злоумышленник сможет украсть пароль на Samba, то он проникнет и в систему;
? x
— удалить пользователя. Чтобы исключить Роберта из системы, выполните команду: smbpasswd -х robert
;
? d
— деактивировать пользователя. Если необходимо временно отключить доступ для пользователя, не удаляя его из системы, выполните команду: smbpasswd -d robert
. Давайте посмотрим на строку, соответствующую Роберту. после выполнения этой команды:
robert:500:813D6593C11F1173ED98178CA975D79:[DUX ]:LCT-41FA818F
Обратите внимание, что в четвертой колонке в квадратных скобках появилась буква "D". Она как раз и указывает на то, что запись деактивирована. Таким образом, вы легко можете определить, какие записи активны, а какие нет.
? е
— активировать пользователя. С помощью этой команды можно подключить пользователя: smbpasswd -e robert
.
Дополнительные параметры этой утилиты можно увидеть в файле помощи man
.
Напоминаю, что файл /etc/samba/smbpasswd используется, если пароли передаются по сети в зашифрованном виде. В этом случае, чтобы предоставить доступ к Samba всем пользователям системы, необходимо для каждого выполнить команду smbpasswd
. Есть сценарии, которые автоматизируют работу, но их использование не очень эффективно, потому что они не задают пароля и, чаще всего, перетаскивают всех пользователей, даже тех, кто не должен иметь доступ в систему. К таким пользователям относятся системные учетные записи типа bin, adm, daemon и др.
- 4.3. Управление пользователями
- Получайте обратную связь из тестирования с пользователями и заказчиками
- Управление файлами и каталогами
- Управление пользователями и средства безопасности с помощью программы SQL Server Enterprise Manager
- Глава 6. Управление пакетами: репозитории
- Управление пользователями и разрешениями узла
- 8.7. Центральное управление пользователями
- 8.7.4. Управление пользователями в CUA
- 21.7.2. Управление пользователями
- 1.5.1 Управление пользователями