Аппаратные средства и архитектура


Получить продукты и технологии



Скачать 10.18 Mb.
Pdf просмотр
страница55/68
Дата22.11.2016
Размер10.18 Mb.
Просмотров7407
Скачиваний0
1   ...   51   52   53   54   55   56   57   58   ...   68
Получить продукты и технологии

Репозиторий Samba Git repository
(EN) поможет вам выяснить текущее состояние

Samba.

Загрузите последнюю версию Samba
(EN), чтобы использовать все ее новые возможности.
Изучаем Linux, 302 (смешанные среды):
Файловые службы
Создание и настройка общих файловых ресурсов в смешанной среде
Шон Уолберг
, старший сетевой инженер, P.Eng
Описание: Эта статья поможет вам подготовиться к сдаче экзамена 302 сертификационной программы института Linux Professional Institute (LPI). Из этой статьи вы узнаете о создании общих файловых ресурсов и настройке файловых служб Samba в смешанной среде.
Больше статей из этой серии
Дата: 10.05.2012
Уровень сложности: сложный
Об этой серии
Эта серия статьей поможет вам освоить задачи администрирования операционной системы
Linux. Вы можете использовать материалы этих статей для подготовки к экзаменам программы LPIC третьего уровня (LPIC-3)
Чтобы посмотреть описания статей этой серии и получить ссылки на них, обратитесь к нашему перечню материалов для подготовки к экзаменам LPIC-3
. Этот перечень постоянно дополняется новыми статьями по мере их готовности и содержит текущие (по состоянию на
ноябрь 2010 года) цели экзаменов сертификации LPIC-3.
В этой статье рассматриваются следующие темы:

Создание и настройка общего доступа к файлам.

Планирование миграции файловых служб.

Скрытие административного общего ресурса IPC$.

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

Использование инструментов командной строки для работы с общими файловыми ресурсами.
Эта статья поможет вам подготовиться к сдаче экзамена LPI 302 (специализация "Смешанные среды") и содержит материалы цели 312.2 темы 312. Цель имеет вес 4.
Предварительные требования
Чтобы извлечь наибольшую пользу из наших статей, необходимо обладать продвинутыми знаниями о Linux и иметь работоспособный компьютер с Linux, на котором можно будет выполнять все встречающиеся команды. Кроме этого, у вас должен быть доступ к среде
Windows, которую можно использовать для проверки доступа к файлам и принтерам.
Создание общих файловых ресурсов
В предыдущей статье говорилось о том, что все имена разделов в файле smb.conf, за исключением homes, printers и global, воспринимаются Samba как имена общих
ресурсов. Помимо имени общего ресурса важным параметром является его сопоставление с директорией на диске. Ниже приведен пример простейшего общего ресурса, доступного для использования:
[tmpdir]
path = /var/tmp
В этом примере был создан общий ресурс с именем tmpdir, сопоставленный с директорией
/var/tmp на сервере Samba. Если бы, например, этот сервер назывался phoenix, то пользователи смогли бы получить доступ к файловому ресурсу, используя UNC-путь
\\phoenix\tmpdir. Однако такая редко встречающаяся конфигурация не очень удобна: по умолчанию доступ к общим ресурсам предоставляется в режиме "только для чтения", поэтому запись данных в созданный нами общий ресурс невозможна.
Использование параметров безопасности
В Samba имеется множество параметров безопасности, которые определяют, какие ресурсы должны быть доступны и откуда. Многие из этих параметров влияют на взаимодействие
Samba и разрешений файловой системы UNIX, и не рассматриваются в этой статье. Тем не менее, мы рассмотрим несколько основных параметров.
Серверы SMB (Server Message Block), включая собственные реализации Microsoft, имеют общий ресурс IPC$, являющийся общим ресурсом межпроцессного взаимодействия и использующийся для выполнения программных функций через сеть. Знак доллара (
$) в конце имени ресурса означает, что этот ресурс является скрытым и не виден клиентам
Microsoft, даже если сервер будет сообщать о его наличии.
Samba создает общий ресурс IPC$ даже если он не создан в файле smb.conf. Если вы создадите этот ресурс, то сможете управлять доступом к нему. Ниже приведен пример общего ресурса IPC$ с ограниченным доступом:
[IPC$]
hosts allow = 192.168.1.0/255.255.255.0
browsable = no
Этот фрагмент кода создает общий ресурс IPC$ и разрешает обращаться к нему только из подсети 192.168.1.0. Далее устанавливается параметр browsable, который определяет, должен ли этот ресурс быть видимым для клиентов, когда они запрашивают его, или нет.
Некоторое время назад было принято скрывать важные общие ресурсы, такие как IPC$, в надежде на то, что злоумышленники могли не заметить их. Этот подход не стоит ограничивать только ресурсом IPC$. Например, к ресурсу IPC$ необходимо подключаться для получения списка общих ресурсов сервера. Если вы посмотрите на пакеты отладки и трассировки Samba, то увидите, что параметр browsable ни на что не влияет. Здесь я рассказал о нем лишь только потому, что данный вопрос упоминается в программе экзамена.
Гораздо лучше ограничивать доступ списком хостов, которым разрешено подключаться к ресурсу IPC$, а не пытаться спрятать его.
Пользователь может подключиться к общему ресурсу, не указывая свое имя, становясь, таким образом, гостем. По умолчанию гостевой доступ к общим ресурсам не разрешен, но его можно разрешить, установив параметр guest ok = yes на уровне общего ресурса. По умолчанию гостевым пользователям присваивается имя nobody, которое можно изменить с помощью глобального параметра guest account.
Для связи двух областей файловой системы в UNIX широко используются символические
ссылки. Например, в домашней директории можно создать символическую ссылку на директорию системных временных файлов и использовать ее как часть дерева домашней директории. Samba разрешает переходить по таким символическим ссылкам, позволяя получать доступ к областям файловой системы, находящимся за пределами общего файлового ресурса. Если вы хотите запретить эту возможность, используйте параметр follow symlinks = no на уровне общего ресурса.
Если вы хотите ограничить доступ пользователей к общему ресурсу, используйте параметр valid users. Например, параметр valid users = sean, jon, isaac разрешает получать доступ к общему ресурсу, для которого он был установлен, только трем указанным пользователям. Этот параметр можно использовать в дополнение к файловым разрешениям для дополнительной защиты важных ресурсов.
Домашние директории
Обычно принято предоставлять пользователям домашние директории для хранения их личных файлов. Каждому пользователю, запись о котором присутствует в файле паролей
UNIX, назначена домашняя директория. Используя раздел
[homes], в Samba можно экспортировать любое количество домашних директорий без необходимости создавать отдельный раздел конфигурации для каждой домашней директории. Если кто-либо обращается к общему ресурсу с именем joe, то Samba начинает искать общий ресурс с таким именем. Если такой общий ресурс не найден, Samba выполняет поиск пользователя с тем же именем. Если этот пользователь обнаруживается, то Samba использует раздел
[homes] конфигурационного файла в качестве шаблона для этого общего ресурса.
В листинге 1 показан типовой раздел
[homes].
Листинг 1. Шаблон для домашних директорий пользователей
[homes]
comment = Home Directories writable = yes browsable = yes valid users = %S
Каждая строка конфигурации в листинге 1 означает следующее:

Начало конфигурирования раздела homes.

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

Установка разрешения на запись, которое позволяет пользователям изменять содержимое их домашних директорий.

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

Разрешает доступ к общему ресурсу только тому пользователю, которому этот ресурс принадлежит.
Обратите внимание на макрос
%S в листинге 1. Этот макрос преобразуется в имя общего ресурса. Поскольку имя пользователя и имя общего ресурса совпадают, то параметр valid users разрешает использовать ресурс только его владельцу.
Теперь каждый раз, когда пользователи просматривают список общих ресурсов, они видят свои домашние директории, к которым они могут подключиться. Общий ресурс будет сопоставлен с их домашней директорией UNIX.

Другая интересная особенность, связанная с домашними директориями, заключается в том, что подключаясь непосредственно к ресурсу \\server\homes, вы попадаете в свою собственную домашнюю директорию, как если бы вы подключались к ресурсу
\\server\имя_пользователя. Эта дополнительная возможность была реализована командой разработчиков Samba для того, чтобы помочь пользователям, использующим компьютер совместно, и избавить от путаницы.
Сценарии для добавления пользователей и групп
Если вы посмотрите на список пользователей домена Microsoft, то может оказаться, что пользователь, подключающийся к вашему серверу, не имеет локальной учетной записи
UNIX. Один из способов решения этой проблемы заключается в том, чтобы с помощью параметра add user script заставить Samba автоматически создавать для пользователя учетную запись при его подключении. Макрос
%u преобразуется в имя подключающегося пользователя. Можно использовать системную утилиту useradd или написать собственные сценарии.
Для групп существует похожий параметр add group script, используемый при работе с инструментами Microsoft, предназначенными для управления экземпляром Samba. В этом случае также могут оказаться сценарии add user to group и delete. Полный список автоматизируемых задач вы можете найти на man-странице smb.conf.
Автоматическое создание пользователей по запросу не всегда является наилучшей идеей.
Лучшим решением может оказаться использование механизмов аутентификации winbind или LDAP, позволяющих Samba и Linux использовать общую базу данных пользователей.
Символы в верхнем и нижнем регистре
В среде Microsoft регистр символов в именах файлов и директорий не имеет значения. Таким образом, FILE, file и FiLe указывают на один и тот же файл. Однако в Linux регистр символов имеет значение, и в данном случае FILE, file и FiLe – это три разных файла. Для разрешения конфликтов Samba должна знать, как в таких ситуациях следует сопоставлять имена различных сред. Процесс сопоставления регистров является частью более общего процесса под названием преобразование имен.
Преобразованием регистров имен файлов управляют несколько параметров. Самым важным из них является параметр case sensitive, который может принимать значения yes, no или auto. Если параметр case sensitive включен, то Samba использует символы в том регистре, в котором они указаны клиентами. Если этот параметр отключен, то Samba выполняет поиск в директории без учета регистра.
Одна из проблем, связанных с регистрозависимостью имен, заключается в том, что если параметр установлен неверно, то вы можете не получить доступ к некоторым файлам.
Рассмотрим для примера директорию, содержащую два файла с именами test и TEST. Если
Samba не использует регистрозависимый доступ, то невозможно определить разницу между двумя этими файлами.
По умолчанию этот параметр имеет значение auto; в этом случае выполняется поиск клиентского поля расширения, сообщающего о том, поддерживает ли клиент регистрозависимый доступ или нет. Клиенты Windows не поддерживают эту функциональность, поэтому они не будут учитывать регистр символов.
Параметры default case и preserve case работают в связке друг с другом. Если параметр preserve case установлен в yes, то используется регистр, указанный клиентом. Если параметр preserve case установлен в no, то для определения регистра вновь создаваемого файла используется значение, установленное параметром default.

Включение функции Usershare
С помощью функции Usershare пользователи могут создавать свои собственные общие ресурсы без необходимости редактирования файла smb.conf. После того, как администратор включит эту функцию, обычные пользователи могут использовать средства командной строки для экспорта выбранных ими директорий, а также для удаления общих ресурсов, если они станут не нужны.
Для включения функции Usershare сначала необходимо разрешить ее использование на глобальном уровне. В листинге 2 показан фрагмент файла smb.conf, включающий функцию
Usershare.
Листинг 2. Включение функции Usershare
[global]
usershare path = /var/lib/samba/usershares usershare max shares = 5
usershare prefix allow list = /home usershare prefix deny list = /var, /usr
В листинге 2 настраиваются параметры раздела
[global]. Сначала с помощью параметра usershare path определяется директория, которую Samba будет использовать для конфигурации пользовательских общих ресурсов. Для этой директории существует нисколько ограничений, о которых будет рассказано позже. Далее устанавливается ограничение на количество пользовательских общих ресурсов. Два последних параметра показывают, как задать ограничения для директорий, которые будут находиться в общем доступе. Параметр usershare prefix allow list ограничивает все общие ресурсы указанной директорией — в нашем случае общие ресурсы должны находиться в директории /home. Параметр usershare prefix deny list имеет противоположное значение и разрешает все за исключением указанных директорий.
Samba налагает два ограничения на пользовательские общие ресурсы. Во-первых, директория, указанная в параметре usershare path, должна быть доступна для записи пользователю, создающему общий ресурс, и иметь установленный бит закрепления (
1000 или
+t). Во-вторых, если параметр usershare owner only не установлен в false, то пользователь должен быть владельцем директории, к которой он предоставляет общий доступ.
Первое ограничение связано с разрешениями файловой системы и означает, что при создании директории usershare path необходимо быть внимательными. Если вы хотите ограничить доступ к общему ресурсу, разрешив подключаться к нему только пользователям из группы usershares, то необходимо выполнить следующие команды:
# mkdir -p /var/lib/samba/usershares
# chown root:usershares /var/lib/samba/usershares
# chmod 1770 /var/lib/samba/usershares
Первая команда создает конечную директорию и ее родительские директории. Следующая команда назначает владельцами этой директории пользователя root и группу usershares.
Последняя команда устанавливает для директории права на чтение, запись и выполнение для владельца и группы, запрещает доступ для остальных пользователей, а также устанавливает бит закрепления. Таким образом, эту директорию могут использовать только пользователь root и члены группы usershares, а благодаря биту закрепления, файлы могут быть удалены
только их владельцами.
Настройка общего ресурса, возможно, является самой сложной задачей. Пользователь может выполнить следующую команду: net usershare add docs /home/me/Documents/ "My docs" Everyone:F
Эта команда экспортирует директорию /home/me/Documents в общих ресурс с именем docs и предоставляет всем полный доступ к ней. Другие команды, которые можно использовать:

net usershare list – выводит список общих ресурсов, созданных пользователем.

net usershare info docs – показывает конфигурацию общего ресурса docs.

net usershare delete docs – удаляет общий ресурс docs.
Инструменты командной строки
Samba содержит несколько инструментов командной строки. С помощью утилиты libsmbclient из состава Samba были созданы другие широко используемые утилиты
SMB/ CIFS.
Одним из наиболее заметных отличий UNIX от Windows является то, что UNIX содержит одну большую файловую систему, тогда как в Windows имеется несколько обозначенных буквами дисков. Утилита smbclient позволяет просматривать удаленные общие ресурсы
Windows, используя интерфейс, похожий на интерфейс протокола FTP, однако чтобы быть прозрачным для приложений, удаленный общий ресурс Windows должен монтироваться как любая другая файловая система.
В составе Samba имеется утилита smbmount, которая иногда переупаковывается в файл mount.cifs. Эту команду можно запустить непосредственно в командной строке либо вызвать через команду mount. В листинге 3 показан процесс монтирования в Linux удаленного общего ресурса CIFS в качестве обычной файловой системы.
Листинг 3. Монтирование удаленного общего ресурса CIFS
# mount -t cifs '\\192.168.1.134\docs' /mnt -o user=myuser
Password:
# mount
\\\\192.168.1.134\\docs on /mnt type cifs (rw)
Первая команда монтирует файловую систему CIFS по указанному UNC-пути в точку монтирования /mnt. За исключением использования UNC-пути эта команда выглядит как обычная команда mount. Параметры передаются с помощью опции -o. Единственной опцией, которая здесь нужна, является имя пользователя. Man-страница mount.cifs содержит полный список всех опций, среди которых могут содержаться пароль и имя домена. Если вы не указываете пароль, вам будет предложено ввести его. Наконец, команда mount показывает смонтированную файловую систему.
Другая команда – это smbsh. Вместо монтирования файловой системы стандартными средствами UNIX smbsh перехватывает библиотечные вызовы обращений к файлам и при необходимости перенаправляет запросы к общему ресурсу CIFS. В настоящее время в большинстве систем эта команда отсутствует, поскольку она не так надежна, как
монтирование файловой системы.
Перемещение общих файловых ресурсов
Если вы перемещаете файловые службы с одного сервера на другой, то пользователи могут не располагать информацией о новом сервере. Samba позволяет настроить сервер таким образом, чтобы он отзывался на другое имя. Например, если вы переносите общие файловые ресурсы с сервера с именем phoenix на сервер с именем fs2, то можете заставить сервер fs2 отвечать на запросы, отправляемые серверу phoenix. Разумеется, вы должны убедиться в том, что сервер phoenix не будет отвечать на эти запросы, выключив или переименовав его.
Для добавления псевдонима сервера используется глобальный параметр netbios aliases. Если вы хотите изменить имя сервера Samba на какое-то другое имя, отличное от
UNIX-имени сервера, используйте параметр netbios name.
Команды, относящиеся к монтированию файловых систем, о которых вы уже знаете к этому моменту, также могут пригодиться для копирования файлов с одного сервера на другой в рамках подготовки к миграции. Также могут оказаться полезными утилиты UNIX наподобие rsync.
Что дальше
Следующая статья этой серии содержит материалы цели 312.3 темы 312. В ней рассматривается создание, настройка и использование служб печати в смешанной среде.
Ресурсы
Научиться

Оригинал статьи:
Learn Linux, 302 (Mixed environments): File services
(EN).

Онлайновая man-страница smb.conf
(EN) более удобна в использовании, чем текстовая версия.

Узнайте подробнее о том, как получить доступ к удаленным файловым системам с
Linux-компьютера, из документа
SMB HOWTO
(EN).

Если вы используете SELinux, то вам может пригодиться документ managing Samba and SELinux
(EN), особенно при настройке домашних директорий.

На Web-сайте программы сертификации LPIC
(EN) вы найдете подробные цели, списки задач и примерные вопросы всех трех уровней сертификации на администратора Linux-систем профессионального института Linux. В частности, на этом сайте представлены подробные цели экзамена LPI 302
(EN), а также примеры заданий и вопросов
(EN).

Просмотрите всю серию статей для подготовки к экзаменам института LPI
(EN) на сайте developerWorks, основанных на предыдущих целях, определенных до апреля
2009 года, чтобы изучить основы администрирования Linux и подготовиться к экзаменам для получения сертификата администратора Linux.

Материалы для подготовки к исправленным экзаменам LPIC
(EN) содержат список дополнительных ресурсов института LPI, которые помогут вам при подготовке к получению сертификата.
Получить продукты и технологии

Загрузите последнюю версию Samba
(EN), чтобы использовать все ее новые возможности.

Изучаем Linux, 302 (смешанные среды):
Cлужбы печати
Создание и управление общими ресурсами печати Samba в смешанной среде
Шон Уолберг
, старший сетевой инженер, P.Eng
Описание: Эта статья поможет вам подготовиться к сдаче экзамена 302 сертификационной программы института Linux Professional Institute (LPI). Из этой статьи вы узнаете о настройке общего доступа к принтерам для клиентов Linux и Microsoft.
Больше статей из этой серии
Дата: 10.05.2012
Уровень сложности: сложный
Об этой серии
Эта серия статьей поможет вам освоить задачи администрирования операционной системы
Linux. Вы можете использовать материалы этих статей для подготовки к экзаменам программы LPIC третьего уровня (LPIC-3)
Чтобы посмотреть описания статей этой серии и получить ссылки на них, обратитесь к нашему перечню материалов для подготовки к экзаменам LPIC-3
. Этот перечень постоянно дополняется новыми статьями по мере их готовности и содержит текущие (по состоянию на
ноябрь 2010 года) цели экзаменов сертификации LPIC-3.
Краткий обзор
В этой статье рассматриваются следующие темы:

Создание и настройка общих ресурсов печати.

Интеграция Samba с системой печати CUPS (Common UNIX® Print System).

Управление драйверами принтеров Windows® и их загрузкой.

Настройка общего ресурса [print$].

Вопросы безопасности при работе с общими принтерами.

Настройка и управление системой учета печати.
Эта статья поможет вам подготовиться к сдаче экзамена LPI 302 (специализация "Смешанные среды") и содержит материалы цели 312.3 темы 312. Цель имеет вес 2.
Предварительные требования
Чтобы извлечь наибольшую пользу из наших статей, необходимо обладать продвинутыми знаниями о Linux и иметь работоспособный компьютер с Linux, на котором можно будет выполнять все встречающиеся команды. Кроме этого, у вас должен быть доступ к среде
Windows, которую можно использовать для проверки доступа к файлам и принтерам.
Настройка общего ресурса печати
Настройка общего ресурса печати похожа на настройку общего файлового ресурса. Для этого необходимо создать раздел, установить значения нескольких параметров и подключить клиентов. Тем не менее, поскольку в данном случае мы имеем дело с печатью, то существует несколько тонких отличий. В листинге 1 приведена типовая конфигурация, содержащаяся в файле smb.conf.

Листинг 1. Типовая конфигурация для общих ресурсов печати
[global]
load printers = yes printing = sysv
[printers]
comment = Printers path = /var/spool/samba writable = no printable = yes
В листинге 1 не настраиваются никакие принтеры, а просто содержатся инструкции для загрузки списка системных принтеров и определяется раздел с именем
[printers], выступающий в роли шаблона. В предыдущей статье говорилось о том, что раздел
[homes] используется в качестве шаблона для домашних директорий. Раздел
[printers] выполняет те же функции для принтеров.
На глобальном уровне параметр load printers выдает команду Samba выполнять поиск системных принтеров и настраивать общий доступ к ним. Параметр printing = sysv указывает на использование более старой системы печати SysV. Сейчас нам достаточно этого, но позже вы узнаете, как настраивать более современную систему печати CUPS.
Раздел
[printers] определяет, как будет выглядеть каждый общий ресурс печати. Если у вас нет необходимости использовать отдельные параметры для каждого принтера, например, ограничивать доступ пользователей, то можно работать с этим шаблоном. Параметр path используется системой Samba. Когда вы посылаете задание принтеру Samba, то прежде, чем послать файл на устройство печати, smbd помещает его в директорию, указанную в параметре path. После этого вы должны убедиться в том, что общий ресурс не находится в режиме writable, а находится в режиме printable для того, чтобы Samba могла правильно использовать его в качестве ресурса печати.
Теперь вы можете увидеть на вашем сервере список принтеров. Если на клиентском компьютере Windows установлен драйвер этого принтера, то можно продолжить его установку и работать с ним в сети.



Поделитесь с Вашими друзьями:
1   ...   51   52   53   54   55   56   57   58   ...   68


База данных защищена авторским правом ©nethash.ru 2019
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал