Главная » Файлы » Программируем в 1С » 1С Разное |
Скачивать материалы с сайта, могут только зарегистрированные пользователи.
Для регистрации заполните два поля ниже!
Через минуту Вы получите "Гостевой доступ"
2017 Март 03, 19:47 | |||||||||||||||||||||||||||||||
С чего начинается администрирование пользователей на сервере терминалов? Конечно с просмотра «Активных» или «Отключенных» сессий пользователей. Без этой картины администрирование сервера терминалов невозможно. Мы должны во всех подробностях видеть, что у нас происходит на сервере терминалов. Какие процессы запущены от имени тех или иных пользователей (в т.ч. процессы 1С) их идентификаторы, id сессий пользователей, это и многое другое помогает администратору всегда быть в курсе того что происходит на сервере и соответственно всем этим управлять, и вовремя реагировать на различные ситуации. На разных версиях Windows server администраторы по-разному решают этот вопрос. Кто-то смотрит пользователей используя простой «Диспетчер задач» на Windows server 2012 – 2016. Некоторые используют различные команды в CMD, ну а кое-кто использует PowerShell . Но все администраторы хотят одного: 1. Чтоб быстро посмотреть всех пользователей кто работает на сервере. 2. Чтоб это было как можно информативней. 3. Чтоб бесплатно.
Поэтому поводу решил собрать все лучшие, простые и быстрые способы которые (на мое мнение) стоит использовать. Уверен, что многим начинающим администраторам эти способы помогут в администрировании сервера терминалов. И так способ первый и самый простой (На Windows server 2012 R2)
1. Диспетчер задач. «Диспетчер задач» – вкладка «Пользователи» – позволяет нам видеть пользователей, которые работают на этом сервере. Но по умолчанию стандартный «Диспетчер задач» – вкладка «Пользователи» нам не покажет, что пользователь работает на сервере удаленно, используя RDP, хорошо, что это можно легко исправить. Правый клик мышкой на панели «Пользователь» и в появившимся контекстном меню ставим птичку напротив «Сеанс» а также стоит поставить и напротив «Имя клиента». Так мы будем знать, что этот пользователь работает у нас на сервере через RDP. Минусы данного способа здесь очевидны, чтоб смотреть пользователей мы должны находится на сервере терминалов, где собственно и запускаем «Диспетчер задач», нет возможности сделать какую-то выборку, фильтр и т.д.
2. quser Следующий метод это использование команды quser в CMD или PowerShell. Quser – это аналог QUERY USER (Такое сокращение позволяет выполнять команду быстрее) Здесь все просто запускаем CMD или PowerShell и пишем команду quser Так мы увидим всех пользователей, что работают на этом сервере. Метод очень простой быстрый и достаточно информативный. Он покажет Вам – Пользователя, Сеанс, его ID, Статус , Бездействие сеанса, и время входа. Если мы хотим посмотреть только какого-то конкретного пользователя, тогда можно написать например так: Пример: PowerShell
Term01 – это логин пользователя. Большинство системных администраторов отдают предпочтение именно этому способу. И не только потому, что быстро, просто и т.д., но и потому что можно смотреть удаленно всех пользователей, сидя за своим ПК, где не будь в локальной сети. И для этого достаточно ввести команду с параметром SERVER Пример: PowerShell
Вместо IP можно указать (хост) имя сервера терминалов. Формат командной строки: QUSER [< пользователь > | < имя сеанса > | < ID сеанса >] [/SERVER:< сервер >]
3. query user Query user делает все что и команда quser. Использовать ее можно также как в CMD так и в PowerShell. Также возможно выполнить и удаленно Пример: PowerShell
4. query session Эта команда позволяет получить список всех сеансов (активных и неактивных), которые выполняются на сервере терминалов. Команда query session имеет такой синтаксис: query session [<SessionName> | <UserName> | <SessionID> ] [/server:<servername>] [/mode] [/flow] [/connect] [/counter] Использовать ее можно также как в CMD так и в PowerShell. Также возможно выполнить и удаленно Пример: PowerShell
У команды есть интересные параметры, такие как, например получение некоторой статистики подключений. Пример: PowerShell
В общем, еще одна неплохая команда для получения пользователей, что работают на сервере.
5. Qwinsta Qwinsta это аналог query session, по этой причине описывать ее не буду. Работает все аналогично, вот только набрать ее можно быстрее, а соответственно и выполнить.
Теперь, когда выше перечисленные способы у Вас по каким-то причинам не сработали, или не подошли, тогда можно обратиться к сторонним компонентам.
6. Get-TerminalSession Этот метод работает только через PowerShell и требует установки небольшого «Пака». Скачать его можно бесплатно вот здесь: https://pscx.codeplex.com PowerShell Community Extensions. Установим его на сервере терминалов. Установка как видно по скрину очень быстрая и простая. После чего мы сможем использовать «командлет» Get-TerminalSession и получить в удобной таблице всех пользователей, что работают у нас на сервере терминалов. Пример: Get-TerminalSession PowerShell
Также можно смотреть пользователей и с удаленного «ПК» или сервера. Пример: Get-TerminalSession -ComputerName 192.168.128.51 PowerShell
Если Вы планируете удаленно выполнять этот «командлет» на Windows 7, 8 или 10. Тогда сперва следует внести правку в политику безопасности: Запускаем PowerShell Напишем следующее: Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser PowerShell
После чего Get-TerminalSession заработает у вас и с удаленной машины.
7. Get-TSSession Еще один просто отличный «командлет» который позволяет смотреть пользователей, что работают на сервере терминалов, причем вы сможете не только смотреть, но и отправлять им уведомления, завершать сессии и процессы пользователей ставить различные фильтры, делать выборки и многое другое. Отличная вещь для тех, кто администрирует сервер терминалов при помощи PowerShell. И так, где брать? И как установить? Качаем бесплатно «модуль» PSTerminalServices здесь https://psterminalservices.codeplex.com В двух словах о модуле: Основан он на «open source» проекте под названием Кассия (версия 2.0.0.60), библиотека .NET для доступа к «нативной» службе терминалов Windows API.
И так установка простая несколько кликов «Далее» и модуль установлен (смотрим скрины ниже). После установки модуля запускаем PowerShell И выполним несколько команд, чтоб у нас все работало: Для начала разрешим выполнение скриптов (если установили модуль на Windows 7,8,10) PowerShell
Далее следует проверить установлен ли новый «командлет» PowerShell
Затем выполним команду импорта PowerShell
И теперь можно посмотреть на функции которые нам доступны PowerShell
Так мы будем точно знать, что все прошло успешно и «командлет» Get-TSSession у нас работает. И так теперь чтоб посмотреть, кто у нас работает на сервере терминалов, достаточно запустить PowerShell и выполнить: Пример: PowerShell
Если хотим посмотреть удаленно, сидя за своим ПК, тогда выполняем: Пример: PowerShell
А вот еще примеры по модулю PSTerminalServices: PowerShell
Если какие-то команды или «командлеты» у Вас не работают, возможно удаленно, тогда следует добавить права пользователю, от имени которого Вы запускаете PowerShell или CMD. (Должны быть права «Администратора домена»), также смотрите, возможно, брандмауэр блокирует подключение, или служба RPC не стартовала. | |||||||||||||||||||||||||||||||
Просмотров: 6332 | Загрузок: 0 | |
Выразить благодарность - Поделиться с друзьями!
Всего комментариев: 0 | |