Показаны сообщения с ярлыком RDS. Показать все сообщения
Показаны сообщения с ярлыком RDS. Показать все сообщения

четверг, 27 декабря 2018 г.

RDP логи подключений

1. Коды

eventid 40
reason code
Looks to me like the reason codes match up to these ones https://msdn.microsoft.com/en-us/library/windows/desktop/aa381339(v=vs.85).aspx
For quick reference here is a copy/paste of the table (with Hex converted to Decimal)
0 No additional information is available.
1 An application initiated the disconnection.
2 An application logged off the client.
3 The server has disconnected the client because the client has been idle for a period of time longer than the designated time-out period.
4 The server has disconnected the client because the client has exceeded the period designated for connection.
5 The client's connection was replaced by another connection.
6 No memory is available.
7 The server denied the connection.
8 The server denied the connection for security reasons.
9 The server denied the connection for security reasons.
10 Fresh credentials are required.
11 User activity has initiated the disconnect.
12 "The user logged off, disconnecting the session."
256 Internal licensing error.
257 No license server was available.
258 No valid software license was available.
259 The remote computer received a licensing message that was not valid.
260 The hardware ID does not match the one designated on the software license.
261 Client license error.
262 Network problems occurred during the licensing protocol.
263 The client ended the licensing protocol prematurely.
264 A licensing message was encrypted incorrectly.
265 The local computer's client access license could not be upgraded or renewed.
266 The remote computer is not licensed to accept remote connections.
267 An access denied error was received while creating a registry key for the license store.
768 Invalid credentials were encountered.



понедельник, 12 марта 2018 г.

RDS. Не удалось получить свойства коллекции сеансов

При добавлении сервера RDS в коллекцию, ошибка:

Не удалось получить свойства коллекции сеансов.
    + CategoryInfo          : InvalidResult: (:) [], RDManagementException
    + FullyQualifiedErrorId : JobStateFailed
    + PSComputerName        : localhost

На en

Unable to retrieve the session collection properties.
    + CategoryInfo          : InvalidResult: (:) [], RDManagementException
    + FullyQualifiedErrorId : JobStateFailed
    + PSComputerName        : localhost

Добавление через GUI либо Powershell
Add-RDSessionHost -SessionHost "rds8.noname.local" -CollectionName "Name_my_collection" -ConnectionBroker "broker01.noname.local"

Решение:

https://social.technet.microsoft.com/Forums/en-US/42d7f0d8-9770-4cbb-9c47-a4500fc93ab2/unable-to-retrieve-the-session-collection-properties?forum=winserverTS

https://onix.me/error-remoteapp-dont-get-properties-collection/


А именно:
Выполняем в PS
Import-Module С:\Windows\System32\ServerManagerInternal\RDManagement\RDManagement.psd1

и
Get-RDSHPool -Alias *

Выводится список все коллекций и их свойств. Проблемных коллекций может быть несколько, и вывод по ним будет красный. Для решения проблемы в проблемные коллекции нужно в свойства в "Настройка групп пользователей" добавить группы "Domain Admins". После того, как Get-RDSHPool -Alias * выполняется без ошибок можно добавить rds в коллекцию.

Import-Module Remote-Desktop
Add-RDSessionHost -SessionHost "rds8.noname.local" -CollectionName "Name_my_collection" -ConnectionBroker "broker01.noname.local"

И затем группу "Domain Admins" удаляем, так где добавили, ошибок больше не происходит.


пятница, 9 февраля 2018 г.

RDP powershell

Полезные команды powershell для RDP

1. Вывод хостов и их статус в коллекции
Get-RDSessionHost -ConnectionBroker "name_broker.local" -CollectionName "name_collection"


2. Список сессий во всех коллекциях
Get-RDUserSession -ConnectionBroker "name_broker.local"

3. Поиск на каком rds сессия пользователя
Get-RDUserSession -ConnectionBroker "name_broker.local" | Where-Object {$_.Username -like 'login'}

4. Разрешить создавать новые сессии на rds
Set-RDSessionHost -SessionHost "name_rds_server.local" -NewConnectionAllowed Yes -ConnectionBroker "name_broker.local"

5. Запретить создавать новые сессии на rds
Set-RDSessionHost -SessionHost "name_rds_server.local" -NewConnectionAllowed No -ConnectionBroker "name_broker.local"

6. Список все серверов в ферме с их ролями
 Get-RDServer -ConnectionBroker name_broker.local

7. Добавить сервер как узел сеансов
Add-RDServer -Server "name_rds_server.local" -Role "RDS-RD-SERVER" -ConnectionBroker "name_broker.local"

8. Добавить сервер в коллекцию
Add-RDSessionHost -SessionHost "name_rds_server.local" -CollectionName "name_collection" -ConnectionBroker "name_broker.local"


9. Вывод, опубликованных приложений в коллекции
Get-RDRemoteApp -ConnectionBroker "name_broker.local" -CollectionName "name_collection"

10. Вывод, прав на коллекцию
Get-RDSessionCollectionConfiguration -CollectionName "name_collection" -UserGroup -ConnectionBroker "name_broker.local"


11. Вывод всех серверов rds во всех коллекциях
Get-RDSessionCollection -ConnectionBroker "name_broker.local" | Select-Object -Property collectionname | ForEach-Object -Process { Get-RDSessionHost -ConnectionBroker "name_broker.local" -CollectionName $_.collectionname |  Sort-Object -Property SessionHost}

12. Добавить права на коллекции группе
Set-RDSessionCollectionConfiguration -CollectionName "name_collection" -ConnectionBroker "name_broker.local" -UserGroup "domain\name_group"

пятница, 20 января 2017 г.

Лицензирование удаленных рабочих столов не запускает

Лицензирование удаленных рабочих столов (TermServLicensing) не запускается.
В журнале ошибки:

TerminalServices-Licensing
eventid 44
Возникла следующая общая ошибка базы данных: "Не удалось инициализировать экземпляр ESE - ошибка -501 JET_errLogFileCorrupt, Log file is corrupt."


Service Control Manager
eventid 7024
Служба "Лицензирование удаленных рабочих столов" завершена из-за следующей внутренней ошибки:
Присоединенное к системе устройство не работает.

Переустановка (удаление и развертывание заново) роли Лицензирования удаленных рабочих столов не помогает.

Решение:

Из каталога C:\Windows\System32\lserver удалить файл TLSLic.edb, запустить службу и заново активировать лицензии.

пятница, 25 сентября 2015 г.

Очистка мета данных в MS Office

Задача:
На сервере терминалов для всех пользователей убрать в свойствах создаваеммых документов MS Office данные о создателе.

Решение:
1. В ГП которая применяется для нужных пользователей включаем опцию:

Конфигурация пользователя > Политики > Административные шаблоны > Microsoft Office 2013/Прочие > Использовать значения имени и инициалов локального пользователя независимо от того, какой пользователь выполнил вход.

В этой политике добавляем изменение реестра

Конфигурация пользователя > Настройка > Конфигурация Windows > Реестр
Добавили изменение значений реестра в ветке HKEY_CURRENT_USER\Software\Microsoft\Office\Common\UserInfo
Company -
UserInitials -
UserName -
CompanyName -

2. В ГП, которая применяется для серверов сессий терминалов добавляем значения в реестр:

Конфигурация компьютера > Политики > Конфигурация Windows > Реестр
Добавили изменение значений реестра в ветке HKEY_LOCAL_MACHINE\Путь к разделу SOFTWARE\Microsoft\Windows NT\CurrentVersion
RegisteredOrganization -
RegisteredOwner -

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


Все.

Это работает только для новых документов, в ранее созданных документах пользователь может очищать метаданные самостоятельно

Удаление скрытых и персональных данных при проверке документов


Powershell. Завершение процесса у пользователя который использует больше ОЗУ

Дано: сервер терминалов.

Задача: убивать процессы firefox, если он использует больше заданного значения RAM. Пользователю вывести сообщение.

Решение:
создаем скрипт kill-firefox.ps1

get-wmiobject win32_process -filter "name='firefox.exe'" | foreach-object {if ( $_.WorkingSetSize -gt 600000000 ) { msg $_.getowner().User "Здесь сообщение"; kill -id $_.ProcessId -force }}

где
firefox.exe - имя процесса
600000000 - объем RAM, больше которого нужно убивать.

На сервере добавляем этот скрипт в Планировщик заданий, запуск например раз в 5 минут.
Также можно добавить проверку количества свободного RAM на сервере, чтоб скрипт отрабатывал только при нехватке RAM на сервере.

вторник, 21 июля 2015 г.

RDP ссылки

Подборка ссылок

1. Блог команды службы удаленных рабочих столов (службы терминалов) http://blogs.msdn.com/b/rds/

2. http://www.rdsgurus.com

3. Двухфакторная авторизация на RDP. Через шлюз + смс
http://www.rdsgurus.com/uncategorized/step-by-step-using-windows-server-2012-r2-rd-gateway-with-azure-multifactor-authentication/

4. https://isazonov.wordpress.com/2014/02/06/windows-server-2012-r2-remote-desktop-%D0%BA%D0%BE%D0%BB%D0%BB%D0%B5%D0%BA%D1%86%D0%B8%D1%8F-%D0%BF%D0%BE-%D1%83%D0%BC%D0%BE%D0%BB%D1%87%D0%B0%D0%BD%D0%B8%D1%8E/
Новые механизмы развертывания Remote Desktop в Windows Server 2012 R2 полны сюрпризов. В отличие от поведения в предыдущих версиях брокер теперь может не являться членом конкретной фермы, точнее коллекции, а так как обслуживать он может много коллекций, то при подключении к нему он не знает, куда направить клиента.

Если по сценарию работы (такой сценарий редкость) нужно при подключении к брокеру (в RDP клиенте указывается имя брокера) добиться подключения к определенной коллекции (может быть одна коллекция по умолчанию), то это можно сделать через ключи реестра:

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\ClusterSettings

DefaultTsvUrl REG_SZ tsv://vmresource.1.

Для того, чтобы найти значение параметра DefaultTsvUrl, необходимо с сайта RD Web скачать RDP файл (используйте не IE браузер) для нужной коллекции и взять значение параметра loadbalanceinfo.

Полезные ссылки:

http://social.technet.microsoft.com/Forums/windowsserver/en-US/67c3b9bc-5f57-44b0-a02d-6c039aeaa189/rdp-access-to-2012-session-host-collection?forum=winserverTS

http://ryanmangansitblog.wordpress.com/2013/03/11/connection-broker-redirection-rds-2012/

Смена пароля

http://social.technet.microsoft.com/wiki/contents/articles/10755.enabling-the-rd-webaccess-expired-password-reset-option-in-windows-server-2012.aspx

5. RDP-клиент
Проброс устройств
http://blogs.technet.com/b/vm/archive/2010/08/20/remotefx-6-usb.aspx

6. Оптимизация RDP
http://nslookup.org.ua/blog/author/admin/page/7/

7. Реестр Windows
https://getadmx.com/?Category=Windows_10_2016&Policy=Microsoft.Policies.TerminalServer::TS_SESSIONS_Idle_Limit_2&Language=ru-ru

8. Анализ логов
http://winitpro.ru/index.php/2018/09/25/analizing-rdp-logs-windows-terminal-rds/