0

Доступ cifs что это

SMB (сокр. от англ. Server Message Block ) — сетевой протокол прикладного уровня для удалённого доступа к файлам, принтерам и другим сетевым ресурсам, а также для межпроцессного взаимодействия. Первая версия протокола, также известная как Common Internet File System (CIFS) (Единая файловая система Интернета), была разработана компаниями IBM, Microsoft, Intel и 3Com в 1980-х годах; вторая (SMB 2.0) была создана Microsoft и появилась в Windows Vista. В настоящее время SMB связан главным образом с операционными системами Microsoft Windows, где используется для реализации «Сети Microsoft Windows» (англ. Microsoft Windows Network ) и «Совместного использования файлов и принтеров» (англ. File and Printer Sharing ).

Содержание

История [ править | править код ]

Первая версия протокола была разработана сотрудником IBM Бэрри Файгенбаумом (англ. Barry Feigenbaum ) в 1983 году [1] [2] . Изначально SMB был реализован через NetBIOS (поверх NBF, IPX/SPX или NetBIOS over TCP/IP) и использовался в сетях MS-NET и LAN Manager для DOS, а также в Windows for Workgroups. Microsoft регулярно дополняла протокол новыми возможностями; так, вторая версия Microsoft Networks SMB File Sharing Protocol Extensions появилась в 1988 году, 3-я версия — в 1989 году, версия 3.4 — в 1992 [3] .

В 1992 году появилась Samba — свободная реализация протокола SMB для UNIX-подобных операционных систем (изначально для SunOS). Поскольку Microsoft не опубликовала документацию значительной части своих дополнений к SMB, разработчикам Samba пришлось провести обратную разработку протокола.

В 1996 году Microsoft стала использовать новое название для дополненной версии протокола, которая использовалась в Windows NT 4.0 — CIFS (англ. Common Internet File System ); новое имя прижилось, SMB и CIFS фактически стали синонимами [2] . Microsoft некоторое время пыталась превратить CIFS в международный стандарт через IETF, но после 2000 года прекратила работу по стандартизации.

В Windows 2000 впервые появился SMB непосредственно поверх TCP (без NetBIOS); для этого используется порт 445 (SMB через NBT использовал порт 139).

В Windows Vista появилась новая версия протокола — SMB 2.0. Протокол был значительно упрощён (в SMB было более 100 команд, а в SMB 2 — всего 19); при этом была повышена производительность (благодаря механизму кэширования возможно совмещать несколько команд SMB 2 в одном сетевом запросе и увеличенным буферам чтения и записи), особенно в сетях с высокой латентностью, улучшена масштабируемость и добавлена возможность автоматического продолжения сеанса в случае временного отсоединения от сервера [4] . SMB 2 использует тот же порт (445) как и SMB, но другой заголовок пакетов ( 0xFF ‘S’ ‘M’ ‘B’ в SMB, 0xFE ‘S’ ‘M’ ‘B’ в SMB 2) [5] .

В Windows 8 появилась новая версия протокола — SMB 3.0. Новые возможности изложены на сайте разработчиков.

Читайте также:  Впн что это в интернете

В 2008 году под давлением Еврокомиссии Microsoft опубликовала описание своих частных протоколов, в том числе и SMB, на сайте MSDN [6] .

Принцип работы [ править | править код ]

SMB — это протокол, основанный на технологии клиент-сервер, который предоставляет клиентским приложениям простой способ для чтения и записи файлов, а также запроса служб у серверных программ в различных типах сетевого окружения. Серверы предоставляют файловые системы и другие ресурсы (принтеры, почтовые сегменты, именованные каналы и т. д.) для общего доступа в сети. Клиентские компьютеры могут иметь у себя свои носители информации, но также имеют доступ к ресурсам, предоставленным сервером для общего пользования.

Клиенты соединяются с сервером, используя протоколы TCP/IP (а, точнее, NetBIOS через TCP/IP), NetBEUI или IPX/SPX. После того, как соединение установлено, клиенты могут посылать команды серверу (эти команды называются SMB-команды или SMBs), который даёт им доступ к ресурсам, позволяет открывать, читать файлы, писать в файлы и вообще выполнять весь перечень действий, которые можно выполнять с файловой системой. Однако в случае использования SMB эти действия совершаются через сеть.

Как было сказано выше, SMB работает, используя различные протоколы. В сетевой модели OSI протокол SMB используется как протокол Application/Presentation уровня и зависит от низкоуровневых транспортных протоколов. SMB может использоваться через TCP/IP, NetBEUI и IPX/SPX. Если TCP/IP или NetBEUI будут заняты, то будет использоваться NetBIOS API. SMB также может посылаться через протокол DECnet. Digital (ныне Compaq) сделала это специально для своего продукта PATHWORKS. NetBIOS в случае использования через TCP/IP имеет различные названия. Microsoft называет его в некоторых случаях NBT, а в некоторых NetBT. Также встречается название RFCNB.

С начала существования SMB было разработано множество различных вариантов протокола для обработки всё возрастающей сложности компьютерной среды, в которой он использовался. Договорились, что реальный вариант протокола, который будет использоваться клиентом и сервером, будет определяться командой negprot (negotiate protocol). Этот SMB обязан посылаться первым до установления соединения. Первым вариантом протокола был Core Protocol, известный как SMB-реализация PC NETWORK PROGRAM 1.0. Он должным образом поддерживает весь набор основных операций, который включает в себя:

  • присоединение к файловым и принтерным ресурсам и отсоединение от них;
  • открытие и закрытие файлов;
  • открытие и закрытие принтерных файлов;
  • чтение и запись файлов;
  • создание и удаление файлов и каталогов;
  • поиск каталогов;
  • получение и установление атрибутов файла;
  • блокировка и разблокировка файлов.

Формат заголовка SMB [ править | править код ]

8 16 24 32 bits
Command RCLS Reserved ERR
ERR (cont) REB/FLG Reserved
Reserved
Reserved
Reserved
Tree ID Process ID
User ID Multiplex ID
WCT VWV
BCC BUF
SMB header structure

Основные элементы структуры заголовка SMB:
Command — команда протокола.
RCLS — код класса ошибки.
ERR — код ошибки.
Tree ID (TID) — идентификатор соединения с сетевым ресурсом.
Process ID (PID) — идентификатор клиентского процесса фактического соединения.
User ID (UID) — идентификатор пользователя; используется сервером для проверки прав доступа пользователя.
Multiplex ID (MID) — идентификатор группы пользователя; используется сервером для проверки прав доступа группы пользователя.
WCT — количество параметров, следующих за заголовком.
BCC — количество байт данных, следующих за параметрами.

Читайте также:  В контакте взлом страницы бесплатно

Аутентификация Microsoft SMB Protocol [ править | править код ]

Модель механизма защиты, которая используется в Microsoft SMB Protocol, в основном идентична модели любого другого варианта SMB-протокола. Она состоит из двух уровней защиты: user-level (пользовательский уровень) и share-level (уровень совместно используемого ресурса). Под share (выложенный в сеть ресурс) понимается файл, каталог, принтер, любая услуга, которая может быть доступна клиентам по сети.

Аутентификация на уровне user-level означает, что клиент, который пытается получить доступ к ресурсу на сервере, должен иметь username (имя пользователя) и password (пароль). Если аутентификация прошла успешно, клиент имеет доступ ко всем доступным ресурсам сервера, кроме тех, что с share-level-защитой. Этот уровень защиты даёт возможность системным администраторам конкретно указывать, какие пользователи и группы пользователей имеют доступ к определённым данным. Он используется в Windows NT, Windows 2000, Windows XP.

Аутентификация на уровне share-level означает, что доступ к ресурсу контролируется паролем, установленным конкретно на этот ресурс. В отличие от user-level, этот уровень защиты не требует имя пользователя для аутентификации и не устанавливается никакая уникальность текущего пользователя. Этот уровень используется в Windows NT, Windows 2000 и Windows XP для обеспечения дополнительного уровня контроля защиты сверх user-level. Операционные системы Windows 95, Windows 98 и Windows ME реализуют защиту только этого уровня.

В обоих этих уровнях защиты используется шифрование. Пароль зашифровывается, прежде чем отправляется на сервер. Типы шифрования NTLM, NTLMv2 и старые версии LAN Manager (LM) поддерживаются протоколом. Оба метода шифрования используют аутентификацию типа отклик-отзыв, в которой сервер посылает клиенту случайную сгенерированную строку, а клиент возвращает в качестве отзыва обработанную строку, которая доказывает, что клиент имеет достаточный мандат для доступа к данным.

Безопасность [ править | править код ]

На протяжении всего срока эксплуатации эталонной реализации протокола от Microsoft специалистами по информационной безопасности выявлялись уязвимости, позволяющие успешно провести сетевую атаку на удалённый узел. [7] [8] [9] Организация атаки на незащищённые серверы SMB является одной из наиболее привлекательных среди злоумышленников [10] . Так, например, с помощью использования уязвимостей протокола SMB были осуществлены взлом серверов Sony Pictures Entertainment [11] и распространение вредоносного ПО DoublePulsar, WannaCry [12] (уязвимость EternalBlue) и Petya [13] .

простыми словами

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

Для работы CIFS/SMB необходим порт 445 — по нему предоставляется удаленный доступ к сетевым ресурсам. А также для разрешения имен NetBios используются порты 137, 138 ,139 — без них обращение к ресурсу возможно только по IP-адресу.

Читайте также:  Выходная мощность полная и активная

В Windows клиент и сервер встроены в операционную систему. В Linux протокол может быть реализован с помощью samba.

NOTE: В данной статье показана настройка версий ОС NDMS 2.11 и более ранних. Настройка актуальной версии ПО представлена в статье "Контроль доступа к папкам USB-накопителя".

Имеется интернет-центр с подключенным к нему жестким диском, на котором есть несколько папок, доступ к которым нужно разделить между пользователями. Пользователи могут смотреть содержимое всего диска (это требуется для работы), но изменять и создавать файлы могут только в своей папке. Как правильно настроить права доступа к сетевому диску?

Подробную информацию о компонентах микропрограммы второго поколения NDMS вы найдете в статье: «Описание компонентов микропрограммы интернет-центра»

После установки данного компонента в разделе меню Приложения появится вкладка Права доступа (в последних версиях ПО вкладка называется Доступ к папкам).

Далее в меню Приложения > Сеть MS Windows необходимо включить сервер сети, чтобы сетевой диск был виден по протоколу NetBIOS (поставьте галочку в поле Включить). Галочку в поле Разрешить доступ без авторизации ставить не нужно, иначе у всех пользователей будут полные права без авторизации.
Внимание! Меню Сеть MS Windows вы увидите только в том случае, если в микропрограмме установлен компонент Cервер протокола доступа к файлами и принтерам в сетях Windows. Информация по обновлению компонентов NDMS представлена в статье: «Обновление устройства и установка актуальных версий программных компонентов через веб-конфигуратор»

Предварительно мы создали папки _01-Ivanov и _02-Petrov, к которым необходимо предоставить доступ соответствующим пользователям. Чтобы предоставить права определенной папке, нужно щелкнуть мышкой по кнопке edit (Изменить), после чего откроется окно Настройка прав доступа (Права доступа пользователей к выбранной папке) для настройки прав конкретным пользователям.

Возможны следующие виды прав доступа:

  • forbidden – запрещено;
  • read – разрешено чтение;
  • write – разрешена запись;
  • read/write – разрешены чтение и запись;
  • inherited – права наследуются от родительской папки.

Мы открыли настройки прав доступа для папки _01-Ivanov, поэтому для пользователя ivanov установили права read/write.

Для папки _02-Petrov таким же образом установили права доступа для пользователя petrov.

Внимание! Если нужно предоставить пользователю полный доступ только к одной папке, а к остальным запретить, нужно этому пользователю назначить следующие права:

  • read для всего диска;
  • read/write для папки, к которой нужно предоставить полный доступ;
  • forbidden для всех папок корневого каталога, кроме той, к которой нужно предоставить полный доступ.

Пользователи, считающие этот материал полезным: 28 из 34

admin

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *