Разрешения по умолчанию для папок MachineKeys
В этой статье описываются разрешения по умолчанию для папок MachineKeys.
Применяется к: Windows Server 2003
Исходный номер базы знаний: 278381
Аннотация
В папке MachineKeys хранятся ключи пар сертификатов как для компьютера, так и для пользователей. Эта папка используется как службами сертификатов, так и Internet Explorer. Разрешения по умолчанию для папки могут ввести в заблуждение при попытке определить минимальные разрешения, необходимые для правильной установки и доступа к сертификатам.
Разрешения по умолчанию для папки MachineKeys
Папка MachineKeys находится в этой All Users Profile\Application Data\Microsoft\Crypto\RSA папке. Если администратор не настроит для папки минимальный уровень, пользователь может получить следующие ошибки при создании сертификата сервера с помощью сервера IIS.
- Не удалось создать запрос сертификата
- Внутренняя ошибка сервера (импортируемый закрытый ключ может потребовать поставщика служб шифрования, который не установлен в системе)
Следующие параметры являются разрешениями по умолчанию для папки MachineKeys:
- Администраторы (полный доступ) Только эта папка
- Все (специальные) Только эта папка
Разрешения для группы «Все»
Чтобы просмотреть специальные разрешения для группы «Все», щелкните правой кнопкой мыши папку MachineKeys, выберите «Дополнительно » на вкладке «Безопасность», а затем выберите пункт «Просмотреть или изменить». Разрешения состоят из следующих разрешений:
- Перечисление папок и чтение данных
- Чтение атрибутов
- Чтение расширенных атрибутов
- Создание файлов и запись данных
- Создание папок и добавление данных
- Запись атрибутов
- Запись расширенных атрибутов
- Чтение разрешений
Установите флажок «Сброс разрешений для всех дочерних объектов» и установите флажок распространения наследуемых разрешений. Администратор не имеет полного контроля над дочерними объектами для защиты закрытой части пары ключей пользователя. Но администратор по-прежнему может удалять сертификаты для пользователя.
Дополнительные сведения см. в следующей статье:
Как задать необходимые разрешения NTFS и права пользователя для веб-сервера IIS 5.0, IIS 5.1 или IIS 6.0.
Обратная связь
Были ли сведения на этой странице полезными?
Подскажите про папку crypto (C:\Documents and Settings\All Users\Application Data\Microsoft\Crypto\RSA), windows XP
С ним происходят странные вещи:
1) при открытии свойства — постоянно увелечивается в папке C:\Documents and Settings\All Users\Application Data\Microsoft\Crypto\RSA\MachineKeys количество файло (видно, если открыть свойства папки)
2) Если открываешь ее, то ни одного файла не видно (хотя у меня и установлено показывать скрытые файлы и папки)
3) Файлы в ней не может открыть антивирус (ESET Smart Security), чтобы проверить
Скажите, пожалуйста, что может происходить?
Лучший ответ
Здравствуйте. с этими файлами на данный момент у многих появляются проблемы. Если кратко, то получается так. это кодировка программ, например закачали библию «ВЕТХИЙ ЗАВЕТ», а через неделю приходит обновление. т. е. кодировка на обновление, это и есть тот самый файл, или иначе говоря «водитель программы». множество программ сейчас используют такую кодировку. Но если проблема только в том что антивирус не открывает эти файлы и при условии, что они ни как не отражаются на физических характеристиках вашей машинки, то в принципе проблемы как таковой можно сказать что и нет. НО тут открывается вторая сторона вопроса, более интересная. Так как ни Вы, ни ваш антивирус не имеете доступа к данным файлам не имеете, правильного и простого способа решения этой проблемы у вас нет, то здесь при любом, так сказать раскладе, я считаю лучше всего будет обратиться к квалифицированному специалисту.
Остальные ответы
Судя по всему эта папка для хранения или еще чего то, вообщем что то связанное с криптографией (кодированием) данных методом (алгоритмом) RSA
Dozer GamaetУченик (160) 4 года назад
«Судя по всему эта папка для хранения или еще чего то» самый гениальный ответ, который только можно было дать))
Устранение неполадок с сертификатом расширения на виртуальной машине Windows в Azure
В этой статье описывается, как выявлять и устранять проблемы, связанные с сертификатами на виртуальной машине Windows, которая использует расширение. Как правило, эти проблемы связаны с криптографическими операциями или с самим сертификатом.
Контрольный список для устранения неполадок
Просмотр гостевых журналов
Чтобы получить сведения об ошибке, проверка гостевые журналы. В следующей таблице приведены наиболее полезные журналы на виртуальной машине Windows для устранения ошибок сертификата расширения.
| Log | Описание |
|---|---|
| Файл C:\WindowsAzure\Logs\WaAppAgent.log | Журнал гостевого агента. Описывает операции расширения (например, скачивание, установку, включение и отключение) и их результаты. |
| Файлы журнала в папке C:\WindowsAzure\Logs\Plugins\ | Различные журналы, отражающие операции определенного расширения. Каждое расширение имеет свои собственные функции, но большинство расширений имеют стандартный набор файлов журнала, включая CommandExecution.log, CommandExecution_ , CustomScriptHandler.log и IaaSBcdrExtension . |
Эта таблица содержит только самые важные файлы журнала. Это не исчерпывающий список.
Кроме того, можно запустить средствоCollectGuestLogs.exe , чтобы собрать все гостевые журналы в архивный файл.zip . Средство CollectGuestLogs.exe находится на виртуальной машине Windows в одном из следующих каталогов:
- C:\WindowsAzure\Packages
- C:\WindowsAzure\GuestAgent__
Симптомы
В следующем списке перечислены наиболее распространенные ошибки, которые могут возникнуть при использовании расширения на виртуальной машине Windows.
-
FailedToDecryptProtectedSettings Исключение. Сертификат транспорта, используемый для расшифровки защищенных параметров расширения, отсутствует на виртуальной машине.
Примечание. Вариант FailedToDecryptProtectedSettings исключения приводит к неправильному указанию разрешений для папки Crypto\RSA\MachineKeys . В этом сценарии отображается одно из следующих сообщений об ошибке:
System.Security.Cryptography.CryptographicException: Keyset does not exist at System.Security.Cryptography.Pkcs.EnvelopedCms.DecryptContent(RecipientInfoCollection recipientInfos, X509Certificate2Collection extraStore) at Microsoft.Azure.Plugins.Diagnostics.dll.PluginConfigurationSettingsProvider.DecryptPrivateConfig(String encryptedConfig)
Failed to decode, decrypt, and deserialize the protected settings string. Error Message: Keyset does not exist"
Decrypting Protected Settings - Invalid provider type specified
[ERROR] Failed to get TransportCertificate. Error: Microsoft.WindowsAzure.GuestAgent.CertificateManager.CryptographyNative+PInvokeException: Self-signed Certificate Generation failed. Error Code: -2146893808.
DiagnosticsPluginLauncher.exe Information: 0 : [6/29/2020 1:32:20 PM] Decrypting private configuration DiagnosticsPluginLauncher.exe Warning: 0 : [6/29/2020 1:32:20 PM] No certficate with given thumbprint found in the certificate store. Thumbprint:34C8CDC747693E0E33A9648703E3990EC4F2C484 DiagnosticsPluginLauncher.exe Information: 0 : [6/29/2020 1:32:20 PM] Retrying after 30 seconds. Retry attempt 1 DiagnosticsPluginLauncher.exe Warning: 0 : [6/29/2020 1:32:50 PM] No certficate with given thumbprint found in the certificate store. Thumbprint:34C8CDC747693E0E33A9648703E3990EC4F2C484 DiagnosticsPluginLauncher.exe Information: 0 : [6/29/2020 1:32:50 PM] Retrying after 30 seconds. Retry attempt 2 DiagnosticsPluginLauncher.exe Warning: 0 : [6/29/2020 1:33:20 PM] No certficate with given thumbprint found in the certificate store. Thumbprint:34C8CDC747693E0E33A9648703E3990EC4F2C484 DiagnosticsPluginLauncher.exe Information: 0 : [6/29/2020 1:33:20 PM] Retrying after 30 seconds. Retry attempt 3 DiagnosticsPluginLauncher.exe Error: 0 : [6/29/2020 1:33:50 PM] System.Security.Cryptography.CryptographicException: The enveloped-data message does not contain the specified recipient. at System.Security.Cryptography.Pkcs.EnvelopedCms.DecryptContent(RecipientInfoCollection recipientInfos, X509Certificate2Collection extraStore) at Microsoft.Azure.Plugins.Diagnostics.dll.PluginConfigurationSettingsProvider.DecryptPrivateConfig(String encryptedConfig)
Причина. Изменения кода рабочих процессов и зависимостей
Эта проблема в основном вызвана изменением платформы Azure, которое было реализовано около мая 2020 г. Это изменение было изменено для улучшения рабочего процесса расширений виртуальной машины и устранения некоторых зависимостей от других компонентов Azure. Для этого требуется, чтобы расширения, настраиваемые поставщики ресурсов (CRP) и гостевой агент работали совместно. Незначительные ошибки вызвали вторичные проблемы, которые отражаются в проблемах с сертификатом расширения.
Решение 1. Обновление сертификата расширения
Выполните следующие действия, чтобы обновить сертификат, который можно успешно использовать вместе с расширением:
- Проверьте, включен ли сертификат генератора сертификатов Windows Azure CRP в оснастке «Сертификаты» консоли управления Майкрософт. Для этого следуйте инструкциям в разделе Несколько сертификатов на виртуальной машине Azure IaaS, которая использует расширения для поиска проблем с виртуальной машиной Windows.
- Удалите этот сертификат. Для этого выберите сертификат генератора сертификатов Windows Azure CRP , а затем щелкните значок Удалить .
Примечание. Если требуется сертификат генератора сертификатов Windows Azure CRP , виртуальная машина повторно создает сертификат, если он отсутствует.
-
Выполните следующий скрипт PowerShell, содержащий команды Get-AzureRmVM и Update-AzureRmVM :
$rg = "" $vmName = "" $vm = Get-AzureRmVM -ResourceGroupName $rg -Name $vmName Update-AzureRmVM -ResourceGroupName $rg -VM $vm
Если обновление сертификата не устранит проблему, остановите или освободите виртуальную машину, а затем снова запустите виртуальную машину.
Решение 2. Исправление списка управления доступом (ACL) в папках MachineKeys или SystemKeys
В папке Crypto\RSA\MachineKeys исправьте список управления доступом (ACL), чтобы применить правильные разрешения.
-
В консоли PowerShell с правами администратора выполните следующие команды, чтобы получить уникальное имя контейнера ключа сертификата клиента. Убедитесь, что вы закомментировали одно из $certName определений в зависимости от того, используете ли вы классическую виртуальную машину переднего плана RedDog (RDFE) (для которой сертификат имеет Windows Azure Service Management for Extensions имя ) или виртуальную машину Azure Resource Manager (для которой сертификат имеет Windows Azure CRP Certificate Generator имя ):
# Comment out one of the following certificate name definitions. $certName = "Windows Azure Service Management for Extensions" # Classic RDFE VM $certName = "Windows Azure CRP Certificate Generator" # Azure Resource Manager VM $fileName = (Get-ChildItem Cert:\LocalMachine\My | Where-Object ).PrivateKey.CspKeyContainerInfo.UniqueKeyContainerName
icacls C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys /save machinekeys_permissions_before.aclfile /t
icacls C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys\$fileName /grant SYSTEM:(F) icacls C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys\$fileName /grant Administrators:(RX)
icacls C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys /t > machinekeys_permissions_after.txt
Если эта процедура не работает, попробуйте выполнить icacls команды еще раз (шаги 2–4) в папках C:\ProgramData\Microsoft\Crypto\SystemKeys\* вместо папки C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys\$fileName .
Дополнительная информация
Свяжитесь с нами для получения помощи
Если у вас есть вопросы или вам нужна помощь, создайте запрос в службу поддержки или обратитесь за поддержкой сообщества Azure. Вы также можете отправить отзыв о продукте в сообщество отзывов Azure.
Обратная связь
Были ли сведения на этой странице полезными?
Устранение неполадок с подключением к удаленному рабочему столу
Попробуйте наш виртуальный агент — он поможет вам быстро определить и устранить распространенные проблемы с подключением к сеансам удаленных рабочих столов .
Выполните эти действия, если клиент удаленного рабочего стола не может подключиться к удаленному рабочему столу, но не предоставляет сообщения или другие симптомы, которые помогли бы определить причину.
Проверка состояния протокола RDP
Проверка состояния протокола RDP на локальном компьютере
Сведения о проверка и изменении состояния протокола RDP на локальном компьютере см. в статье Включение удаленного рабочего стола.
Проверка состояния протокола RDP на удаленном компьютере
В этот раздел, описание метода или задачи включены действия, содержащие указания по изменению параметров реестра. Однако неправильное изменение параметров реестра может привести к возникновению серьезных проблем. Поэтому следует в точности выполнять приведенные инструкции. Для защиты создайте резервную копию реестра перед его изменением, чтобы можно было восстановить его в случае возникновения проблемы. Для получения дополнительной информации о том, как создать резервную копию и восстановить реестр, см. статью Сведения о резервном копировании и восстановлении реестра Windows.
Чтобы проверка и изменить состояние протокола RDP на удаленном компьютере, используйте сетевое подключение к реестру:

- Сначала перейдите в меню Пуск , а затем выберите Выполнить. В появившемся текстовом поле введите regedt32.
- В редакторе реестра выберите Файл, а затем — Подключить сетевой реестр.
- В диалоговом окне Выбор компьютера введите имя удаленного компьютера, выберите Проверить имена и нажмите кнопку ОК.
- Перейдите к HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server и к HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services .
- Если значение ключа fDenyTSConnections равно 0, то включен протокол RDP.
- Если значение ключа fDenyTSConnections равно 1, RDP отключен.
- Чтобы включить RDP, измените значение параметра fDenyTSConnections с 1 на 0.
Проверка того, блокирует ли объект групповая политика (GPO) RDP на локальном компьютере
Если вы не можете включить протокол RDP в пользовательском интерфейсе или значение fDenyTSConnections вернется к 1 после его изменения, объект групповой политики может переопределить параметры уровня компьютера.
Чтобы проверка конфигурацию групповой политики на локальном компьютере, откройте окно командной строки от имени администратора и введите следующую команду:
gpresult /H c:\gpresult.html
После завершения этой команды откройте gpresult.html. В разделе Конфигурация компьютера\Административные шаблоны\Компоненты Windows\Службы удаленных рабочих столов\Узел сеансов удаленных рабочих столов\Подключения найдите политику Разрешить пользователям удаленно подключаться с помощью служб удаленных рабочих столов .
- Если для этой политики задано значение Включено, групповая политика не блокирует подключения по протоколу RDP.
- Если для этой политики задано значение Отключено, проверка объект групповой политики с победой. Это объект групповой политики, блокирующий подключения по протоколу RDP.


Проверка того, блокирует ли объект групповой политики RDP на удаленном компьютере
Чтобы проверка конфигурацию групповая политика на удаленном компьютере, команда почти такая же, как для локального компьютера:
gpresult /S /H c:\gpresult-.html
Файл, создаваемый этой командой (имя> gpresult-computer), использует тот же информационный формат, что и версия локального компьютера (gpresult.html).
Изменение блокирующего объекта групповой политики
Эти параметры можно изменить в редакторе объектов групповая политика (GPE) и консоли управления групповая политика (GPM). Дополнительные сведения об использовании групповая политика см. в разделе Расширенное управление групповая политика.
Чтобы изменить политику блокировки, используйте один из следующих методов:
- В GPE получите доступ к соответствующему уровню объекта групповой политики (например, локальному или домену) и перейдите к разделу Конфигурация> компьютераАдминистративные шаблоны>Компоненты Удаленныхрабочих столов Службы удаленных рабочих столов Службы удаленныхрабочих > столовПодключения> кузлам> сеансов удаленных рабочих столовРазрешить пользователям удаленно подключаться с помощью служб удаленных рабочих столов.>
- Задайте для политики значение Включено или Не настроено.
- На затронутых компьютерах откройте окно командной строки от имени администратора и выполните gpupdate /force команду .
- В GPM перейдите к подразделению, в котором политика блокировки применяется к затронутым компьютерам, и удалите политику из подразделения.
Проверка состояния служб RDP
На локальном (клиентском) компьютере и удаленном (целевом) компьютере должны быть запущены следующие службы:
- Службы удаленных рабочих столов (TermService)
- Перенаправитель портов UserMode служб удаленных рабочих столов (UmRdpService)
Оснастку MMC служб можно использовать для локального или удаленного управления службами. PowerShell также можно использовать для локального или удаленного управления службами (если удаленный компьютер настроен на прием удаленных командлетов PowerShell).

На любом компьютере, если одна или обе службы не запущены, запустите их.
При запуске службы удаленных рабочих столов выберите Да , чтобы автоматически перезапустить службу перенаправления портов UserMode Служб удаленных рабочих столов.
Убедитесь, что прослушиватель RDP работает
В этот раздел, описание метода или задачи включены действия, содержащие указания по изменению параметров реестра. Однако неправильное изменение параметров реестра может привести к возникновению серьезных проблем. Поэтому следует в точности выполнять приведенные инструкции. Для защиты создайте резервную копию реестра перед его изменением, чтобы можно было восстановить его в случае возникновения проблемы. Для получения дополнительной информации о том, как создать резервную копию и восстановить реестр, см. статью Сведения о резервном копировании и восстановлении реестра Windows.
Проверка состояния прослушивателя RDP
Для этой процедуры используйте экземпляр PowerShell с разрешениями администратора. Для локального компьютера можно также использовать командную строку с разрешениями администратора. Однако в этой процедуре используется PowerShell, так как одни и те же командлеты работают как локально, так и удаленно.
-
Чтобы подключиться к удаленному компьютеру, выполните следующий командлет:
Enter-PSSession -ComputerName

- Войдите на компьютер с той же версией операционной системы, что и затронутый компьютер, и получите доступ к реестру этого компьютера (например, с помощью редактора реестра).
- Перейдите к следующей записи реестра: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
- Экспорт записи .reg в файл. Например, в редакторе реестра щелкните запись правой кнопкой мыши, выберите Экспорт и введите имя файла для экспортированных параметров.
- Скопируйте экспортируемый .reg файл на затронутый компьютер.
- Чтобы создать резервную копию существующей записи реестра, введите следующий командлет:
cmd /c 'reg export "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-tcp" C:\Rdp-tcp-backup.reg'Remove-Item -path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-tcp' -Recurse -Forcecmd /c 'regedit /s c:\.reg' Restart-Service TermService -ForceПроверка состояния самозаверяющего сертификата RDP

- Если подключиться по-прежнему не удается, откройте оснастку MMC «Сертификаты». Когда вам будет предложено выбрать хранилище сертификатов для управления, выберите Учетная запись компьютера, а затем выберите затронутый компьютер.
- В папке Сертификаты в разделе Удаленный рабочий стол удалите самозаверяющий сертификат RDP.
- На затронутом компьютере перезапустите службу служб удаленных рабочих столов.
- Обновите оснастку «Сертификаты».
- Если самозаверяющий сертификат RDP не был создан повторно, проверка разрешения папки MachineKeys.
Проверка разрешений папки MachineKeys
- На затронутом компьютере откройте Обозреватель и перейдите в папку C:\ProgramData\Microsoft\Crypto\RSA\.
- Щелкните правой кнопкой мыши MachineKeys и выберите Свойства>Безопасность>Дополнительно.
- Убедитесь, что настроены следующие разрешения:
- Builtin\Administrators: полный доступ
- Все: чтение, запись
Проверка порта прослушивателя RDP
На локальном (клиентском) и удаленном (целевом) компьютере прослушиватель RDP должен прослушивать порт 3389. Никакие другие приложения не должны использовать этот порт.
В этот раздел, описание метода или задачи включены действия, содержащие указания по изменению параметров реестра. Однако неправильное изменение параметров реестра может привести к возникновению серьезных проблем. Поэтому следует в точности выполнять приведенные инструкции. Для защиты создайте резервную копию реестра перед его изменением, чтобы можно было восстановить его в случае возникновения проблемы. Для получения дополнительной информации о том, как создать резервную копию и восстановить реестр, см. статью Сведения о резервном копировании и восстановлении реестра Windows.
Чтобы проверка или изменить порт RDP, используйте редактор реестра:

- Перейдите в меню Пуск, выберите Выполнить, а затем введите regedt32 в появившемся текстовом поле.
- Чтобы подключиться к удаленному компьютеру, выберите Файл, а затем — Подключить сетевой реестр.
- В диалоговом окне Выбор компьютера введите имя удаленного компьютера, выберите Проверить имена и нажмите кнопку ОК.
- Откройте реестр и перейдите по адресу HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\ .
- Если portNumber имеет значение, отличное от 3389, измените его на 3389.
Важно! Службы удаленных рабочих столов можно использовать с помощью другого порта. Однако мы не рекомендуем делать это. В этой статье не рассматривается устранение неполадок с конфигурацией такого типа.
Убедитесь, что другое приложение не пытается использовать тот же порт
Для этой процедуры используйте экземпляр PowerShell с разрешениями администратора. Для локального компьютера можно также использовать командную строку с разрешениями администратора. Однако в этой процедуре используется PowerShell, так как одни и те же командлеты работают локально и удаленно.
- Откройте окно PowerShell. Чтобы подключиться к удаленному компьютеру, введите Enter-PSSession -ComputerName .
- Введите следующую команду:
cmd /c 'netstat -ano | find "3389"'
Найдите запись для порта TCP 3389 (или назначенного порта RDP) со статусом Прослушивание.
Примечание. Идентификатор процесса (PID) для процесса или службы, использующий этот порт, отображается в столбце PID.
cmd /c 'tasklist /svc | find ""'
- Найдите запись для номера PID, связанного с портом (из выходных netstat данных). Службы или процессы, связанные с этим PID, отображаются в правом столбце.
- Если приложение или служба, отличные от служб удаленных рабочих столов (TermServ.exe), использует порт, конфликт можно устранить одним из следующих методов:
- Настройте другое приложение или службу для использования другого порта (рекомендуется).
- Удалите другое приложение или службу.
- Настройте RDP для использования другого порта, а затем перезапустите службу служб удаленных рабочих столов (не рекомендуется).
Проверьте, блокирует ли брандмауэр порт RDP
Используйте средство psping , чтобы проверить, можно ли связаться с затронутым компьютером с помощью порта 3389.
- Перейдите на другой компьютер, который не затронут, и скачайте psping.
- Откройте окно командной строки от имени администратора, перейдите в каталог, в котором вы установили psping , а затем введите следующую команду:
psping -accepteula :3389
- Connecting to \ : удаленный компьютер доступен.
- (0% loss) : все попытки подключения выполнены успешно.
- The remote computer refused the network connection : удаленный компьютер недоступен.
- (100% loss) : все попытки подключения завершилось сбоем.
- Обратитесь к администраторам сети, чтобы убедиться, что сеть разрешает трафик RDP на затронутый компьютер.
- Изучите конфигурации брандмауэров между исходными компьютерами и затронутыми компьютерами (включая брандмауэр Windows на затронутом компьютере), чтобы определить, блокирует ли брандмауэр порт RDP.
Обратная связь
Были ли сведения на этой странице полезными?