Содержание
- 1 Использование smbclient
- 2 Доступ к SMB-ресурсам из Linux
- 3 SMB-related system files
- 4 Features added in SMB 3.11 with Windows Server 2016 and Windows 10, version 1607
- 5 Как работает этот протокол SMB?
- 6 Практическое применениеPractical applications
- 7 Используем текстовый интерфейс
- 8 Функции, добавленные в SMB 3.11 с Windows Server 2016 и Windows 10 версии 1607Features added in SMB 3.11 with Windows Server 2016 and Windows 10, version 1607
- 9 Автоматическое соединение с сетевой папкой со стороны STB
- 10 Запуск демонов
- 11 Disabling SMB 1.0
- 12 7. Включите или отключите SMB1 и SMB2 с помощью командной строки Windows 10
- 13 Как проверить версию SMB в Windows
Использование smbclient
Возможно, самый простой способ получить доступ к серверу SMB/CIFS с клиента Linux – это использовать утилиту командной строки . Эта утилита похожа на классическую команду , поэтому если вы знакомы с , то вы легко освоите и . Если вы не знакомы с , то достаточно знать, что эта программа обеспечивает соединение с сервером без стандартного монтирования общих файловых ресурсов. Вместо этого для просмотра, удаления, загрузки или передачи файлов пользователь выполняет различные команды.
Для использования необходимо набрать в командной строке имя этой команды и имя службы в следующем формате: // СЕРВЕР / СЛУЖБА. Например, если необходимо получить доступ к общему ресурсу GORDON на сервере TANGO, то следует указать имя //TANGO/GORDON. В зависимости от конфигурации сервера может потребоваться ввести пароль. Если введен правильный пароль, то можно вводить различные команды для доступа к файлам, хранящимся на сервере. В таблице 1 перечислены некоторые наиболее важные команды ; для получения информации о других более экзотических командах обратитесь к man-странице этой утилиты.
Таблица 1. Наиболее важные команды smbclient
Команда | Действие |
---|---|
или | Выводит список всех команд |
Изменяет рабочую директорию на удаленном сервере | |
Удаляет файл | |
или | Выводит список файлов в текущей (или указанной) директории |
или | Завершает сеанс работы |
Передает файл с сервера клиенту | |
Изменяет рабочую директорию на локальном компьютере | |
или | Создает директорию на удаленном сервере |
Передает несколько файлов с сервера клиенту | |
Выводит список удаленных файлов с помощью локальной команды постраничного вывода | |
Передает несколько файлов с клиента на удаленный сервер | |
Передает файл с клиента на удаленный сервер | |
или | Удаляет директорию |
Переименовывает файл на удаленном сервере | |
Удаляет один или несколько файлов на удаленном сервере |
По умолчанию для подключения к серверу использует текущее имя пользователя, однако можно указать имя явно с помощью опции . На самом деле, можно использовать несколько опций командной строки, включая опции, позволяющие передавать файлы без входа в интерактивный режим . Таким образом, можно использовать в сценариях для выполнения автоматической передачи файлов. За дополнительной информацией обратитесь к man-странице этой утилиты.
Сеанс работы с выглядит примерно следующим образом:
Листинг 1. Пример сеанса работы с smbclient
$ smbclient //TANGO/GORDON/ Enter gordon's password: Domain= OS= Server= smb: \> cd mystuff smb: \mystuff\> ls . D 0 Mon May 16 19:20:08 2011 .. D 0 Mon May 16 19:18:12 2011 xv-3.10a-1228.1.src.rpm 3441259 Tue May 18 19:09:26 2010 License.txt 27898 Mon May 16 19:17:15 2011 xorg.conf 1210 Fri Jan 21 04:18:13 2011 51198 blocks of size 2097152. 2666 blocks available smb: \mystuff\> get xorg.conf getting file \mystuff\xorg.conf of size 1210 as xorg.conf (9.4 KiloBytes/sec) (average 9.4 KiloBytes/sec) smb: \mystuff\> exit
Совет. Утилита является превосходным инструментом отладки. Не смотря на свою простоту, она позволяет получить доступ к сетевому окружению без монтирования ресурсов, что может упрощает поиск и устранение проблем.
Доступ к SMB-ресурсам из Linux
Машины с Linux (UNIX) могут также просматривать и монтировать
SMB-ресурсы. Заметьте, что это может быть сделано когда сервером является
либо машина с Windows, либо с сервером Samba!
Программа клиента SMB для UNIX-машин включена в дистрибутив Samba. Она
обеспечивает ftp-подобный интерфейс командной строки. Вы можете
использовать эту утилиту для переноса файлов между ‘сервером’ под
управлением Windows и клиентом под Linux.
Большинство дистрибутивов Linux также включают полезный пакет smbfs,
который позволяет монтировать и размонтировать SMB-ресурсы. Больше
информации о smbfs можно получить дальше.
Для того, чтобы увидеть какие ресурсы доступны на данной машине, выполните
команду:
/usr/bin/smbclient -L host
где ‘host’ это имя машины, которую вы хотите видеть. Эта команда вернет
список имен ‘сервисов’ — т.е. имен дисков или принтеров к которым может
быть получен доступ. До тех пор, пока SMB сервер не будет настроен без
управления доступом, он будет запрашивать у вас пароль. Введите в ответ на
запрос пароль для пользователя ‘гость (guest)’ или ваш персональный пароль
на этой машине.
Например:
smbclient -L zimmerman
Вывод этой команды должен выглядеть примерно так:
Browse list показывает другие SMB сервера в сети с доступными ресурсами.
Для использования клиента, выполните следующую команду:
/usr/bin/smbclient service <password>
где ‘service’ — имя машины и сервиса. Например, если вы пытаетесь
обратиться к директории, которая доступна под именем ‘public’ на
машине названной ‘zimmerman’, то имя сервиса должно звучать как
\\zimmerman\public. Однако в следствии ограничений
оболочки, вам необходимо спрятать обратный слэш, так что в итоге
это командная строка выглядеть следующим образом:
/usr/bin/smbclient \\\\zimmerman\\public mypasswd
где ‘mypasswd’ — символьная строка вашего пароля.
Вы получите приглашение smbclient:
Напечатайте ‘h’ чтобы получить помощь об использовании smbclient:
Если вы умеете использовать ftp, то вам не будут нужны справочные страницы
о smbclient.
Хотя вы можете использовать smbclient для тестирования, вы скоро устанете
использовать его в работе. Для работы вам скорее всего понадобится пакет
smbfs. Smbfs поставляется с двумя простыми утилитами, smbmount и
smbumount. Они работают подобно mount и umount для SMB-ресурсов.
Одно важное замечание: Чтобы использовать эти утилиты, у вас должна быть
поддержка smbfs вкомпилированная в ядро!
Следующий пример показывает типичное использование smbmount для
монтирования SMB-ресурса, названного «customers» с машины с
именем «samba1»:
Запуск команды mount покажет вам, что ресурс смонтирован, точно также как и
через экспорт NFS:
Пожалуйста прочитайте справочные страницы smbmount и smbumount для
дополнительной информации о описанных выше операциях.
NextPrevious
Спонсоры:
Хостинг:
Maxim ChirkovДобавить, Поддержать, Вебмастеру
This section lists the SMB-related system files. To keep the system files updated, make sure that the latest update rollup is installed.
SMB Client binaries that are listed under %windir%\system32\Drivers:
-
RDBSS.sys
-
MRXSMB.sys
-
MRXSMB10.sys
-
MRXSMB20.sys
-
MUP.sys
-
SMBdirect.sys
SMB Server binaries that are listed under %windir%\system32\Drivers:
-
SRVNET.sys
-
SRV.sys
-
SRV2.sys
-
SMBdirect.sys
-
Under %windir%\system32
-
srvsvc.dll
Update suggestions
We recommend that you update the following components before you troubleshoot SMB issues:
-
A file server requires file storage. If your storage has iSCSI component, update those components.
-
Update the network components.
-
For better performance and stability, update Windows Core.
Features added in SMB 3.11 with Windows Server 2016 and Windows 10, version 1607
Feature/functionality | New or updated | Summary |
---|---|---|
SMB Encryption | Updated | SMB 3.1.1 encryption with Advanced Encryption Standard-Galois/Counter Mode (AES-GCM) is faster than SMB Signing or previous SMB encryption using AES-CCM. |
Directory Caching | New | SMB 3.1.1 includes enhancements to directory caching. Windows clients can now cache much larger directories, approximately 500K entries. Windows clients will attempt directory queries with 1 MB buffers to reduce round trips and improve performance. |
Pre-Authentication Integrity | New | In SMB 3.1.1, pre-authentication integrity provides improved protection from a man-in-the-middle attacker tampering with SMB’s connection establishment and authentication messages. For details, see SMB 3.1.1 Pre-authentication integrity in Windows 10. |
SMB Encryption Improvements | New | SMB 3.1.1 offers a mechanism to negotiate the crypto algorithm per connection, with options for AES-128-CCM and AES-128-GCM. AES-128-GCM is the default for new Windows versions, while older versions will continue to use AES-128-CCM. |
Rolling cluster upgrade support | New | Enables rolling cluster upgrades by letting SMB appear to support different max versions of SMB for clusters in the process of being upgraded. For more details on letting SMB communicate using different versions (dialects) of the protocol, see the blog post Controlling SMB Dialects. |
SMB Direct client support in Windows 10 | New | Windows 10 Enterprise, Windows 10 Education, and Windows 10 Pro for Workstations now include SMB Direct client support. |
Native support for FileNormalizedNameInformation API calls | New | Adds native support for querying the normalized name of a file. For details, see FileNormalizedNameInformation. |
For additional details, see the blog post What’s new in SMB 3.1.1 in the Windows Server 2016 Technical Preview 2.
Как работает этот протокол SMB?
В более ранних версиях Windows SMB использовался для работы в сетевой архитектуре NetBIOS. Microsoft модифицировала SMB в Windows 2000 для работы с некоторыми основными TCP, где она использовала выделенный порт IP. В последних версиях Windows он продолжает использовать тот же порт.
Microsoft даже внесла улучшения в SMB для повышения безопасности и производительности. С SMB2 это уменьшило всю детализацию протокола. С другой стороны, SMB3 состоит из улучшений и производительности для виртуализированной среды и поддержки сквозного и надежного шифрования.
Кроме того, здесь вы разберетесь со всеми Типы брандмауэра, Windows Основы брандмауэра и полное сравнение межсетевой экран с сохранением состояния и без сохранения состояния.
Протоколы SMB
Как и другие языки, программисты создали разнообразные диалекты SMB для использования в разных целях. Например, CIFS (Common Internet File System) — это конкретная реализация SMB, которая позволяет осуществлять общий доступ к файлам. Большинство людей рассматривают CIFS в качестве другого протокола вместо SMB, где на самом деле они используют одинаковую базовую архитектуру.
Некоторые из важных реализаций SMB включают в себя:
- самбаЭто относится к реализации с открытым исходным кодом из Microsoft Active Directory. Эта реализация позволяет системам, отличным от Windows, взаимодействовать с системой Windows.
- CIFS: Это типичный протокол разделения огня, который используют серверы Windows. CIFS также совместим с устройствами NAS.
- MoSMB: Эта реализация является частным SMB, который был представлен Рюсси Технологии.
- NQЭто еще одна портативная реализация SMB для обмена файлами. Системы визуальности разработал эту реализацию SMB.
- : Это многопротокольный сетевой протокол с поддержкой идентификации для обмена файлами. EMC приобрел этот протокол в 2012 году.
- смокинг SMBЭто еще одна проприетарная реализация SMB, которая работает либо в пользовательском пространстве, либо в ядре.
Теперь пришло время узнать о брандмауэре портов SMB и о других вещах о портах SMB. Начнем с разговоров о портах SMB 445 и 139.
Кроме того, нажмите здесь, чтобы прочитать больше о полной IDS VS. Межсетевой экран VS. IPS сравнение и Mikrotik Firewall правила.
Практическое применениеPractical applications
В этом подразделе описан ряд способов использования нового протокола SMB 3.0.This section discusses some new practical ways to use the new SMB 3.0 protocol.
- Хранилище файлов для виртуализации (Hyper-V через SMB) .File storage for virtualization (Hyper-V over SMB). С помощью протокола SMB 3.0 Hyper-V может хранить в файловых ресурсах общего доступа файлы виртуального компьютера, например файлы конфигурации, файлы виртуального жесткого диска (VHD) и снимки.Hyper-V can store virtual machine files, such as configuration, Virtual hard disk (VHD) files, and snapshots, in file shares over the SMB 3.0 protocol. Этот способ может использоваться как для изолированных файловых серверов, так и для кластерных файловых серверов, которые используют Hyper-V вместе с общедоступным хранилищем файлов для кластера.This can be used for both stand-alone file servers and clustered file servers that use Hyper-V together with shared file storage for the cluster.
- Microsoft SQL Server через SMB.Microsoft SQL Server over SMB. SQL Server может хранить файлы базы данных пользователей в файловых ресурсах SMB.SQL Server can store user database files on SMB file shares. Сейчас эта возможность поддерживается SQL Server 2008 R2 для изолированных серверов SQL.Currently, this is supported with SQL Server 2008 R2 for stand-alone SQL servers. В будущих версиях SQL Server будет добавлена поддержка кластерных серверов SQL и системных баз данных.Upcoming versions of SQL Server will add support for clustered SQL servers and system databases.
- Традиционное хранение данных пользователя.Traditional storage for end-user data. Протокол SMB 3.0 предоставляет дополнительные возможности для рабочих нагрузок клиентов или сотрудников, работающих с информацией.The SMB 3.0 protocol provides enhancements to the Information Worker (or client) workloads. Эти возможности включают сокращение задержек приложений при получении пользователями филиала доступа к данным через глобальную сеть и защиту данных от перехвата злоумышленниками.These enhancements include reducing the application latencies experienced by branch office users when accessing data over wide area networks (WAN) and protecting data from eavesdropping attacks.
Используем текстовый интерфейс
Многие системные
администраторы при инсталляции Linux
ограничиваются только текстовым
интерфейсом, не устанавливая графический (X
Windows).
Это положительно сказывается на
безопасности и быстродействии системы, но
делает недоступными утилиты вроде SWAT,
работе с которой посвящена нижеследующая
часть этой статьи.
Простой файл smb.conf,
приведенный ниже, позволяет удаленным
пользователям иметь доступ к своим
домашним директориям на локальной машине и
помещать информацию во временную
директорию. Пользователи Windows могут увидеть
эти ресурсы, подключив сетевые диски, при
этом естественно — машина с Linux должна
иметь выход в локальную сеть.
Заметим, что будут приведены
дополнительные записи для этого файла,
чтобы дать доступ к большему количеству
ресурсов.
; /etc/smb.conf ; ; Убедитесь и перезапустите сервер после внесения изменений в этот ; файл, например: ; /etc/rc.d/smb stop ; /etc/rc.d/smb start ; Раскомментируйте эту строку, если вы хотите дать доступ пользователю "гость" ; guest account = nobody log file = /var/log/samba-log.%m lock directory = /var/lock/samba share modes = yes comment = Home Directories browseable = no read only = no create mode = 0750
Написав новый файл
smb.conf, полезно проверить его правильность.
Для этого можно использовать утилиту ‘testparm’
(предварительно заглянув на справочную
страницу testparm); если testparm сообщает об
отсутствии проблем, то smbd правильно
загрузит файл настроек.
Имейте в виду: если ваш
сервер Samba имеет больше одного Ethernet-интерфейса,
то smbd может подключиться к неправильному.
Чтобы заставить ее подключаться к нужному,
можно добавить в раздел файла /etc/smb.conf
следующую строку:
interfaces = 192.168.1.1/24
Теперь можно
запускать Sambа.
При этом необходимо учитывать, что чем
больше сервисов настроено на вашем сервере,
тем более он оказывается уязвим.
Если говорить о
безопасности SAMBA, то следует учесть, что она
использует порты 137-139. Есть смысл просто
заблокировать их из TCP и UDP. В случае если у
вас стоит ядро версии 2.0 (это можно легко
узнать, набрав в консоли uname -a), то для
фильтрации используйте ipfwadm,
а если ядро версии 2.1 или 2.2, — то ipchains.
Вот как
это делается с помощью ipfwadm:
# Добавляем нижеприведенные записи в /etc/rc.local: ipfwadm -I -P tcp -a deny -S any/0 137:139 -W eth0 ipfwadm -I -P udp -a deny -S any/0 137:139 -W eth0 ipfwadm -O -P tcp -a deny -S any/0 137:139 -W eth0 ipfwadm -O -P udp -a deny -S any/0 137:139 -W eth0
Это запретит (deny) все
входящие и исходящие TCP- и UDP-пакеты для
портов 137-139 на интерфейсе eth0. Для получения
более подробной информации рекомендуем
почитать man ipfwadm.
При наличии ядер 2.1-2.2
вы сможете сделать это с помощью ipchains:
# Добавляем нижеприведенные записи в /etc/rc.local: ipchains -A input -p tcp -j DENY --destination-port 137:139 -i eth0 ipchains -A input -p udp -j DENY --destination-port 137:139 -i eth0 ipchains -A output -p tcp -j DENY --destination-port 137:139 -i eth0 ipchains -A output -p udp -j DENY --destination-port 137:139 -i eth0
Как видите, здесь нет
ничего нового и сложного. Как ipfwadm, так и
ipchains выполняют одинаковые функции,
только для разных версий ядер.
Однако если вам не
нравится редактировать конфигурационные
файлы вручную и на вашем Linux-сервере установлен графический
интерфейс, то вы можете упростить настройку
smb.conf,
воспользовавшись Samba Web Administration Tool (SWAT).
Функции, добавленные в SMB 3.11 с Windows Server 2016 и Windows 10 версии 1607Features added in SMB 3.11 with Windows Server 2016 and Windows 10, version 1607
Компонент или функцияFeature/functionality | Новинка или обновлениеNew or updated | СводкаSummary |
---|---|---|
Шифрование SMBSMB Encryption | ОбновленоUpdated | Шифрование SMB 3.1.1 в режиме AES-GCM выполняется быстрее, чем подписывание SMB или шифрование SMB предыдущей версии с использованием AES-CCM.SMB 3.1.1 encryption with Advanced Encryption Standard-Galois/Counter Mode (AES-GCM) is faster than SMB Signing or previous SMB encryption using AES-CCM. |
Кэширование каталоговDirectory Caching | СоздатьNew | SMB 3.1.1 включает дополнительные возможности для кэширования каталогов.SMB 3.1.1 includes enhancements to directory caching. Клиенты Windows теперь могут кэшировать каталоги гораздо большего размера (приблизительно с 500 000 записей).Windows clients can now cache much larger directories, approximately 500K entries. Клиенты Windows могут выполнять запросы к каталогу, используя буферы размером в 1 МБ, чтобы сократить круговые пути и увеличить производительность.Windows clients will attempt directory queries with 1 MB buffers to reduce round trips and improve performance. |
Целостность предварительной проверки подлинностиPre-Authentication Integrity | СоздатьNew | В SMB 3.1.1 целостность предварительной проверки подлинности обеспечивает улучшенную защиту от атак типа «злоумышленник в середине», при которых несанкционировано изменяются подключения SMB и сообщения проверки подлинности.In SMB 3.1.1, pre-authentication integrity provides improved protection from a man-in-the-middle attacker tampering with SMB’s connection establishment and authentication messages. Дополнительные сведения см. в статье SMB 3.1.1 Pre-authentication integrity in Windows 10 (Целостность предварительной проверки подлинности с SMB 3.1.1 в Windows 10).For details, see SMB 3.1.1 Pre-authentication integrity in Windows 10. |
Улучшения в шифровании SMBSMB Encryption Improvements | СоздатьNew | SMB 3.1.1 предоставляет механизм для согласования алгоритма шифрования при каждом соединении с вариантами для AES-128-CCM и AES-128-GCM.SMB 3.1.1 offers a mechanism to negotiate the crypto algorithm per connection, with options for AES-128-CCM and AES-128-GCM. AES-128-GCM используется по умолчанию для новых версий Windows, в то время как для более старых версий продолжается использование AES-128-CCM.AES-128-GCM is the default for new Windows versions, while older versions will continue to use AES-128-CCM. |
Поддержка последовательного обновления кластераRolling cluster upgrade support | СоздатьNew | Позволяет последовательно обновлять кластер, используя SMB для поддержки различных максимальных версий SMB для кластеров в процессе обновления.Enables rolling cluster upgrades by letting SMB appear to support different max versions of SMB for clusters in the process of being upgraded. Дополнительные сведения об обмене данными SMB с помощью различных версий (диалектов) протокола см. в статье Controlling SMB Dialects (Управление диалектами SMB).For more details on letting SMB communicate using different versions (dialects) of the protocol, see the blog post Controlling SMB Dialects. |
Поддержка клиентов SMB Direct в Windows 10SMB Direct client support in Windows 10 | СоздатьNew | Windows 10 Корпоративная, Windows 10 для образовательных учреждений и Windows 10 Pro для рабочих станций теперь предусматривают поддержку клиентов SMB Direct.Windows 10 Enterprise, Windows 10 Education, and Windows 10 Pro for Workstations now include SMB Direct client support. |
Встроенная поддержка вызовов API FileNormalizedNameInformationNative support for FileNormalizedNameInformation API calls | СоздатьNew | Добавлена встроенная поддержка для запросов нормализованного имени файла.Adds native support for querying the normalized name of a file. Дополнительные сведения см. в статье о FileNormalizedNameInformation.For details, see FileNormalizedNameInformation. |
Дополнительные сведения см. в статье What’s new in SMB 3.1.1 in the Windows Server 2016 Technical Preview 2 (Новые возможности SMB 3.1.1 в Windows Server 2016 (техническая версия 2)).For additional details, see the blog post What’s new in SMB 3.1.1 in the Windows Server 2016 Technical Preview 2.
Автоматическое соединение с сетевой папкой со стороны STB
- Во Встроенном портале зайти в Главное окно ⇒ Home Media ⇒ Сетевое окружение (Network) ⇒ WORKGROUP
2. В папке WORKGROUP отображаются сетевые компьютеры рабочей группы.Откройте ярлык необходимого сетевого компьютера — My_Computer (в разделе My_Computer отображаются папки одноименного сетевого компьютера, для которых открыт доступ).
3. Чтобы убедиться, что автоматическое определение сетевого ресурса состоялось и проверить тип протокола необходимо выделить папку и воспользоваться кнопкой «i» (INFO) на ПДУ:
4. Открыть папку Video_E1. Внутри папки пройти по пути, по которому находится медиа-файл, который необходимо воспроизвести.
5. Если для папки установлен доступ по паролю, либо по каким-либо причинам STB не может «примонтировать» папку (то есть получить к ней доступ — см. раздел ), то при попытке открыть данную папку открывается окно Network connection.
Для авторизации необходимо выбрать ОК — открывается окно Authorization, в котором следует ввести параметры доступа к папке: Login и Password.
6. Запустить медиа-файл.
Запуск демонов
Имеется два демона SMB: /usr/sbin/smbd
и /usr/sbin/nmbd. Вы можете запустить демоны Samba из
inetd или как автономный процесс. Samba будет
отвечать чуть быстрее в случае, если она
запущена как автономный процесс.
Иногда
бывает необходимо проверить наличие в
файле /etc/services примерно таких строк:
netbios-ns 137/tcp nbns netbios-ns 137/udp nbns netbios-dgm 138/tcp nbdgm netbios-dgm 138/udp nbdgm netbios-ssn 139/tcp nbssn
Убедитесь, что все они
не закомментированы. В зависимости от
вашего дистрибутива вам, вероятно, даже
понадобится добавить их в этот файл. Samba не сможет привязаться к
соответствующим портам, до тех пор пока
этих строк не будет в файле /etc/services.
Для запуска демонов из
inetd поместите следующие строки в
конфигурационный файл inetd, /etc/inetd.conf:
# SAMBA NetBIOS services (for PC file and print sharing) netbios-ssn stream tcp nowait root /usr/sbin/smbd smbd netbios-ns dgram udp wait root /usr/sbin/nmbd nmbd
Затем перезапустите
демон inetd, выполнив команду:
kill -HUP 1 `cat /var/run/inetd.pid`
Для запуска демонов из
системных стартовых скриптов поместите
следующий скрипт в файл /etc/rc.d/init.d/smb (для
дистрибутива RedHat) или /etc/rc.d
(для дистрибутива Suse
Linux) и
создайте на него символические ссылки с
именами вида /etc/rc.d/rcX.d/S91smb
(запускает сервисы SMB в
многопользовательском режиме), /etc/rc.d/rcX.d/K91smb (убивает сервисы SMB при
выключении), /etc/rc.d/rc6.d/K91smb (убивает сервисы SMB
при перезагрузке), где X
— номер загрузочного уровня системы,
обычно это цифра 2 или 3.
#! /bin/sh . /etc/rc.config # Determine the base and follow a runlevel link name. base=${0##*/} link=${base#*} # Force execution if not called by a runlevel directory. test $link = $base && START_SMB=yes test "$START_SMB" = "yes" || exit 0 # The echo return value for success (defined in /etc/rc.config). return=$rc_done case "$1" in start) echo -n "Starting SMB services:" startproc /usr/sbin/nmbd -D || return=$rc_failed startproc /usr/sbin/smbd -D || return=$rc_failed echo -e "$return" ;; startd) echo -n "Starting SMB services:" startproc /usr/sbin/nmbd -D -d 10 || return=$rc_failed startproc /usr/sbin/smbd -D -d 10 || return=$rc_failed echo -e "$return" ;; stop) echo -n "Shutting down SMB services:" killproc -TERM /usr/sbin/nmbd || return=$rc_failed killproc -TERM /usr/sbin/smbd || return=$rc_failed echo -e "$return" ;; restart|reload) $0 stop && $0 start || return=$rc_failed ;; status) echo -n "Checking for service smb: " checkproc /usr/sbin/nmbd && echo -n "OK " || echo -n "No process " checkproc /usr/sbin/smbd && echo "OK " || echo "No process" ;; *) echo "Usage: $0 {start|stop|restart|reload|status}" exit 1 esac # Inform the caller not only verbosely and set an exit status. test "$return" = "$rc_done" || exit 1 exit 0
Если при старте Samba вы
получаете сообщение, в котором говорится,
что демон не может подключиться к порту 139,
то скорее всего у вас уже есть запущенные
процессы Samba, которые не были завершены.
Посмотрите список процессов (используя
команду ‘ps ax | grep mbd’) для того, чтобы
определить, есть ли еще запущенные сервисы
Samba. Если же демоны отказываются
запускаться по каким-либо другим причинам,
то вероятнее всего этот скрипт не подходит
к вашему UNIX/Linux
и вам придется еще раз покопаться в
документации, что-то в нем поправить, а
может быть, и переписать.
Disabling SMB 1.0
The legacy computer browser service and Remote Administration Protocol features in SMB 1.0 are now separate, and they can be eliminated. These features are still enabled by default, but if you do not have older SMB clients, such as computers running Windows Server 2003 or Windows XP, you can remove the SMB 1.0 features to increase security and potentially reduce patching.
Note
SMB 2.0 was introduced in Windows Server 2008 and Windows Vista. Older clients, such as computers running Windows Server 2003 or Windows XP, do not support SMB 2.0; and therefore, they will not be able to access file shares or print shares if the SMB 1.0 server is disabled. In addition, some non-Microsoft SMB clients may not be able to access SMB 2.0 file shares or print shares (for example, printers with “scan-to-share” functionality).
Before you start disabling SMB 1.0, you’ll need to find out if your SMB clients are currently connected to the server running SMB 1.0. To do this, enter the following cmdlet in Windows PowerShell:
Note
You should run this script repeatedly over the course of a week (multiple times each day) to build an audit trail. You could also run this as a scheduled task.
To disable SMB 1.0, enter the following script in Windows PowerShell:
Note
If an SMB client connection is denied because the server running SMB 1.0 has been disabled, event ID 1001 will be logged in the Microsoft-Windows-SmbServer/Operational event log.
7. Включите или отключите SMB1 и SMB2 с помощью командной строки Windows 10
CMD или командная строка также становятся неотъемлемым решением для управления протоколом SMB в Windows.
Шаг 1 В случае SMB1 мы можем выполнить следующее в командной строке от имени администратора:
Обнаружить SMB1
sc.exe запрос lanmanworkstation
Отключить SMB1
Конфигурация sc.exe lanmanworkstation зависимость = bowser / mrxsmb20 / nsi Конфигурация sc.exe mrxsmb10 start = отключено
Включить SMB1
Конфигурация sc.exe lanmanworkstation зависимость = bowser / mrxsmb10 / mrxsmb20 / nsi Конфигурация sc.exe mrxsmb10 start = auto
Шаг 2 В случае SMB2 мы будем использовать следующее:
Обнаружить SMB2
sc.exe запрос lanmanworkstation
Включить SMB2
Конфигурация sc.exe lanmanworkstation зависимость = bowser / mrxsmb10 / mrxsmb20 / nsi Конфигурация sc.exe mrxsmb20 start = auto
Отключить SMB2
Конфигурация sc.exe lanmanworkstation зависимость = bowser / mrxsmb10 / nsi Конфигурация sc.exe mrxsmb20 start = отключено
Мы протестировали различные методы для полного управления протоколом SMB, помня, что SMB1 устарел по указанным причинам.
Как проверить версию SMB в Windows
Прежде всего, если у вас Windows 7 , вам не следует отключать SMB v2. Это связано со следующими причинами:
- Составление запроса — позволяет отправлять несколько запросов SMB 2 как один сетевой запрос
- Больше чтения и записи — лучшее использование более быстрых сетей
- Кэширование свойств папок и файлов — клиенты хранят локальные копии папок и файлов
- Долговечные ручки — позволяют подключению прозрачно переподключаться к серверу при временном отключении
- Улучшена подпись сообщений — HMAC SHA-256 заменяет MD5 в качестве алгоритма хеширования
- Улучшенная масштабируемость для обмена файлами — значительно увеличилось количество пользователей, общих ресурсов и открытых файлов на сервер
- Поддержка символических ссылок
- Модель аренды клиентских блокировок — ограничивает объем данных, передаваемых между клиентом и сервером, повышает производительность в сетях с высокой задержкой и повышает масштабируемость SMB-серверов.
- Поддержка большого MTU — для полноценного использования 10-гигабайтного (ГБ) Ethernet
- Повышенная энергоэффективность — клиенты, которые имеют открытые файлы на сервере, могут спать.
Даже если вы работаете в Windows 8.1 или Windows 10 , вам не следует отключать SMB v3 или SMB v2, поскольку, помимо указанных выше проблем, вы можете столкнуться со следующими проблемами тоже, которые идут с отключением SMB v3:
- Прозрачное аварийное переключение — клиенты повторно подключаются без перерыва к узлам кластера во время обслуживания или аварийного переключения
- Scale Out — одновременный доступ к общим данным на всех узлах файлового кластера
- Многоканальный — агрегирование пропускной способности сети и отказоустойчивости, если доступно несколько путей между клиентом и сервером.
- SMB Direct — добавляет поддержку сети RDMA для очень высокой производительности, с низкой задержкой и низкой загрузкой процессора
- Шифрование — обеспечивает сквозное шифрование и защищает от прослушивания в ненадежных сетях.
- Лизинг каталогов — улучшает время отклика приложений в филиалах за счет кэширования
- Оптимизация производительности — оптимизация для небольших случайных операций чтения/записи.
Способы проверки, какая версия SMB установлена на Сервере.
Мы будем использовать следующие методы, чтобы проверить, какая версия SMB установлена на вашем компьютере:
- Метод PowerShell.
- Метод редактора реестра.
1] Метод PowerShell
Если вы хотите проверить, какую версию SMB вы используете, вы можете просто ввести следующую команду в PowerShell:
SMB v1 Windows 10 и Windows 8.1
Get-WindowsOptionalFeature –Online –FeatureName SMB1Protocol
SMB v2 для Windows 10 и Windows 8.1
Get-SmbServerConfiguration | Выберите EnableSMB2Protocol
SMB v1 для Windows 7
Get-Item HKLM: \ SYSTEM \ CurrentControlSet \ Services \ LanmanServer \ Parameters | ForEach-Object {Get-ItemProperty $ _. Pspath}
SMB v2 для Windows 7
Get-ItemProperty HKLM: \ SYSTEM \ CurrentControlSet \ Services \ LanmanServer \ Parameters | ForEach-Object {Get-ItemProperty $ _. Pspath}
Если он возвращает значение как True , он включен, иначе отключен.
2] Метод редактора реестра
Введите regedit в поле Начать поиск и нажмите Enter. После открытия редактора реестра перейдите к следующему
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ LanmanServer \ Параметры
Теперь, если у вас есть DWORD с именами SMB1 или SMB2 , проверьте их значения.
Если для него установлено значение 0, оно отключено.
И в любом другом случае он включен.
Способы проверить, какая версия SMB установлена на клиентах.
Мы будем использовать следующие методы, чтобы проверить, какая версия SMB установлена на вашем компьютере:
- Метод PowerShell.
- Метод редактора групповой политики.
1] Метод PowerShell
Итак, если вы хотите проверить, какая версия SMB вы используете, вы можете просто ввести следующее в командной строке с привилегиями уровня администратора,
SMB v1 Windows 10 и Windows 8.1
sc.exe qc lanmanworkstation
SMB v2 для Windows 10 и Windows 8.1
sc.exe qc lanmanworkstation
2] Метод редактора групповой политики
Стоит отметить, что этот метод не будет работать в Windows 10 Home или аналогичной редакции Windows 8 или Windows 7.
Откройте окно «Выполнить», введите gpedit.msc и нажмите Enter, чтобы открыть редактор локальной групповой политики. Перейдите по следующему пути:
В разделе Реестр найдите элемент реестра со следующими свойствами:
Если значение данных установлено в 4, SMB отключен.
Для детального чтения посетите microsoft.com.
Связанное чтение . Почему и как отключить SMB1 в Windows 10/8/7.