Есть задача - автоматический запуск RDP подключения в определенное время с определенным паролем. Вроде бы просто всё, но к сожалению у клиента от MicroSoft - mstsc.exe нет такого ключа запуска с паролем - /p или /Password. Логин - пожалуйста, а пароль по соображениям безопасности убрали.
Тут было найдено два пути решения:
1. Модификация RDP файла, который хранит собственно все настройки и адреса подключения, чтобы там хранился и пароль. Единственный минус - пароль там хранится в зашифрованном виде, и если файл перекинуть на другую машину, то он перестанет работать. Придется пароль заново шифровать.
2. Найти такого клиента RDP, который позволит использовать пароли в командой строке. Такой клиент был найден. Называется он "Remote Desktop Plus" от некоего donkz. Его сайт можно посмотреть тут.
Чтобы сделать автологин RDP через MSTSC, надо открыть "Подключение к удаленному рабочему столу", настроить подключение, как надо, и затем его сохранить в файл. К примеру это будет файл с именем connect.rdp. Теперь его надо открыть в текстовом редакторе, и посмотреть чтобы там появились такие строки:
UserName:s:домен\имя_пользователя
password 51:b:тут_будет_закодированный_пароль
Чтобы получить хэш пароля, скачиваем утилиту gencrypt.7z, все того-же donkz (в аттаче страницы внизу), разархивируем, и запускаем в таком виде:
gencrypt.exe /p:тут_наш_пароль /hash >passhash.txt
Соответственно на выходе получаем файл passhash.txt с такой строкой (на сайте строка имеет переносы, но в файле их быть не должно):
password 51:b:01000000D08C9DDF0115D1118C7A00C04FC297EB01000000561D7FBD6D8BD542B793F5C51C70906D0000000002000000000003660000C0000000100000008A72EFFA525E80D5484E8DC34A010C540000000004800000A0000000100000004BD7A304981DCA83AD095D808AFE356620000000AFE7E638347521A40AFE7D70F5534BA157A54F0DAAAFEA8D4867464767BF718A14000000D5977B81F44087DB8663BA2A165526C02E6BAF6F
Это наша искомая строка для вставки в файл connect.rdp. Копировать и вставлять надо одной строкой без переносов в файл connect.rdp.
После этого при вызове команды
mstsc.exe connect.rdp
произойдет автологин через RDP к выбранному серверу под выбранным паролем!
При первом запуске программа может выдать окошки о том, что это подключение и/или сервер не соответствуют выбранным политикам безопасности. В окошках ставим галочки, что мы хотим больше не получать такие уведомления, и со смелой душой нажимаем кнопки "ОК".
Надо скачать из аттача файл rdp.7z, разархивировать и использовать в таком виде:
rdp.exe /v:адрес_сервера /u:логин /p:пароль
Все работает и подключается как нам надо было!