Подключение сетевых дисков windows server 2019
14.03.2022
itpro
PowerShell, Windows 10, Windows Server 2019
Один комментарий
Встроенный PowerShell модуль SMBShare позволяет создавать, тонко настраивать и управлять общими сетевыми папками в Windows. В этой статье рассмотрим особенности управления сетевыми SMB папками Windows с помощью PowerShell. Вы можете использовать эти примеры для простого и быстрого управления настройками ваших файловых SMB серверов и сетевых папкок в различных сценариях автоматизации.
В модуле SMBShare доступно 42 команлета PowerShell для управления сетевыми папками. Их полный список можно вывести так:
Get-Command -Module SMBShare
Вывести текущую конфигурацию SMB сервера Windows:
Чтобы изменить эти параметры используйте командлет Set-SmbServerConfiguration:
Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force
Вывести список версий протокола SMB, использующихся активными клиентами для подключения к общим папкам на этом файловом сервере:
Чтобы ограничить пропускную способность для файлового SMB трафика, можно настроить политику QoS для SMB сервера. Например, следующая команда ограничит максимальную используемую ширину канала для SMB трафика до 10 Мб:
Set-SmbBandwidthLimit -Category Default -BytesPerSecond 10MB
Сетевые паки.
В прошлой статье мы создали пользователя и группу Public, допустим у нас в этой группе даже несколько пользователей. Для совместного использования файлами логично создать им сетевую папку(Public), где они могли-бы хранить файлы.
Так же нам потребуется роль Файловые службы и службы хранилища ( по умолчанию у меня стоит, если нет добавляем роль)
Создадим папку где нам удобно, зайдем в свойства паки, вкладка Доступ. Выберем общий доступ и добавим нашу группу Public.
Вот и все. Для всех пользователей группы Public доступна сетевая папка расположенная на сервере.
Подключение сетевых дисков с помощью командлетов SmbMapping
Командлеты форматы SbmMapping используются для управления сетевыми дисками.
Чтобы подключить удаленную сетевую папку в сетевой диск U:, выполните команду:
New-SmbMapping -LocalPath U: -RemotePath \\msk-man01\scripts -UserName kbuldogov -Password mypass –Persistent $true -SaveCredential
- Без параметра Persistent сетевой диск будет доступен только до перезагрузки компьютера;
- Параметр SaveCredential позволяет сохранить учетные данные пользователя для подключения в диспетчер учетных данных Windows Credential Manager
Вывести список подключенных сетевых папок:
Для удаления сетевого диска:
Remove-SmbMapping U: -force
Предыдущая статья Следующая статья
Вам понадобится новое приложение, чтобы открыть эту ссылку Windows Defender
14.07.2020
itpro
Active Directory, Windows 10, Windows Server 2016, Групповые политики
комментариев 26
Вы можете использовать групповые политики для гибкого подключения сетевых папок с файловых серверов в виде отдельных сетевых дисков Windows. Исторически для подключения сетевых дисков использовались логон bat скрипты с командой net use U: \\server1\share . Однако групповые политики намного гибче, отрабатывают быстрее и обновляются в фоновом режиме (не нужно выполнять перезагрузку или логоф пользователя для подключения сетевых дисков через GPO).
В этой статье мы покажем, как использовать GPO для подключения сетевых дисков в Windows: рассмотрим подключение общей сетевой папки отдела на основе групп безопасности AD и персональных сетевых дисков пользователей на сетевом хранилище.
Создайте в Active Directory новую группу для отдела менеджеров и добавьте в нее учетные записи сотрудников. Можно создать и наполнить группу из графической консоли ADUC или воспользоваться командлетами PowerShell для управления группами AD (входят в модуль AD PowerShell):
New-ADGroup "SPB-managers" -path 'OU=Groups,OU=SPB,dc=test,DC=com' -GroupScope Global -PassThru –Verbose
Add-AdGroupMember -Identity SPB-managers -Members a.novak, r.radojic, a.petrov, n.pavlov
Для создание автоматически наполняющихся групп AD можно использовать скрипт из статьи Динамические группы в Active Directory.
Предположим, у вас есть файловый сервер, на котором хранятся общие сетевые каталоги департаментов. UNC путь к общему рабочему каталогу менеджеров, который нужно подключить всем сотрудникам отдела — \\server1\share\managers .
Теперь нужно создать GPO для подключения данного сетевого каталога в виде диска.
- Action: Update (этот режим используется чаше всего);
- Location: UNC путь к каталогу, который нужно подключить;
- Label as: метка диска;
- Reconnect: сделать сетевой диск постоянным (будет переподключаться каждый раз при входе, даже если вы удалите политику – аналог параметра /persistent в net use);
- Drive Letter – назначить букву диска;
- Connect as: опция сейчас не доступна, т.к. Microsoft запретила сохранять пароли в Group Policy Preferences.
Если подключенные сетевые диски не доступны из программ, запущенных с правами администратора, нужно использовать специальный параметр реестра EnableLinkedConnections (его можно распространить через GPO).
Создадим еще одно правило политики, которое подключает персональные сетевые каталоги пользователей в виде сетевых дисков. Допустим, у вас есть файловый сервер, на котором хранятся личные папки пользователей (на каждую папку назначены индивидуальные NTFS разрешения, чтобы пользователи не могли получить доступ к чужим данным). Вы хотите, чтобы эти каталоги автоматически подключались в сеанс пользователя в виде сетевых дисков.
Создайте для каждого пользователя отдельный каталог, соответствующий его имени в AD ( sAMAccountName ) и назначьте нужные NTFS права.
Создайте еще одно правило подключения дисков в той же самой GPO.
В настройках политики укажите путь к сетевому каталогу с личными папками пользователей в виде \\server1\share\home\%LogonUser% . В качестве метки диска я указал %LogonUser% - Personal .
Полный список переменных окружения, которые можно использовать в GPP можно вывести, нажав клавишу F3.
Сохраните изменения и обновите политики на компьютерах пользователей командой:
Теперь у пользователей должны подключиться новые сетевые диски — персональные каталоги с файлового сервера. Пользователи смогут использовать их для хранения личных данных. Такой сетевой диск будет подключаться на любом компьютере, на который выполнил вход пользователь.
В Windows 10 1809 была проблема с подключением сетевых дисков, для исправления нужно установить специальный патч.
Таким образом в одной GPO вы можете создать множество отдельных параметров с различными условиями подключения сетевых дисков пользователям.
Для выборки различных критериев компьютеров или пользователей при подключении дисков используется функционал таргетинга GPP (в основе лежат wmi фильтры).
24.11.2020
itpro
Windows 10, Windows Server 2016
комментариев 13
По умолчанию, при доступе к общей сетевой папке на сервере, включенном в домен Active Directory, с компьютеров из рабочей группы (не добавленных в домен) у пользователя появляется запрос на ввод пароля доменной учетной записи. Попробуем разобраться, как разрешить анонимный доступ к общим сетевым папкам и принтерам на доменном сервере с компьютеров рабочей группы без авторизации на примере Windows 10 / Windows Server 2016.
С точки зрения безопасности не рекомендуется открывать анонимный сетевой доступ для гостевого аккаунта. Тем более нельзя включать анонимный доступ на контроллерах домена. Поэтому перед включением анонимного доступа попробуйте выбрать более правильный путь – включение компьютеров рабочей группы в домен, или создайте для всех пользователей рабочей группы персональные учётные записи в домене. Это гораздо правильнее с точки зрения предоставления и управления доступом.
Создать сетевую папку Windows с помощью PowerShell
Чтобы вывести полный список сетевых папок, доступных на компьютере, выполните:
На этом компьютере открыт доступ к административным общим ресурсам и к каталогу Distr.
Чтобы создать новую общую сетевую папку, выполните команду:
New-SmbShare -Name Scripts -Path C:\PS -FullAccess winitpro\spb_admins, winitpro\msk-man01$ -ChangeAccess "winitpro\msk-man01_script_rw" -ReadAccess “$env:USERDOMAIN\domain users” –description “Collection of management PowerShell scripts”
В этом примере мы создали сетевую папку и предоставили права доступа доменным группам и одному компьютеру.
Дополнительно при создании папки можно использовать такие параметры:
- -CachingMode [None|Manual|Programs|Documents|BranchCache] – задать режим кэширования для офлайн доступа (автономных файлов);
- -EncryptData $True – включить шифрование SMB трафика;
- -FolderEnumerationMode [AccessBased | Unrestricted] – включить опцию перечисления на основании доступа (Access-based Enumeration). Позволяет скрыть в сетевой папке объекты, на которых у пользователя нет доступа;
- -CompressData $True – включить сжатие при передаче файлов по SMB;
- -ConcurrentUserLimit 50 – позволяет ограничить количество одновременных подключений к папке (по умолчанию 0, не ограничено);
- -Temporary – создать временную сетевую папку (пропадет после следующей перезагрузки Window).
Полный список настроек сетевой папки можно вывести:
Get-SmbShare -Name scripts| select *
Чтобы удалить сетевую папку:
Добавить в список доступа сетевой папки разрешения на запись для указанного пользователя:
Grant-SmbShareAccess -Name Scripts -AccountName "winitpro\kbuldogov" -AccessRight Change –force
Вывести текущий список доступа к общей папке:
Удалить группу из списка доступа:
Revoke-SmbShareAccess -Name Scripts -AccountName Everyone –Force
Принудительный запрет на доступ к общей папке (запрещающее разрешение имеет более высокий приоритет):
Block-SmbShareAccess -Name Scripts -AccountName winitpro\ExtUsers -Force
В большинстве случаев на уровне сетевой папки предоставляют доступ Everyone RW, а фактически права доступа к папке определяются на уровне NTFS.
Текущий NTFS ACL для сетевой папки можно получить с помощью команды:
Чтобы изменить права доступа, используйте Set-Acl (подробнее про управление NTFS разрешениями с помощью PowerShell).
Управление открытыми файлами в сетевой папке
Командлеты модуля SMBShare можно использовать для просмотра списка файлов, открытых клиентами в сетевой папке на файловом сервере.
Вывести список открытых файлов с именами пользователей, именами компьютеров (IP адресами), и путями к файлам:
Вывести список файлов, открытых определённым пользователем:
Get-SMBOpenFile –ClientUserName "corp\kbuldogov" |select ClientComputerName,Path
Закрыть файл, открытый и заблокированный пользователем:
$sessn = New-CIMSession –Computername msk-fs01
Get-SMBOpenFile -CIMSession $sessn | where | Close-SMBOpenFile -CIMSession $sessn
Теневые копии.
Папку мы создали, но встает вопрос о бэкапа файлов. Кто то может случайно удалить например или изменить важный файл. Самый простой вариант это включение Теневых копий на диске Volume Shadow Copy Service (VSS) .
- По-умолчанию максимальное количество хранимых снапшотов для диска – 64. При превышении этого значения, служба VSS начинает циклическую перезапись теневых копий, удаляя самые ранние снапшоты.
- Под теневые копии система выделяет 10% емкости раздела, однако это значение можно изменить.
- Теневое копирование включается для тома целиком, и включить его для отдельной общей папки невозможно.
- Microsoft не рекомендует создавать снапшоты чаще, чем раз в час (однако, это всего лишь рекомендации).
Для включения данной функции переходим в Управление компьютером — Общие папки — Все задачи.
Ну и конечно нам не мешало бы настроить расписание :
Тут мы выбрали ежедневно с 9.00 до 18.00 каждые 60 минут делать копии.
Обратите внимание, что для восстановления не требуется права Администратора. То есть любой пользователь имеющий доступ может восстановить старую версию папки ( свойства — предыдущие версии).
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Предоставление анонимного доступа к общему сетевому принтеру
Чтобы разрешить анонимный доступ к сетевому принтеру на вашем компьютере, нужно открыть свойства общего принтера в Панели управления (Панель управления\Оборудование и звук\Устройства и принтеры). На вкладке доступа отметьте опцию “Прорисовка задания печати на клиентских компьютерах” (Render print jobs on client computers).
Затем на вкладке безопасность для группы “Все” отметить все галки.
После выполнения этих действий вы сможете подключаться к общей папке (\\servername\share) и принтеру на доменном компьютере с компьютеров рабочей группы без ввода имени пользователя и пароля, т.е. анонимно.
В Windows 10 1709 и выше по умолчанию блокируется сетевой доступ к общим папкам по протоколу SMBv2 под гостевой учетной записью с ошибкой “Вы не можете получить доступ к удаленному компьютеру из-за того, что политики безопасности вашей организации могут блокировать доступ без проверки подлинности”. См. статью.
Для того, чтобы приступить к созданию общего ресурса вам следует перейти в главном окне диспетчера серверов и выбрать «Файловые службы»-> «Общие ресурсы».
Затем создаем новый общий ресурс
Общий ресурс SMB
Затем, как показано на рисунке ниже, мы видим, что нас просят сначала установить «Диспетчер ресурсов файлового сервера». Поэтому нам нужно будет снова на главной странице диспетчера серверов запустить установку ролей и компонентов и выбрать соответствующий параметр.
Затем снова выбираем создать общий ресурс, и указываем пользовательский путь, а именно место расположения сетевой папки. Я в своем примере создал папку непосредственно на диске С.
Теперь нажимаете «Далее».
При желании можно задать отдельные права на папку общего доступа. Теперь осталось еще несколько пунктов, ставите галочку «Файлы пользователя».
Квоту применять мы не будем, поэтому остается только создать полученную папку.
В результате мы видим, что папка общего доступа почти создана, остается выполнить еще несколько шагов.
Для этого открываете «Управление групповой политики»
и переходим в раздел «Default Domain Policy» -> «Изменить».
Конфигурация пользователя -> Настройка -> Конфигурация Windows -> Сопоставление дисков.
Создать -> Сопоставленный диск.
Дальше указываем адрес расположения сетевой папки, повторное подключение и присваиваем букву раздела.
Мы с вами проделали уже большую работу. Развернули сервер, настроили основные службы, создали пользователей. Давайте теперь перейдем к теме сетевого доступа. Ведь не удобно если люди будут бегать с флешками или отправлять другу другу письма.
Локальные политики анонимного доступа
На сервере (компьютере), к которому вы хотите предоставить общий доступ неавторизованным пользователям нужно открыть редактор локальной групповой политики – gpedit.msc.
Перейдите в раздел Конфигурация компьютера -> Конфигурация Windows -> Параметры безопасности -> Локальные политики -> Параметры безопасности (Computer Configuration -> Windows Settings -> Security Settings -> Local Policies -> Security Options)
Настройте следующие политики:
- Учетные записи: Состояние учётной записи ‘Гость’ (Accounts: Guest Account Status): Включен (Enabled);
- Сетевой доступ: разрешить применение разрешений “Для всех” к анонимным пользователям (Network access: Let Everyone permissions apply to anonymous users): Включен (Enabled);
- Сетевой доступ: Не разрешать перечисление учетных записей SAM и общих ресурсов (Network access: Do not allow anonymous enumeration of SAM accounts and shares): Отключен (Disabled).
В целях безопасности желательно также открыть политику “Запретить локальный вход” (Deny log on locally) в разделе Локальные политики -> Назначение прав пользователя и убедиться, что в политике указана учетная запись “Гость”.
Затем проверьте, что в этом же разделе в политике “Доступ к компьютеру из сети” (Access this computer from network) присутствует запись Гость, а в политике “Отказать в доступе к этому компьютеру из сети” (Deny access to this computer from the network) учетка Гость не должна быть указана.
Также убедитесь, что включен общий доступ к сетевым папкам в разделе Параметры -> Сеть и Интернет -> Ваше_сетевое_подключение (Ethernet или Wi-Fi) -> Изменение расширенных параметров общего доступа (Settings -> Network & Internet -> Ethernet -> Change advanced sharing options). В секции “Все сети” должен быть выбрана настройка “Включить общий доступ, чтобы сетевые пользователи могли читать и записывать файлы в общих папках” и выбрать “Отключить парольную защиту (если вы доверяете всем устройствам в вашей сети)” (см. статью о проблемах обнаружения компьютеров в рабочих группах).
Настройка анонимного доступа к общей папке
Теперь нужно настроить разрешения доступа на общей папке, к который вы хотите предоставить общий доступ. Откройте свойства папки в настройках NTFS разрешений (вкладка Безопасность) предоставьте права чтения (и, если нужно, изменения) для локальной группы «Все» («Everyone»). Для этого нажмите кнопку Изменить -> Добавить -> Все и выберите необходимые привилегии анонимных пользователей. Я предоставил доступ только на чтение.
Также на вкладке Доступ нужно предоставить права анонимным пользователям на доступ к шаре (Доступ -> Расширенная настройка -> Разрешения). Проверьте, что у группы Все есть право на Изменение и Чтение.
Теперь в редакторе локальных политик в секции Локальные политики -> Параметры безопасности нужно в политике “Сетевой доступ: разрешать анонимный доступ к общим ресурсам” (Network access: Shares that can be accessed anonymous) указать имя сетевой папки, к которой вы хотите предоставить анонимный доступ (в моем примере имя сетевой папки – Share).
Читайте также: