Содержание
С такой же проблемой посчастливилось столкнутся и мне, когда при попытке подключения с Windows 10 к Windows Server 2003 на экране начало появляться уведомление, что «Вы не можете подключится к общей папке так как она не безопасна», это конечно насторожило, но дальше идет объяснение, что «Эта общая папка работает по устаревшему протоколу SMB1».
Как оказалось, с выходом Windows 10, если не ошибаюсь, с версии 1709, Майкрософт отключили поддержку по умолчанию протокола SMB 1 и вместо него запустило новый SMB2, который является более защищённым и безопасным.
Но для тех, кто пока не может установить себе на все машины Windows 10, с протоколом SMB 2, в статье я покажу как можно обойти и избавится от появления ошибки с сообщение, что эта общая папка работает по старому протоколу SMB1 и без проблем подключиться к сетевой папке или принтеру даже на Windows XP.
Включаем протокол SMB1 для сетевого доступа
[adsense1]
Как я говорил раннее Майкрософт, по умолчанию, отключили SMB1, но пока не удаляли его полностью со своей операционной системы, а просто перевели его, скажем так, в пассивный режим.
Соответственно для того что бы воспользоваться сетевыми возможностями нужно его просто включить обратно.
- На компьютере с Windows 10 открываем «Панель управления», воспользовавшись ярлыком на рабочем столе или прописав данное словосочетание в строке «Поиск».
- Далее, в параметре «Просмотр» ставим значение «Крупные значки», если ещё не стоит, и в появившемся наборе иконок находим «Программы и компоненты».
- Выбираем с левой стороны «Включение или отключение компонентов Windows».
- В доступном перечне компонентов находим «Поддержка общего доступа к файлам SMB 1.0» и ставим напротив данной строки отметку.
- Щелкаем на «ОК» и ждем завершения выбранного компонента.
- После сообщения, что все компоненты удачно установлены перезагружаем компьютер и можно проверять результат.
Теперь, пытаясь подключится по сети к папке с общим доступом Вы уже не должны получать сообщение, что данная папка работает по устаревшему протоколу SMB 1, а без проблем попадать на необходимый компьютер.
Кстати, хочу заметить, что при подключении в Windows XP, сетевого принтера, который локально подключен к компьютеру на Windows 10, может появляться ошибка «Данное сетевое имя более не доступно».
[adsense2]
Так вот, такое сообщение на Windows XP или Server 2003 означает, в принципе, тоже самое и решается тем же способом, а именно установкой протокола SMB 1 на компьютере с Windows 10.
Уверен, что статья окажется для Вас полезной, ну а я здесь еще оставлю полезную информации о том «Как дать общий доступ папке» или «Как подключить сетевой принтер».
Общая папка работает по устаревшему протоколу SMB1
SMB1 – это протокол передачи данных, отвечающий за взаимодействие между пользователем и Сетью. Он позволяет получать удаленный доступ к принтерам, сетевым ресурсам и файлам, а также обеспечивает межпроцессорное взаимодействие. SMBv1 не используется в Windows 10, однако он играет важную роль в более ранних версиях этой операционной системы.
Дата: 05.09.2018 | | Комментарии
Казалось бы, этот протокол вполне полезен, так зачем же его отключать? Проблема заключается в его уязвимости. Серверы SMB слишком плохо защищены, из-за чего атака на них является привлекательной для злоумышленников. Именно слабые стороны SMB1 использовали взломщики, запустившие в Интернет такие известные вредоносные программы, как Petya и WannaCry.
Эти вирусы блокировали файлы, размещенные на компьютерах, функционирующих на ОС Windows, а затем отображали на экране сообщение о том, что для разблокировки необходимо заплатить определенную сумму денежных средств. С целью сохранения анонимности злоумышленники требовали оплачивать выкуп не на банковский счет, а на кошелек криптовалюты Bitcoin.
Чтобы обезопасить себя от подобных инцидентов, вам лучше отключить SMB1. Из этой статьи вы узнаете о том, что необходимо для этого сделать.
Читайте также Объединение жесткого диска на Windows 7
Для любых действий с этим протоколом нам понадобится командная строка Windows (читайте, как открыть командную строку Windows от имени администратора). Заходим в и в строке поиска набираем cmd, поиск нам покажет cmd.exe, нажимаем правой кнопкой на ней и выбираем Запуск от имени администратора
Отключаем протокол SMB в Windows 7
Отключить SMBv1. Копируем команду — sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi Нажимаем правой кнопкой в командной строке и выбираем Вставить, затем нажимаем Enter. Затем копируем и вставляем вторую команду — sc.exe config mrxsmb10 start= disabled
Отключить SMBv2 или 3. Копируем команду — sc.exe config lanmanworkstation depend= bowser/mrxsmb10/nsi Нажимаем правой кнопкой в командной строке и выбираем Вставить, затем нажимаем Enter. Затем копируем и вставляем вторую команду — sc.exe config mrxsmb20 start= disabled
Как включить протокол SMB в Windows 7
Если по какой-либо причине после операций описанных выше вы всё же решили, что хотите оставить этот протокол включенным, тогда читайте дальше.Включить SMBv1. Копируем команду — sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi Нажимаем правой кнопкой в командной строке и выбираем Вставить, затем нажимаем Enter. Затем копируем и вставляем вторую команду — sc.exe config mrxsmb10 start= auto
Читайте также как убрать выбор системы при загрузке Windows 7
Включить SMBv2 или 3. Копируем команду — sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi Нажимаем правой кнопкой в командной строке и выбираем Вставить, затем нажимаем Enter. Затем копируем и вставляем вторую команду — sc.exe config mrxsmb20 start= auto
Ваши вопросы и комментарии:
Монтирование SMB не что иное как подключение сетевой папки WIndows в Linux. SMB (Server Message Block) – сетевой протокол удаленного доступа к сетевым ресурсам (файлы, папки, принтеры и т.п.). В первой версии протокола был известен также как CIFS (Common Internet File System). Протоком SMB повсеместно используется во всех ОС Microsoft Windows.
В современных дистрибутивах Linux уже можно совершенной спокойно путешествовать по сетевым дискам. Но куда удобнее если смонтировать сетевой диск сразу в папку, да еще и на рабочем столе, красота. Я создал папку с общим доступом на сервере Hyper-V, её и буду монтировать. Монтирование SMB буду делать под специально заведенным пользователем, дабы не светить пароль админа.
Монтируемая папка
Монтируемая директория доступна только администраторам и пользователю smb (создан специально для монтирования). Сделать общую папку на сервере Windows можно двумя способами: 1 – через свойства папки; 2 – через Powershell. Через свойства папки проще и быстрее как для новичка.
Но в моем случае с сервером HyperV 2019 сработал только второй способ, через Powershell.
New-SmbShare -Name "smb_mount" -Path "F:smb_mount" -FullAccess "Administrator", "smb"
Данной командой я сделал общей папку расположенную по пути F:smb_mount и присвоил ей имя smb_mount. Права на доступ к папке выдал пользователю Administrator и smb.
Общая папка у меня доступна по пути \hvs19smb_mount, но монтировать я буду ее по ip адресу. Принципиального вопроса как монтировать нет, просто не всегда есть возможность использовать имя.
С монтируемой папкой закончили, создадим папку куда будем монтировать. Я создал папку в /opt и назвал её F (по имени диска где лежит монтируемая папка) для удобства.
sudo mkdir /opt/F
Установим набор утилит для монтирования SMB
Для Ubuntu (и прочих Debian`ов)
sudo apt-get install cifs-utils
Для Centos 8 (и прочих RPM дистрибутивов на YUM)
sudo yum install cifs-utils
Монтирование SMB
Все необходимые папки мы создали, теперь приступим к монтированию файловой системы.
sudo mount -t cifs -o username=smb,password=пароль //192.168.1.110/smb_mount /opt/F
Пройдемся по параметрам:
- -t cifs – тип файловой системы cifs (полностью совместим с SMB)
- username – пользователь у которого есть доступ к монтируемой папке (на сетевом диске). Если разрешено, можно использовать гостя, без пароля. В таком случае указываем username=guest
- password – пароль от учетной записи этого пользователя
- //192.168.1.110/smb_mount – общая папка на сервере которую монтируем
- /opt/F – папка куда монтируем.
Посмотрим что все получилось, проверим свободное место в сетевой папке
df -h
Можно использовать дополнительные возможности при монтировании, используя ключи после параметра -o. Вот некоторые из них
- rw — запись и чтение
- ro — только чтение
- iocharset=utf8 — в данной кодировке будет выводится информация;
- codepage=cp866 — кодировка используемая на сервере с общей папкой. Обычно Windows устанавливает кодировку cp866.
- vers=3.0 – принудительно указать версию подключения SMB протокола. Для безопасного подключения используйте последнюю версию.
Используя команду mount мы монтируем папку в ручном режиме и после перезагрузки монтирования не произойдет. Для автоматического монтирования папки читаем следующий раздел.
Автоматическое монтирование SMB
Для постоянного монтирования папке при старте системы необходимо внести изменения в файл /etc/fstab. При монтировании сетевого диска с SMB используется пароль. Для большей сохранности не будем указывать его в файле fstab, а сохраним в директории root.
Создадим файл с учетными данными
sudo nano /root/.cifsmnt
Добавим в файл строки: имя пользователя, пароль, домен (если используется). У меня домена нет, поэтому добавлю только имя и пароль
username=smb password=пароль domain=mydomain
Откроем файл /etc/fstab для редактирования
sudo nano /etc/fstab
Добавим новую строку в конец файла
//192.168.1.110/smb_mount /opt/F cifs user,rw,credentials=/root/.cifsmnt 0 0
Сохраним файл и перезагрузим компьютер. После этого сетевая папка будет монтироваться автоматически.
Разберем указанные параметры
- //192.168.1.110 – ip адрес сервера где находится сетевая папка
- /smb_mount – сетевая папка на указанном выше сервере
- /opt/F – папка на локальном компьютере куда будем монтировать сетевую папку
- cifs – тип монтируемой файловой системы
- user – разрешение монтировать для любого пользователя
- rw – разрешения на чтение/запись на диск при монтировании
- credentials – путь к файлу с данными учетной записи используемых для подключения по SMB
- – не проверять файловую систему при старте программой fsck
Права на папки и файлы
Примонтированный диск по умолчанию монтируется от root и разрешает запись на диск только под ним. Рассмотрим опции позволяющие изменить доступ на примонтированные папки и файлы. Также рассмотрим настройки по смене владельца смонтированной папки.
- uid – задает владельца каталога. Узнать uid пользователей можно в файле /etc/passwd
- gid – задает группу владельца каталога. Узнать gid групп можно в файле /etc/passwd
- file_mode=0777 – права на доступ к файлам. 0777 – разрешено запись/чтение всем.
- dir_mode=0777 – права на доступ к папкам. 0777 – разрешено запись/чтение всем.
Пример записи в файле /etc/fstab монтирования от моего пользователя (не root) с полным доступом ко всем файлам и папкам
//192.168.1.110/smb_mount /opt/F cifs user,rw,credentials=/root/.cifsmnt,file_mode=0777,dir_mode=0777,uid=1000,gid=1000 0 0
Размонтирование SMB
Размонтировать сетевую папку SMB можно используя команду umount
sudo umount /opt/F
В параметрах команды umount указываем директорию куда была смонтирована сетевая папка. В моем случае это /opt/F
Если смонтированная файловая система сейчас занята, появится сообщение umount: target is busy . В таком случае размонтировать получиться с ключом -l
umount /opt/F -l
Решение проблем монтирования
Если по какой либо причине после ваших попыток папка все же не монтируется, необходимо смотреть системный журнал.
grep "cifs" /var/log/syslog
В системном журнале будет указана причина ошибки монтирования. Как пример не верный логин/пароль, не установленные утилиты cifs и т.п.
Поделиться:Используемые источники:
- https://inforkomp.com.ua/windows-xp/obshhaya-papka-rabotaet-po-ustarevshemu-protokolu-smb1.html
- https://mobobzor.com/obzory-programm/windows-7/kak-otklyuchit-smb1-v-windows-7.html
- https://newadmin.ru/montirovanie-smb/