Ограничивем доступ к дискам на терминальном сервере

Ограничиваем доступ к дискам на терминальном сервере

Итак. Потребовалось ограничить терминальным пользователям доступ к дискам средствами групповой политики AD.
С одним условием. Один диск необходимо оставить.
И все бы ничего. Но в  GPO Windows Server 2012 R2 нет такого пункта

Есть только:

  • Ограничить доступ к дискам A, B, C и D
  • Ограничить доступ к дискам A, B и C
  • Ограничить доступ к дискам A и B
  • Ограничить доступ ко всем дискам

Будем добавлять строчку:

  • Ограничить доступ к дискам кроме V

Первым делом разберемся с административными шаблонами.

Чтобы знать что где находится, нам необходимо настроить Централизованное хранилище административных шаблонов (Group Policy Central Store)

Идем на сайт Microsoft и качаем готовые шаблоны для Windows 8 и Windows Server 2012
Administrative Templates (.admx) for Windows 8.1 and Windows Server 2012 R2

https://www.microsoft.com/en-us/download/details.aspx?id=41193

Ставим по умолчанию методом "далее далее"

Идем по пути C:\Program Files (x86)\Microsoft Group Policy\Windows 8.1-Windows Server 2012 R2\ и копируем папку PolicyDefinitions в папку C:\Windows\SYSVOL\sysvol\ИМЯ_ДОМЕНА\Policies\

После этого открываем групповую политику и смотрим что у нас получилосьЦентрализованное хранилище административных шаблонов

Если видим слова "центральное хранилище" значит операция прошла удачно и можно продолжать.

Теперь будем добавлять пункт меню.

Нас интересует раздел:

Конфигурация пользователя -> Административные шаблоны -> Компоненты Windows -> Проводник

  • Запретить доступ к дискам через «Мой компьютер»
  • Скрыть выбранные диски из окна «Мой компьютер»

Именно в параметры этих двух разделов будет добавлен выбор "Ограничить доступ к дискам кроме V"

Открываем папку с нашим центральным хранилищем

C:\Windows\SYSVOL\sysvol\ИМЯ_ДОМЕНА\Policies\

Для начала создадим переменную с описанием строки.

Откроем для редактирования файл:

\PolicyDefinitions\ru-ru\WindowsExplorer.adml

И добавим строку

      <string id="Vonly">Ограничить доступ к дискам кроме V</string>

Должно выйти вида

* * * * * * * *
    <stringTable>
      <string id="ABCDOnly">Ограничить доступ к дискам A, B, C и D</string>
      <string id="ABConly">Ограничить доступ к дискам A, B и C</string>
      <string id="Vonly">Ограничить доступ к дискам кроме V</string>
      <string id="ABOnly">Ограничить доступ к дискам A и B</string>
      <string id="ALLDrives">Ограничить доступ ко всем дискам</string>
      <string id="ClassicShell">Включить классическую оболочку</string>
* * * * * * * *

Фактически мы добавили "переменную" Vonly.
Теперь необходимо задать ей действие.

Откроем для редактирования файл:

\PolicyDefinitions\WindowsExplorer.admx

Поиском ищем где расположено само меню. Можно искать по ABConly

И добавим строку

          
          </item>
          <item displayName="$(string.Vonly)">
            <value>
              <decimal value="65011711" />
            </value>
          </item>

Должно выйти вида

* * * * * * * *
          <item displayName="$(string.ABConly)">
            <value>
              <decimal value="7" />
            </value>
          </item>
          <item displayName="$(string.Vonly)">
            <value>
              <decimal value="65011711" />
            </value>
          </item>
          <item displayName="$(string.ABCDOnly)">
            <value>
              <decimal value="15" />
* * * * * * * *

Добавить необходимо в два места.
Эти разделы повторяются в файле дважды !!!!

65011711

Откуда взялась эта цифра ? Цифра взялась из расчета

Основная суть:
Буквы дисков представляют собой обратную последовательность, переведенную в двоичный код %)

Пример:

00000000000000000000000000  -> 0
ZYXWVUTSRQPONMLKJIHGFEDCBA

00000000000000000000000001  -> 1
ZYXWVUTSRQPONMLKJIHGFEDCBA

00000000000000000000000100  -> 4
ZYXWVUTSRQPONMLKJIHGFEDCBA

00000000000000000000000111  -> 7
ZYXWVUTSRQPONMLKJIHGFEDCBA

11110111111111111111111111  -> 65011711
ZYXWVUTSRQPONMLKJIHGFEDCBA

Что надо запретить, там 1. Что оставить, там 0. Берем двоичный ряд, и переводим его любым доступным нам способом в десятичную систему. На выходе получаем нужное нам число.
После проделанных манипуляций с редактированием файлов. Открываем GPO. И смотрим появилось ли необходимое меню.
Ограничивем доступ к дискам на терминальном сервере

Монтирование диска V

Для монтирования диска добавлен LOGON скрипт для пользователя

Редактируем файл скрипта:

disk_v.cmd
mkdir D:\REMOTE\%username%
subst v: D:\REMOTE\%username%

cacls %userprofile%\Desktop /e /d domain\%username%
cacls %userprofile%\Desktop /e /g domain\%username%:R

Две последние строки cacls, представляют из себя костыль блокирования записи на рабочий стол пользователем и здесь не обязательны. Оставил чтобы потом не искать.

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

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