Михаил Флёнов - Linux глазами хакера
- Название:Linux глазами хакера
- Автор:
- Жанр:
- Издательство:БХВ-Петербург
- Год:2005
- Город:Санкт-Петербург
- ISBN:5-94157-635-8
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Михаил Флёнов - Linux глазами хакера краткое содержание
Рассмотрены вопросы настройки ОС Linux на максимальную производительность и безопасность. Описаны потенциальные уязвимости и рекомендации по предотвращению возможных атак. Дается подробное описание настройки прав доступа и конфигурирования сетевого экрана. Показано, как действовать при атаке или взломе системы, чтобы максимально быстро восстановить ее работоспособность и предотвратить потерю данных.
Для пользователей, администраторов и специалистов по безопасности
Linux глазами хакера - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:
6.2.5. Личные директории
Все разделы, которые мы рассматривали выше, имеют устоявшиеся имена и предназначены для решения определенных задач. Но в некоторых случаях вы можете изменить имя раздела, и на работе сервера это не скажется. Но я не рекомендую этого делать, потому что в одной версии Samba все будет работать хорошо, а при обновлении программ сервера все может измениться, и потом трудно будет найти ошибку, благодаря которой Samba работает неверно.
Но вы можете создавать собственные разделы, в которых будете описывать права. Например, вы можете захотеть организовать общую директорию, в которой файлы будут доступны всем пользователям, но записывать могут только члены определенной группы. Допустим, что в этом каталоге должны храниться какие-то картинки. Для решения этой задачи можно создать раздел
[shareimages]
следующим образом:
;[shareimages]
; comment = Share Images
; path = /home/samba/images
; public = yes
; writable = yes
; write list = @staff
; printable = no
Для данного раздела задаются следующие директивы:
□
path = /home/samba/images
— директория, которую мы хотим открыть;
□
public = yes
— признак доступности;
□
writable = yes
— запись в каталог разрешена;
□
write list = @staff
— определяет группу staff
, которая может записывать в файл. Для всех остальных директория открыта только для чтения.
В таких объявлениях директорий можно описывать любые директивы, которые мы рассматривали в данной главе.
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 9 x делают это небезопасно. Если злоумышленник сможет украсть пароль на 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 и др.
6.4. Использования Samba
Сервис Samba в основном создавался для пользователей Windows, но и поклонники Linux тоже оценили все преимущества этой технологии, тем более что Linux выполнила задачу разделения файлов по сети не хуже Windows, а где-то даже лучше. Для работы с Samba из ОС Linux используется команда
smbclient
.
Чтобы подключиться к серверу, необходимо, как минимум, указать два ключа:
-L
(адрес сервера) и -U
(имя пользователя). В ответ на это программа запросит ввести пароль. Вели вы не используете шифрование, то необходимо ввести системный пароль, иначе воспользуйтесь тем, который вы указали при переносе пользователя в файл /etc/samba/smbpasswd(при запуске команды smbpasswd
).
Интервал:
Закладка: