Differences between revisions 3 and 15 (spanning 12 versions)
Revision 3 as of 2008-08-11 19:27:14
Size: 7731
Comment:
Revision 15 as of 2008-10-04 11:38:02
Size: 10023
Comment:
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
Семейство протоколов SMB, оно же CIFS (Common Internet File System), изначально разрабатывалось фирмой IBM для операционной системы OS/2, но потом пошло в народ. Как рассказывал один из разработчиков этого семейства из IBM, в названии нет ни слова правды --- не Common, не только Internet, и отнюдь не только File System. Семейство протоколов SMB (Server Message Block), оно же CIFS (англ. Common Internet File System --- единая файловая система для Internet) используется, несмотря на название, для доступа к ресурсам в пределах локальной сети.
Line 5: Line 5:
Было бы величайшей ошибкой думать, что SMB --- это тяжёлое наследие Windows и несёт с собой все ужасы этой операционной системы. Разработка протоколов SMB началась фирмой IBM во времена сотрудничества IBM и Microsoft. Последняя внесла в протокол наибольшее число изменений, интенсивно использует его модифицированную версию до сих пор, и даже предлагала его на роль интернет-стандарта под именем CIFS.
Кроме реализации Microsoft, существует в основном совместимая с нею свободная реализация SMB, созданная проектом Samba.
Line 7: Line 8:
В семейство протоколов CIFS, помимо собственно файловой системы, входит система авторизации пользователей, система доступа к принтерам, собственная реализация службы доменных имён под названием WINS, и это, кажется, ещё не всё. Если говорить о файловой системе --- основное достоинство реализации CIFS по сравнению с NFS (по крайней мере, версии 3) --- это авторизация по логину-паролю, а не host-based, которая предполагает, что вся система администрируется единым образом. То есть для использования такой системы необходимо, чтобы на клиенте и на пользователе был одинаковый набор пользователей, которые получают доступ к NFS, и мы предполагаем, что если пользователь авторизовался на своей машине, и она идёт за файлами на сервер от имени пользователя, то это правильный пользователь и ему можно отдать файлы. Это порождает опрелелённые проблемы с безопастностью и ограничениями доступа. В случае же неанонимного доступа к файловой системе по протоколу CIFS пользователь авторизует себя логином и паролем непосредственно при соединении с сервером. Но есть некоторые проблемы, связанные с тем, что в таком случае уходит далеко и надолго вся классическая система прав доступа к файлам, так как при авторизации пользователю выдаётся некий временный UID. Да и база пользователей у samba (основная реализация CIFS под POSIX-совместимые системы) своя, с которой придётся как-то синхронизироваться, что, опять-таки, нетривиально, учитывая то, что в ней, в отличие от shadow, хранятся восстановимые хэши от паролей. ## это на фирмой IBM для операционной системы OS/2, но потом разработка продолжилась уже сообществом свободных программистов. Неправильно думать, что SMB --- это наследие Windows и несёт с собой все негативные стороны этой операционной системы.
Line 9: Line 10:
В принципе, при помощи CIFS можно даже сделать так, что Linux-машины будут авторизовывать пользователей на NT4-домене, сервер которого работает под Windows, но это тема отдельного разговора. В семейство протоколов CIFS, помимо собственно сетевой файловой системы, входит система авторизации пользователей, система доступа к принтерам, собственная реализация службы имён компьютеров под названием WINS. Что касается сетевой файловой системы, основное достоинство реализации CIFS по сравнению с NFS (по крайней мере, NFS версии 3) --- это авторизация по логину и паролю, а не по адресу компьютера и локальным реквизитам пользователя. Иными словами, для использования такой системы необходимо, чтобы на клиенте и на пользователе был одинаковый набор пользователей, которые получают доступ к NFS, и мы предполагаем, что если пользователь авторизовался на своей машине, и она обращается за файлами на сервер от имени пользователя, то это правильный пользователь и ему можно отдать файлы. Подход к авторизации в NFS3 предполагает, что вся система администрируется единым образом, что было отчасти верно четверть века тому назад, но и тогда этот подход порождал проблемы с безопасностью и ограничениями доступа.
Line 11: Line 12:
## LAST В случае же неанонимного доступа к файловой системе по протоколу CIFS пользователь авторизует себя логином и паролем непосредственно при соединении с сервером. Однако при этом изменяется вся классическая система прав доступа к файлам, так как при авторизации пользователю выдаётся некий временный UID. В принципе, при помощи CIFS можно даже сделать так, что Linux-машины будут авторизовывать пользователей на NT-домене, сервер которого работает под ОС Windows. Кроме того, компьютер с Samba может сам выступать роли контроллера домена NT4.
Line 13: Line 14:
Есть проект пд назв. samba, который явл. реализацией cifs для разного рда систем, в первую очередь posix. Для того, чтбы утс. самбу и чего-нибудь зашарить, не нужн практически ничего. Самба очень бльшая система, документация написана в стиле хавту. В самбе очень говорящий настр. файл, для 90 процентов задач дост. тредактировать smb.conf, там, если себе предст, как устр. smb-сеть, до дост. хрош понятно, что там написано. Ни smb, ни samba не реализуют того, что в windows называется AD. Этогоо нет в smb3, эт должно появиться в smb4, но как-т оно медленно. У лектора есть пдозрение, что AD потихоньку теснят всякие другие directory-сервера, такие как например fedora directory server. Как было упомянуто выше, в POSIX-совместимых системах, в частности, GNU/Linux, пакет программных продуктов, реализующий семейство протоколов CIFS, называется samba. Этот пакет очень прост в настройке, во многом благодаря потому, что из-за его больших размеров документация к нему содержит не только общие случаи использования, но и множество конкретных примеров. Также основные конфигурационные файлы содержат большое количество комментариев, что минимизирует необходимость в чтении документации.
Line 15: Line 16:
Что в этом файле настр. нам интересн: название домена. Для удобства настрйки в smb-сетях компьютеры бъед. в домены, раб. группы. Это важная штука, её будут видеть при брузинге сети. security=user зн., что доступ будет идти по уч. записям пльз. Надо понимать, что пльз. пдсистемы samba не равны пользователям linux. Это восх. к тму, что в linux исп. posix, а в smb другое предст. В частности, уч. польз. smb устроены так, что паролип поьзователей хранятся. Основной конфигурационный файл пакета samba называется smb.conf, и хранится обычно в {{{/etc/samba/smb.conf}}}. Для настройки того, что в Windows называется "Общий доступ к папке", достаточно извлечь из комментариев в этом файле несколько строк и перезапустить samba, выполнив команду {{{service samba restart}}}. Одна из опций --- имя домена (то есть, рабочей группы), в которую входит данная машина. Весьма важным является параметр security, который определяет, каким образом пользователи авторизуются для доступа к ресурсам.
Line 17: Line 18:
##Пправить объясн --- Это нужно по одной простой причине --- вы, когда идент. польз. на лок. машине (в случае, если вы ей не доверяете) --- вы должны отослать пароль на сервер, сравнить, и принять решение, правильный парль или нет. Или же отослать хэши. При уровне доступа на уровне пользователя (на англ. этот тип доступа называется ''user''), который включен по умолчанию, авторизация происходит по внутренней базе пользователей samba. Иными словами, следует иметь в виду, что в общем случае пользователи системы не имеют ничего общего с пользователями samba, хотя часто их делают совпадающими, а также существуют единые механизмы ведения списка пользователей системы и samba . Одно из ключевых различий между двумя группами пользователей состоит в том, что для пользователей samba в базе должна хранится информация, по которой Samba можно восстановить его пароль в момент идентификации пользователя.
Line 19: Line 20:
пароли хранятся в smbpasswd, хадаются программой smbpasswd, кторой ещё и сзд. польз., мжно синхр. пароли. Это необходимо из-за особенностей механизма аутентификации, которая происходит следующим образом: сначала клиент стучится к серверу, который посылает клиенту некоторую "соль", то есть небольшое количество случайных данных. Клиент хэширует свой пароль вместе с солью и отправляет серверу, который, зная соль и пароль, восстанавливает хэш и проверяет, совпадает ли пароль.
Line 21: Line 22:
Чтобы зак. с польз.: чтбы самба воспр. польз. как сущ., нужно, чтобды соотв. польз. в линукс тже сущ. То есть, нужно сначала завести польз. линуксового, а потом самбовского. Наиболее простым способом хранения логинов и паролей в Samba является файл smbpasswd, который в ПСПО имеет полный путь {{{/etc/samba/smbpasswd}}}. Samba в smbpasswd хранит восстановимые хэши от паролей пользователей, для добавления пользователей в базу пользователей samba существует утилита smbpasswd, у которой, в частности, есть возможность синхронизировать добавление с добавлением пользователя в систему. Это необходимо, например, для того, чтобы отдавать через CIFS домашние каталоги пользователей системы: для этого нужно, чтобы соответствующий пользователь существовал в системе.
Line 29: Line 30:
|| 5 || 1 || 1 || 1 || || 1 || MaximByshevskiKonopko, VladimirLysikov, VsevolodKrishchenko || || || || 90 || 1 || 1 || 1 || || 1 || MaximByshevskiKonopko, ОльгаТочилкина, VsevolodKrishchenko || || ||

SMB: теория

Семейство протоколов SMB (Server Message Block), оно же CIFS (англ. Common Internet File System --- единая файловая система для Internet) используется, несмотря на название, для доступа к ресурсам в пределах локальной сети.

Разработка протоколов SMB началась фирмой IBM во времена сотрудничества IBM и Microsoft. Последняя внесла в протокол наибольшее число изменений, интенсивно использует его модифицированную версию до сих пор, и даже предлагала его на роль интернет-стандарта под именем CIFS. Кроме реализации Microsoft, существует в основном совместимая с нею свободная реализация SMB, созданная проектом Samba.

В семейство протоколов CIFS, помимо собственно сетевой файловой системы, входит система авторизации пользователей, система доступа к принтерам, собственная реализация службы имён компьютеров под названием WINS. Что касается сетевой файловой системы, основное достоинство реализации CIFS по сравнению с NFS (по крайней мере, NFS версии 3) --- это авторизация по логину и паролю, а не по адресу компьютера и локальным реквизитам пользователя. Иными словами, для использования такой системы необходимо, чтобы на клиенте и на пользователе был одинаковый набор пользователей, которые получают доступ к NFS, и мы предполагаем, что если пользователь авторизовался на своей машине, и она обращается за файлами на сервер от имени пользователя, то это правильный пользователь и ему можно отдать файлы. Подход к авторизации в NFS3 предполагает, что вся система администрируется единым образом, что было отчасти верно четверть века тому назад, но и тогда этот подход порождал проблемы с безопасностью и ограничениями доступа.

В случае же неанонимного доступа к файловой системе по протоколу CIFS пользователь авторизует себя логином и паролем непосредственно при соединении с сервером. Однако при этом изменяется вся классическая система прав доступа к файлам, так как при авторизации пользователю выдаётся некий временный UID. В принципе, при помощи CIFS можно даже сделать так, что Linux-машины будут авторизовывать пользователей на NT-домене, сервер которого работает под ОС Windows. Кроме того, компьютер с Samba может сам выступать роли контроллера домена NT4.

Как было упомянуто выше, в POSIX-совместимых системах, в частности, GNU/Linux, пакет программных продуктов, реализующий семейство протоколов CIFS, называется samba. Этот пакет очень прост в настройке, во многом благодаря потому, что из-за его больших размеров документация к нему содержит не только общие случаи использования, но и множество конкретных примеров. Также основные конфигурационные файлы содержат большое количество комментариев, что минимизирует необходимость в чтении документации.

Основной конфигурационный файл пакета samba называется smb.conf, и хранится обычно в /etc/samba/smb.conf. Для настройки того, что в Windows называется "Общий доступ к папке", достаточно извлечь из комментариев в этом файле несколько строк и перезапустить samba, выполнив команду service samba restart. Одна из опций --- имя домена (то есть, рабочей группы), в которую входит данная машина. Весьма важным является параметр security, который определяет, каким образом пользователи авторизуются для доступа к ресурсам.

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

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

Наиболее простым способом хранения логинов и паролей в Samba является файл smbpasswd, который в ПСПО имеет полный путь /etc/samba/smbpasswd. Samba в smbpasswd хранит восстановимые хэши от паролей пользователей, для добавления пользователей в базу пользователей samba существует утилита smbpasswd, у которой, в частности, есть возможность синхронизировать добавление с добавлением пользователя в систему. Это необходимо, например, для того, чтобы отдавать через CIFS домашние каталоги пользователей системы: для этого нужно, чтобы соответствующий пользователь существовал в системе.


Сведения о ресурсах

Готовность (%)

Продолжительность (ак. ч.)

Подготовка (календ. ч.)

Полный текст (раб. д.)

Предварительные знания

Level

Maintainer

Start date

End date

90

1

1

1

1

MaximByshevskiKonopko, ОльгаТочилкина, VsevolodKrishchenko


CategoryLectures CategoryPspo CategoryMpgu CategoryUneex

PspoClasses/080806/03SambaTheory (last edited 2008-10-04 11:38:02 by VsevolodKrishchenko)