Windows 10 найти разрешить выборочную оценку символьных ссылок

Обновлено: 02.07.2024

Описывает лучшие практики, расположение, значения, управление политикой и соображения безопасности для параметра Создать символические ссылки политики безопасности.

Справочники

Это право пользователя определяет, могут ли пользователи создавать символическую ссылку с устройства, на которое они вошли.

Символическая ссылка — это объект файловой системы, который указывает на другой объект файловой системы. Объект, на который указывается, называется целевой. Символические ссылки прозрачны для пользователей. Ссылки отображаются как обычные файлы или каталоги, и пользователь или приложение могут действовать точно так же. Символические ссылки предназначены для обеспечения совместимости миграции и приложений с UNIX операционными системами. Корпорация Майкрософт реализовала символические ссылки, чтобы функционировать так же, как UNIX ссылки.

Предупреждение: Эта привилегия должна быть предоставлена только доверенным пользователям. Символические ссылки могут подвергать уязвимости безопасности в приложениях, которые не предназначены для их обработки. Constant: SeCreateSymbolicLinkPrivilege

Возможные значения

  • Определяемый пользователей список учетных записей
  • Не определено

Рекомендации

  • Только доверенные пользователи должны получить это право пользователя. Символические ссылки могут подвергать уязвимости безопасности в приложениях, которые не предназначены для их обработки.

Location

Computer Configuration\Windows Settings\Security Settings\Local Policies\User Rights Assignment

Значения по умолчанию

По умолчанию члены группы Администраторы имеют это право.

В следующей таблице приведены фактические и действующие значения по умолчанию для этой политики. Значения по умолчанию также можно найти на странице свойств политики.

Тип сервера или объект групповой политики Значение по умолчанию
Default Domain Policy Не определено
Политика контроллера домена по умолчанию Не определено
Параметры по умолчанию для автономного сервера Не определено
Действующие параметры по умолчанию для контроллера домена Администраторы
Действующие параметры по умолчанию для рядового сервера Администраторы
Действующие параметры по умолчанию для клиентского компьютера Администраторы

Управление политикой

В этом разделе описываются различные функции и средства, доступные для управления этой политикой.

Перезагрузка устройства не требуется для того, чтобы этот параметр политики был эффективным.

Изменения прав пользователя вступают в силу при его следующем входе в учетную запись.

Групповая политика

Параметры применяются в следующем порядке с помощью объекта групповой политики (GPO), который перезаписывал параметры на локальном компьютере при следующем обновлении групповой политики:

  • Параметры локальной политики
  • Параметры политики сайта
  • Параметры политики домена
  • Параметры политики подразделения

Когда локальный параметр серый, он указывает, что GPO в настоящее время контролирует этот параметр.

Средства командной строки

Этот параметр можно использовать в сочетании с параметром символической системы файлов ссылок, которым можно управлять с помощью средства командной строки для управления типами symlinks, разрешенными на устройстве. Дополнительные сведения введите fsutil behavior set symlinkevaluation /? в командной подсказке.

Вопросы безопасности

В этом разделе описывается, каким образом злоумышленник может использовать компонент или его конфигурацию, как реализовать меры противодействия, а также рассматриваются возможные отрицательные последствия их реализации.

Уязвимость

Пользователи, у которых есть право пользователя создать символические ссылки, могут случайно или злонамеренно подвергать вашу систему символическим атакам ссылок. Символические атаки ссылок можно использовать для изменения разрешений в файле, для искажения данных, для уничтожения данных или для атаки doS.

Противодействие

Не назначьте право пользователя создавать символические ссылки стандартным пользователям. Ограничить это право доверенными администраторами. Вы можете использовать команду fsutil для создания параметра символической системы файлов ссылок, которая управляет типами символических ссылок, которые можно создать на компьютере.

date

03.03.2021

directory

PowerShell, Windows 10, Windows Server 2016

comments

комментариев 6

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

Символические ссылки используются в Windows довольно часто для системных файлов и каталогов. Пользователь может их применять, когда нужно перенести часть “тяжелых” файлов на другой диск, но чтобы Windows считала, что файлы все еще находятся в исходном каталоге (например в ситуациях, когда нужно экономить место на SSD, перенеся некоторые каталоги на более медленный и емкий SSD, не нарушая работоспособности программ). Можно использовать симлинки на SMB файловом сервере, когда каталоги с разных LUN должны быть доступны через одну точку входа.

В Windows есть три типа файловых ссылок для NTFS томов: жесткие, мягкие (симлинки), точки соединения (Junction point).

  • Hard Links (жесткие ссылки) – могут указывать только на локальный файл, но не на папку. Такой файл – это ссылка на другой файла на этом же диске без фактического дублирования самого файла. У него отображается такой же размер и свойства, как у целевого файла (но реальное место на диске он не занимает);
  • Junction Points (Directory Hard Link, точка соединения) – могут указывать только на папку (на этом же или на другом разделе);
  • Symbolic Links (мягкая ссылка, симлинк) – могут указывать на локальный файл, папку и сетевой каталог на удаленном компьютере (UNC), поддерживаются относительные пути.

В подавляющем большинстве случаев вам будет достаточно функционала symbolic link, как наиболее универсального средства создания ссылки на любой объект.

Как создать символическую ссылку в Windows?

Для создания символических и жестких ссылок в Windows можно использовать встроенную утилиты mklink или PowerShell.

mklink утилита для создания симлинков в windows

Чтобы использовать mklinkдля создания символических ссылок нужно запустить командную строку с правами администратора. Иначе при запуске команды появится ошибка “ You do not have sufficient privilege to perform this operation ”.

параметр групповой политики Create Symbolic Links

Создадим в каталоге C:\PS символическую ссылку на файл notepad.exe:

mklink C:\PS\note.exe c:\Windows\System32\notepad.exe

Теперь для запуска процесса notepad.exe можно использовать символическую ссылку note.exe.

Теперь создадим в этом каталоге симлинк на другой каталог на этом же диcке:

mklink /D “C:\PS\Downloads” “C:\Users\user\Downloads”

пример использования mklink для создание символьных ссылок в windows

Теперь при переходе в каталог C:\PS\Downloads вы будете видеть содержимое каталога, на который он ссылается.

символическая ссылка на каталог в windows

Выведем содержимое каталога C:\PS:

Dir вывести информацию о всех symlink в папке

Как вы видите, в атрибутах некоторых файлов указано, что это symlink/simlinkd. Также указан объект, на который они ссылаются. В Windows File Explorer симлинки отображаются с иконками ярлыков, а в их свойствах можно посмотреть целевой объект на который они ссылаются.

Также можно создать символически ссылки в Windows 10 с помощью PowerShell (в этом примере я использую относительные пути, чтобы создать символическую ссылку):

New-Item -ItemType SymbolicLink -Path ".\test\tmpfiles" -Target "..\tmp\files"

создать SymbolicLink с помощью powershell

Можно создать символическую ссылку на сетевую папку на удаленном компьютере/сервере. Адрес сетевой папки нужно указывать в формате UNC. Следующий пример создаст симлинк на сетевой каталог на сервере:

mklink /D c:\ps\share \\mskfs01\Share

Например, подключим административную шару C$ с удаленного компьютера по IP адресу:

mklink /D c:\remotePC\server1 \\192.168.31.15\С$

Если при доступе к сетевой папке через симлинк, вы получили ошибку

проверьте разрешенные способы использования символических ссылок на вашем компьютере:

fsutil behavior query SymlinkEvaluation

fsutil behavior query SymlinkEvaluation

Чтобы включить использование символических ссылок на удаленные ресурсы, выполните команды:

fsutil behavior set SymlinkEvaluation R2R:1
fsutil behavior set SymlinkEvaluation R2L:1

Вы можете работать с символическими ссылками, как с обычными объектами файловой системы, можно переименовать, переносить или удалить их. Система автоматически изменит настройки таких симлинков, чтобы они указывали на верные целевые объекты.

Для удаления симлинков используются обычные команды, как и для удаления файлов:

Del c:\ps\note.exe
RD c:\ps\downloads

Как найти и вывести все символические ссылки на диске?

В Windows нет простых инструментов для просмотра и управления всеми симлинками на диске.

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

dir /AL /S C:\ | find "SYMLINK"

вывести все симлинке на диске в windows

Также можно вывести список всех символических ссылок на диске с помощью PowerShell. Для этого нужно просканировать все каталоги и найти NTFS объекты с атрибутом ReparsePoint:

Get-ChildItem -Path C:\ -Force -Recurse -ErrorAction 'silentlycontinue' | Where

Ошибка the symbolic link cannot be followed because its type is disabled

Бывает так, что вы переходите в сетевую шару, знаете, что у вас точно есть туда доступ на все папки, пытаетесь ее открыть, но получаете ошибку:

the symbolic link cannot be followed because its type is disabled

Ошибка the symbolic link cannot be followed because its type is disabled

Тут неопытный администратор подумаем, что проблема на уровне прав, а опытный увидит, что отключены символические ссылки для удаленного доступа.

Символьная ссылка, также называемая программная ссылка, представляет собой особый вид файла, который указывает на другой файл, подобно ярлыку в Windows или псевдониму Macintosh . В отличие от жесткой ссылки, символическая ссылка не содержит данных в целевом файле. Он просто указывает на другую запись где-нибудь в файловой системе. Это различие придает символическим ссылкам определенные качества, которых нет у жестких ссылок, например возможность ссылаться на каталоги или файлы на удаленных компьютерах

Символическая ссылка в Windows

Как проверить статус доступа к символическим ссылкам

Тут в ход вступает знакомая нам утилита fsutil, о которой я уже рассказывал. Недавние примеры ее применения:

Чтобы просмотреть текущий статус параметров Symlink в вашей системе, выполните следующую команду из командной строки с повышенными привилегиями (администратора):

  • Local to local symbolic links are enabled - говорит, что локальные символические ссылки, открываются локально
  • Local to remote symbolic links are enabled - говорит, что локальные символические ссылки, открываются удаленно
  • Remote to local symbolic links are disabled - Удаленные символические ссылки открываются локально, это нужно включить
  • Remote to remote symbolic links are disabled - Удаленные символические ссылки открываются удаленно, это нужно включить

Как проверить статус доступа к символическим ссылкам

Чтобы устранить ошибку "the symbolic link cannot be followed because its type is disabled" нужно включить четвертый пункт "Remote to remote symbolic links are disabled". Для этого выполните команду:

Это включит удаленные символьные ссылки на удаленном хосте. Вы не увидите никакого ответа, если команда была успешной. Чтобы убедиться, что настройка обновлена, введите оценочный запрос еще раз.

Remote to remote symbolic links are disabled

Если вам также необходимо включить оценку удаленного и локального канала, вы можете заменить R2R:1 на R2L:1 в команде настройки поведения.

Сложно сказать, какими функциями не обладает компьютер на базе Windows 10. Кажется, разработчики предусмотрели все, что только может понадобиться пользователю. Так, например, владельцам ПК доступна символьная ссылка на операционной системе Windows 10. Подавляющему большинству пользователей данная опция незнакома, а потому важно рассказать о ней более подробно, чтобы понять, при каких сценариях может пригодиться Symbolic link.

Что это такое и для чего нужно?

Многие владельцы компьютеров не ограничиваются одним накопителем, а используют сразу два диска. Чаще всего встречается комбинация HDD и SSD, когда системные данные и программы хранятся на шустром твердотельном накопителе, а мультимедийная информация остается на вместительном жестком диске. В этой связи пользователям нередко приходится переносить данные с одного накопителя на другой, а любой диск, как известно, от частой перезаписи начинает быстро изнашиваться.

И что делать, если файл располагается на HDD, а вы хотите его запускать с SSD, но в то же время желаете не расходовать оставшийся ресурс перезаписи?

В подобной ситуации на помощь готова прийти символьная ссылка, которая представляет собой ярлык с информацией о расположении данных. Воспользовавшись подобным инструментом, вы сможете заставить Windows думать, что файл находится на диске D, но при этом запускать его с накопителя C и наоборот.

На заметку. Ссылку можно создать не только для файлов, но и целых папок. То же самое касается приложений и других видов данных, доступных на компьютере.

Говоря о Symbolic link, стоит отдельно рассказать, чем она отличается от обычного ярлыка. На самом деле, если мы подразумеваем мягкую ссылку, то она не имеет никакой разницы в сравнении с привычным ярлыком. То есть двойной клик по иконке приводит к перемещению пользователя в исходное расположение файла/папки. Другое дело, если речь идет о жесткой ссылке, которая выглядит как настоящая папка (файл), но при этом располагается в другом месте. Далее мы будем говорить о двух видах Symbolic link.

screenshots_2

Как создать символьную ссылку в Windows 10

Создать Symbolic link можно встроенными средствами компьютера. Всего выделяется два способа, каждый из которых ориентирован на определенную группу пользователей. Проанализируйте оба варианта, чтобы выбрать для себя наиболее подходящий.

Mklink

Чаще всего символическая ссылка создается при помощи инструмента Mklink через Командную строку. Выглядит процедура следующим образом:

  • Щелкните ПКМ по значку «Пуск».
  • Откройте Командную строку.

screenshots_3

  • Для создания мягкой ссылки на конкретный файл введите запрос формата «mklink X», где вместо «X» будет указано имя файла. Для обработки команды не забудьте нажать клавишу «Enter».
  • Если речь идет о конкретном каталоге, воспользуйтесь запросом «mklink /D X», подставив вместо «X» конкретную директорию. Например, «C:\Games».
  • Для жестких аналогов используйте команды формата «mklink /H X» и «mklink /J X» соответственно.

screenshots_4

Если подобный способ создания символических ссылок кажется вам слишком сложным, предлагаем обратиться к альтернативному варианту.

Применение графического инструмента

Также воспользоваться инструментом можно без помощи Командной строки, а напрямую через «Проводник». Но предварительно нужно будет установить на компьютер Link Shell Extension. Дальнейшая инструкция выглядит следующим образом:

  • Щелкните ПКМ по нужному файлу/каталогу.
  • Выберите опцию «Запомнить источник ссылки».

screenshots_5

  • Откройте директорию, куда планируется поместить Symbolic link.
  • Кликните ПКМ.
  • Выберите «Поместить как», а затем – «Символическую ссылку».

screenshots_6

Отметим, что Link Shell Extension дает возможность использования других линков, поэтому сначала изучите функционал программы, после чего обращайтесь к нему при первой необходимости.

Как создаются и работают ссылки Windows, или что можно сделать при помощи mklink.

СПРАВКА, или что такое ссылка для Windows?

documents and settings windows xp

А вот она в Windows 7:

documents and settings windows7

загляните внутрь папки Documents and Settings: ничего не замечаете?

А в Windows 10 этой папки нет? Вскроем скрытые файлы и папки:

documents and settings нет в windows 10 ?

Да нет, всё на месте:

Documents and Settings в windows10

Чем отличаются символьные ссылки от стандартных ярлыков?

Таким образом, в отличии симлинка от обычного ярлыка и кроется её основное предназначение: Windows относится к симлинку как к настоящей папке. Т.е. разницы между ними нет. Одна и та же папка может находится сразу в нескольких местах. Представьте, что у вас есть программа, файлы которой ОБЯЗАТЕЛЬНО должны находиться по адресу C:\Program Files. Только системный диск забит и места на диске С уже нет. А вот другой диск или том под буквой, например, D полупуст. Вам нужно лишь перетащить вашу программу на диск D, создав попутно папку типа D:\Программа, создав в папке C:\Program Files симлинк на D:\Программа. И, если в вашем арсенале есть такие инструменты как виртуальный хранилища данных на манер like Dropbox, Google Drive, Яндекс.Диск или OneDrive, пространство рабочей зоны Windows можно серьёзно увеличить.

Создавая ссылки для Windows: mklink

справка mklink

Итак, что видно по справке?

  • mklink может создавать ссылки не только на сами папки и файлы, но и на такие же символьные ссылки
  • если не использовать аргумент /d, будет создана символьная ссылка на файл
  • если флаг /d применяется в команде, то появится символьная ссылка на папку/директорию

создать простую символическую ссылку

сохранение файла через символьную ссылку

А зачем это надо-то?

Да, казалось бы, в том варианте как описывается, разницы между созданием обычного ярлыка для файла или папки нет. Но это лишь на первый взгляд. Ну, представьте себе, что купленная только что игра требует установиться в корневую C:\Games (как обычно), требуя при том свободного места на диске С этак Гбайт 30. И при этом карта системного диска С выглядит примерно так:

диск С забит

справится с задачей в два счёта. И оп: игра-то думает, что её установили в нужную папку. А это не так, на самом деле. Какие ещё варианты? Я не особо игрок, но для меня, обладателя огромного количества виртуальных машин, которые занимают немало пространства, в такой ситуации тоже есть свои плюсы как решить проблему нехватки пространства для кучи виртуальных Windows.

Кроме того, создание ссылки подразумевает возможность быстрого к ней обращения: фактически вы создаёт новый путь. А он может быть максимально коротким. И тут в дело вступает возможность быстрого доступа из поисковой строки. Например, на одном из томов хранятся памятные фотографии, причём доступ к ним ограничен, а путь бесконечно долог для проводника. Создадим ссылку на манер:

А теперь набираем WIN + R, вводим D:\Фотки и работаем как хотим:

Ссылки Windows из mklink: о чём следует помнить?

суть символьной ссылки

ссылка помечена как Junction, а не DIR

Точки стыка (жёсткие связи), соединения и символические ссылки файловой системы NTFS

Итак, в чём основные отличия связующих ссылок?

Отличия между типами связей можно представить в таком виде:

Ну, вот такая в целом ситуация с типами внутренних связей Windows. Успехов.

Читайте также: