Удаленное изменение пароля VNC - все виды версий (Windows)

Есть несколько других сообщений (например, Удаленно установленный пароль службы VNC) на эту тему, но они ограничены одной конкретной версией программного обеспечения / VNC.

У меня есть ситуация, когда у меня есть около 500 ПК в домене Windows, и они настроены с использованием различных версий VNC - RealVNC4, UltraVNC, TightVNC и каждой из разных версий.

Поэтому некоторые используют INI-файл (например, самую последнюю версию UltraVNC), некоторые используют Registry, и они используют другой раздел реестра.

Кто-нибудь знает скрипт / инструмент, который просто попробует все опции и установит пароль?

2 ответа

Решение

Такой инструмент не существует.

И прежде чем вы убежите и попытаетесь написать сценарий самостоятельно, чтобы сделать что-то монументально глупое (например, попробовать кучу разных учетных данных на 500 серверах VNC и отчитаться о результатах), единственное решение, которое не будет смехотворно болезненным или привлекать кучу ручной работы ниже.

  1. Напишите сценарий / объект групповой политики для удаления всех серверов VNC в вашей среде.
    • Мой опыт работы с этими VNC-серверами говорит о том, что вы можете проверить ключи реестра, чтобы установить конкретное приложение и версию, а затем использовать их для вызова (правильного) деинсталлятора.
  2. Определите стандартное развертывание VNC-сервера по вашему желанию.
    • Конечно, включая учетные данные, которые вы хотите, чтобы эти серверы имели.
    • В зависимости от того, какой VNC-сервер вы решите выдвинуть, может быть проще просто установить сервер с помощью установщика, а затем скопировать INI-файлы, содержащие настройки и учетные данные, для всех ваших клиентов (через GPP).
  3. Напишите объект групповой политики, чтобы установить сервер VNC для всех ваших клиентов.
    • Вероятно, лучше всего делать со скриптом запуска компьютера.
    • Опять же, используйте ключ реестра, чтобы проверить, установлен ли он, перед вызовом установщика.
  4. Обновите скрипт по мере необходимости для новых версий.

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

Для записи ниже приведен скрипт, который я использовал для отключения VNC на всех компьютерах (запускал скрипт для всех компьютеров в домене):

@ECHO OFF
:: Find out what VNC services exists
for /f "tokens=1" %%f in ('psservice \\%1 ^| egrep -i "vnc|tvnserver" ^| grep "SERVICE_NAME" ^| sed "s/SERVICE_NAME: //"') do (
    echo %%f
        psservice \\%1 stop %%f
        psservice \\%1 setconfig %%f disabled
)

Это требует Sysinternals и UnixTools.

Другие вопросы по тегам