17

В Windows 7 Home Premium, после сохранения закрытого ключа в PuTTY Key Generator (он же.Puttygen) в корне диска C это не видно в Explorer.

Как воспроизвести:

  1. Запустите Puttygen.
  2. Сгенерируйте ключ.
  3. Нажмите "Сохранить закрытый ключ" (это также работает для "Сохранить открытый ключ", но я проверял только оригинальный случай с этим).
  4. Перейдите к C:
  5. Введите имя, например id_rsa , чтобы сохранить файл как C:\id_rsa.ppk .
  6. Запустите проводник.
  7. Перейдите к C:

Результат: id_rsa.ppk не виден.

Чтобы доказать, что файл существует:

  1. Вернитесь в Путтиген.
  2. Снова нажмите кнопку "Сохранить закрытый ключ".
  3. Перейдите к C:

В этом окне вы можете взаимодействовать с файлом. Я проверил свойства файла оттуда:

  • Это не спрятано.
  • "Полный контроль" проверен для моего пользователя.
  • "Открывается с" странно говорит "Windows Shell Common Dll".

Дополнительная информация:

  • Я вчера установил Windows, так что это не какая-то чудовищность Sony.
  • Здесь есть все последние обновления безопасности и .NET 4.0.
  • У меня установлена интеграция TortoiseGit и 7zip, поэтому вполне возможно, что они как-то связаны с этим (хотя файлы .ppk не должны быть связаны ни с одним из них).

Вещи , которые делали этот файл отображается в проводнике:

  • Сохранил файл в другом каталоге, затем скопировал / переместил его (оба работали) с помощью проводника в C:\ . Я получил запрос "Отказ в доступе к целевой папке", где мне сначала пришлось нажать "Продолжить".
  • Сохраните файл в другом каталоге и перейдите туда.
  • Сохранил файл в корне другого диска (в данном случае D: :) и перешел туда.

Вещи, которые не позволили файлу появиться в Проводнике (нажав F5 для обновления в окне Проводника после каждого действия):

  • Переименовал файл в foo.ppk .
  • Сохранена вторая копия под другим именем.
  • Включено «Показывать скрытые файлы, папки и диски».
  • Отключено "Скрыть защищенные файлы операционной системы".
  • Сохраните файл в другом каталоге, затем скопируйте его в C:\ в диалоге сохранения Puttygen . Меня не просили дать разрешение на сохранение файла, как в Проводнике.

Мое наивное предположение состоит в том, что в Проводнике есть специальный встроенный случай для "ограниченных" (фактически не ограниченных, поскольку Puttygen тривиально игнорирует их) каталогов, которые обновляют только список файлов через диалоговое окно "Запрещен доступ к целевой папке". Какова реальная причина?

2 ответа2

23

В Vista и более новых версиях Windows непривилегированный процесс не может быть сохранен в папки, где "Пользователи" не имеют доступа к записи (даже если вы являетесь локальным администратором и у группы "Администраторы" есть доступ). Поэтому, когда непривилегированная программа пытается записать туда файл, она фактически сохраняется в %localappdata%\VirtualStore .

-1

Ну, я видел такое же поведение, и файлы действительно находятся в VirtualStore, но мне показалось интересным, если я загружу оболочку bash (у меня установлен cygwin), она показывает файлы как в Program Files\putty, как я и думал они должны быть, а не странно не видны, как говорит оболочка windows cmd. Так что, если у вас есть Cygwin, вы можете смотреть на свои ключевые файлы таким образом, а не перехватывать всю файловую систему.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .