Differences between revisions 9 and 10
Revision 9 as of 2008-08-21 18:46:08
Size: 8396
Comment: "Общий доступ к папке"
Revision 10 as of 2008-08-22 13:36:04
Size: 8267
Comment:
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
Семейство протоколов SMB, оно же CIFS (англ. Common Internet File System --- единая файловая система для Internet), изначально разрабатывалось фирмой IBM для операционной системы OS/2, но потом пошло в народ. (Как рассказывал один из разработчиков этого семейства из IBM, в названии нет ни слова правды --- не Common, не только Internet, и отнюдь не только File System.) Семейство протоколов SMB, оно же CIFS (англ. Common Internet File System --- единая файловая система для Internet), изначально разрабатывалось фирмой IBM для операционной системы OS/2, но потом разработка продолжилась уже сообществом свободных программистов. Неправильно думать, что SMB --- это наследие Windows и несёт с собой все негативные стороны этой операционной системы. 
Line 5: Line 5:
Было бы величайшей ошибкой думать, что SMB --- это тяжёлое наследие Windows и несёт с собой все ужасы этой операционной системы.

В семейство протоколов CIFS, помимо собственно файловой системы, входит система авторизации пользователей, система доступа к принтерам, собственная реализация службы доменных имён под названием WINS, и это, кажется, ещё не всё. Если говорить о файловой системе --- основное достоинство реализации CIFS по сравнению с NFS (по крайней мере, версии 3) --- это авторизация по логину-паролю, а не host-based, которая предполагает, что вся система администрируется единым образом. То есть для использования такой системы необходимо, чтобы на клиенте и на пользователе был одинаковый набор пользователей, которые получают доступ к NFS, и мы предполагаем, что если пользователь авторизовался на своей машине, и она идёт за файлами на сервер от имени пользователя, то это правильный пользователь и ему можно отдать файлы. Это порождает опрелелённые проблемы с безопастностью и ограничениями доступа. В случае же неанонимного доступа к файловой системе по протоколу CIFS пользователь авторизует себя логином и паролем непосредственно при соединении с сервером. Однако при этом могут возникнуть некоторые проблемы, связанные с тем, что в таком случае изменяетя вся классическая система прав доступа к файлам, так как при авторизации пользователю выдаётся некий временный UID.
В семейство протоколов CIFS, помимо собственно файловой системы, входит система авторизации пользователей, система доступа к принтерам, собственная реализация службы доменных имён под названием WINS, и это, судя по всему, ещё не всё. Что касается файловой системы, основное достоинство реализации CIFS по сравнению с NFS (по крайней мере, версии 3) --- это авторизация по логину-паролю, а не host-based, которая предполагает, что вся система администрируется единым образом. Иными словами, для использования такой системы необходимо, чтобы на клиенте и на пользователе был одинаковый набор пользователей, которые получают доступ к NFS, и мы предполагаем, что если пользователь авторизовался на своей машине, и она обращается за файлами на сервер от имени пользователя, то это правильный пользователь и ему можно отдать файлы. Это порождает определённые проблемы с безопасностью и ограничениями доступа. В случае же неанонимного доступа к файловой системе по протоколу CIFS пользователь авторизует себя логином и паролем непосредственно при соединении с сервером. Однако при этом могут возникнуть некоторые проблемы, связанные с тем, что в таком случае изменяется вся классическая система прав доступа к файлам, так как при авторизации пользователю выдаётся некий временный UID.
Line 11: Line 9:
Как было упомянуто выше, в POSIX-совместимых системах, в частности, GNU/Linux, пакет программных продуктов, реализующий семейство протоколов CIFS, называется samba. Этот пакет очень прост в настройке, во многом потому, что из-за его больших размеров документация к нему содержит не только общие случаи использования, но и множество конкретных примеров. Также основные конфигурационные файлы хорошо откомментированы, что зачастую убирает всякую необходимость в чтении документации. Как было упомянуто выше, в POSIX-совместимых системах, в частности, GNU/Linux, пакет программных продуктов, реализующий семейство протоколов CIFS, называется samba. Этот пакет очень прост в настройке, во многом потому, что из-за его больших размеров документация к нему содержит не только общие случаи использования, но и множество конкретных примеров. Также основные конфигурационные файлы содержат большое количество комментариев, что минимизирует необходимость в чтении документации.
Line 13: Line 11:
Основной конфигурационный файл пакета samba называется smb.conf, и хранится обычно в `/etc/samba/smb.conf`. Для настройки того, что в Windows называется "Общий доступ к папке", достаточно раскомментировать в этом файле несколько строк и перезапустить samba, выполнив команду '''service samba restart'''. Одна из таких опций --- имя домена (то есть, рабочей группы), в которую входит данная машина. Весьма важным является параметр security, который определяет, каким образом пользователи авторизуются для доступа к ресурсам. При уровне доступа user, который включен по умолчанию, авторизация происходит по внутренней базе пользователей samba, которая хранится в каталоге `/etc/samba/smbpasswd` и имеет некоторые отличия от классической shadow. Иными словами, следует иметь в виду, что в общем случае пользователи системы не имеют ничего общего с пользователями samba. Одно из ключевых различий в том, что samba в smbpasswd хранит восстановимые хэши от паролей пользователей. Основной конфигурационный файл пакета samba называется smb.conf, и хранится обычно в `/etc/samba/smb.conf`. Для настройки того, что в Windows называется "Общий доступ к папке", достаточно извлечь из комментариев в этом файле несколько строк и перезапустить samba, выполнив команду {{{service samba restart}}}. Одна из опций --- имя домена (то есть, рабочей группы), в которую входит данная машина. Весьма важным является параметр security, который определяет, каким образом пользователи авторизуются для доступа к ресурсам. При уровне доступа user, который включен по умолчанию, авторизация происходит по внутренней базе пользователей samba, которая хранится в каталоге `/etc/samba/smbpasswd` и имеет некоторые отличия от классической shadow. Иными словами, следует иметь в виду, что в общем случае пользователи системы не имеют ничего общего с пользователями samba. Одно из ключевых различий в том, что samba в smbpasswd хранит восстановимые хэши от паролей пользователей.
Line 15: Line 13:
Это необходимо из-за особенностей механизма аутентификации, который выглядит где-то так: сначала клиент стучится к серверу, который посылает клиенту некоторую "соль", то есть небольшое количество случайных данных. Клиент хэширует свой пароль совместно с солью, и отправляет серверу, который, зная соль и пароль, восстанавливает хэш и проверяет, совпадает ли пароль. Это необходимо из-за особенностей механизма аутентификации, которая происходит следующим образом: сначала клиент стучится к серверу, который посылает клиенту некоторую "соль", то есть небольшое количество случайных данных. Клиент хэширует свой пароль вместе с солью и отправляет серверу, который, зная соль и пароль, восстанавливает хэш и проверяет, совпадает ли пароль.
Line 17: Line 15:
Для добавления пользователей в базу пользователей samba существует утилита smbpasswd, у которой, в частности, есть возможность синхронизировать добавление с добавлением пользователя в систему. Это необходимо, например, для того, чтобы отдавать через CIFS домашние каталоги пользователей системы --- необходимо, чтобы соответствующий пользователь в системе существовал. Для добавления пользователей в базу пользователей samba существует утилита smbpasswd, у которой, в частности, есть возможность синхронизировать добавление с добавлением пользователя в систему. Это необходимо, например, для того, чтобы отдавать через CIFS домашние каталоги пользователей системы: для этого нужно, чтобы соответствующий пользователь существовал в системе.
Line 25: Line 23:
|| 37 || 1 || 1 || 1 || || 1 || MaximByshevskiKonopko, ОльгаТочилкина, VsevolodKrishchenko || || || || 48 || 1 || 1 || 1 || || 1 || MaximByshevskiKonopko, ОльгаТочилкина, VsevolodKrishchenko || || ||

SMB: теория

Семейство протоколов SMB, оно же CIFS (англ. Common Internet File System --- единая файловая система для Internet), изначально разрабатывалось фирмой IBM для операционной системы OS/2, но потом разработка продолжилась уже сообществом свободных программистов. Неправильно думать, что SMB --- это наследие Windows и несёт с собой все негативные стороны этой операционной системы.

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

В принципе, при помощи CIFS можно даже сделать так, что Linux-машины будут авторизовывать пользователей на NT4-домене, сервер которого работает под Windows, но это тема отдельного разговора.

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

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

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

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


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

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

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

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

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

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

Level

Maintainer

Start date

End date

48

1

1

1

1

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


CategoryLectures CategoryPspo CategoryMpgu CategoryUneex

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