С чего начинается администрирование пользователей на сервере терминалов?
Конечно с просмотра «Активных» или «Отключенных» сессий пользователей.
Без этой картины администрирование сервера терминалов невозможно.
Помимо статьи, записал также, и подробное видео, о том как администрировать пользователей на сервере терминалов (Новичкам смотреть обязательно!)
Конечно, данная тема также подымается и на курсе: Администратор 1С!
И так, конечно мы должны во всех подробностях видеть, что у нас происходит на сервере терминалов!
Какие процессы запущены от имени тех или иных пользователей (в т.ч. процессы 1С) их идентификаторы, id сессий пользователей, это и многое другое помогает администратору всегда быть в курсе того что происходит на сервере и соответственно всем этим управлять, и вовремя реагировать на различные ситуации.
На разных версиях Windows server администраторы по-разному решают этот вопрос.
Кто-то смотрит пользователей используя простой «Диспетчер задач» на Windows server 2012 – 2016. Некоторые используют различные команды в CMD, ну а кое-кто использует PowerShell .
Как узнать кто подключен к моему Wi Fi роутеру?
Но все администраторы хотят одного:
1. Чтоб быстро посмотреть всех пользователей кто работает на сервере.
2. Чтоб это было как можно информативней.
3. Чтоб бесплатно.
Поэтому поводу решил собрать все лучшие, простые и быстрые способы которые (на мое мнение) стоит использовать.
Уверен, что многим начинающим администраторам эти способы помогут в администрировании сервера терминалов.
И так способ первый и самый простой (На Windows server 2012 R2)
1. Диспетчер задач.
«Диспетчер задач» – вкладка «Пользователи» – позволяет нам видеть пользователей, которые работают на этом сервере.
Но по умолчанию стандартный «Диспетчер задач» – вкладка «Пользователи» нам не покажет, что пользователь работает на сервере удаленно, используя RDP, хорошо, что это можно легко исправить.
Правый клик мышкой на панели «Пользователь» и в появившимся контекстном меню
ставим птичку напротив «Сеанс» а также стоит поставить и напротив «Имя клиента».
Так мы будем знать, что этот пользователь работает у нас на сервере через RDP.
Минусы данного способа здесь очевидны, чтоб смотреть пользователей мы должны находится на сервере терминалов, где собственно и запускаем «Диспетчер задач», нет возможности сделать какую-то выборку, фильтр и т.д.
2. quser
Следующий метод это использование команды quser в CMD или PowerShell.
Quser – это аналог QUERY USER (Такое сокращение позволяет выполнять команду быстрее)
Команда Ping или проверка работоспособности сети
Здесь все просто запускаем CMD или PowerShell и пишем команду quser
Так мы увидим всех пользователей, что работают на этом сервере.
Метод очень простой быстрый и достаточно информативный.
Он покажет Вам – Пользователя, Сеанс, его ID, Статус , Бездействие сеанса, и время входа.
Если мы хотим посмотреть только какого-то конкретного пользователя, тогда можно написать например так:
Источник: kuharbogdan.com
Мониторинг пользователей RDP терминала Windows с помощью Zabbix
Появился интерес мониторить с помощью Zabbix сессии пользователей подключающихся к Windows серверу по RDP. Использовать данную возможность можно как для целей мониторинга производительности сервера, так и для целей безопасности. С точки зрения безопасности можно записывать и уведомлять о том какие именно пользователи подключены к серверу. Это полезно для мониторинга подключения к серверам не являющихся терминальными для отслеживания административных подключений. Как установить и минимально настроить Zabbix хорошо показано здесь .
Как узнать кто подключен к серверу по RDP в консоли
За основу решения взял консольную команду qwinsta, которая отображает все активные подключения к серверу по RDP и на консоль. Запущенная без параметров она просто выведет список всех подключений в виде таблицы:
C:UsersDyachenko>qwinsta СЕАНС ПОЛЬЗОВАТЕЛЬ ID СТАТУС ТИП УСТР-ВО services 0 Диск >console Dyachenko 1 Активно 31c5ce94259d4. 65536 Прием rdp-tcp 65537 Прием
Чтобы посчитать количество пользователей можно перенаправить вывод этой команды в команду find и отфильтровать только rdp подключения, а с ключом /c посчитать количество строк — это и будет число подключенных пользователей по RDP.
qwinsta | find /i «rdp-tcp#» /c
Эту команду ровно в таком виде можно использовать в сенсоре Zabbix для подсчета количества подключенных пользователей, рисовать на ее основе график и слать алерты. Но мне захотелось так же отображать в дашборде и алертах список логинов пользователей.
Список пользователей из qwinsta в Powershell
Для этих целей я нагуглил готовое решение и буквально двумя последними строчками доработал его под свои нужды. Я пытался сначала реализовать подобное с помощью bat-скрипта, но в итоге оказалось быстрее и проще на powershell. Вот сам скрипт:
function Get-TSSessions < param( $ComputerName = «localhost» ) qwinsta /server:$ComputerName | #Parse output ForEach-Object < $_.Trim() -replace «s+»,»,» >| #Convert to objects ConvertFrom-Csv > #Get-TSSessions -ComputerName «localhost» Get-TSSessions -ComputerName «localhost» | where -Property СЕАНС -Like «rdp-tcp#*» | select ПОЛЬЗОВАТЕЛЬ -ExpandProperty ПОЛЬЗОВАТЕЛЬ Get-TSSessions -ComputerName «localhost» | where -Property SESSIONNAME -Like «rdp-tcp#*» | select USERNAME -ExpandProperty USERNAME
Функция получает список подключений с помощью qwinsta, после чего все пробелы в выводе меняются на запятые и полученный csv конвертируется в объект powershell, с которым потом очень удобно работать.
Последние две строки собственно получают объекты и выводят столбиком список пользователей без заголовка. Кусок кода с условием where отвечает за то, чтобы вывести только пользователей подключенных по RDP. Если вам нужно так же мониторить тех кто подключен к консоли сервера то необходимо будет эту часть отредактировать.
Два варианта вызова с русским и английским написанием параметров объекта нужны чтобы одинаково работать как на Windows Server с русской локализацией так и с английской. Если будете использовать на сервере с альтернативной локализацией, то раскоментируйте строчку #Get-TSSessions -ComputerName «localhost» и посмотрите вывод объекта, там будут все поля которые нужно прописать по аналогии с русским и английским вариантом.
Настройка на стороне сервера в Zabbix Agent
Все протестировано на серверах под управлением Windows Server 2012, 2016, 2019. В качестве Zabbix Agent использовалась версия Zabbix Agent 2 v 5.4.8. Агент установлен в папку c:zabbix в которой используется следующая структура:
- c:zabbixconf.d — папка с подключаемыми конфигами;
- c:zabbixscripts — папка со скриптами для сбора различных параметров для сенсоров Zabbix.
Если у вас другая структура каталогов и размещение агента то внесите соответствующие коррективы. Конфиг для мониторинга подключений по RDP следующего содержания:
UserParameter=rdps[*],qwinsta.exe | find /i «rdp-tcp#» /c UserParameter=rdp_users[*],powershell.exe -NoProfile -ExecutionPolicy bypass -File «C:zabbixscriptsts_users.ps1»
Необходимо положить в папку conf.d, а представленный выше скрипт в папку scripts.
Шаблон мониторинга RDP подключений для Zabbix 5.4
Как найти всех клиентов, подключенных к портам HTTP или HTTPS
Мануал
Автор cryptoparty На чтение 2 мин Опубликовано 16.12.2019
В этой короткой короткой статье вы узнаете, как найти всех клиентов (используя их IP-адреса), подключенных к веб-серверу Apache или Nginx через порты HTTP или HTTPS на сервере Linux.
В Linux каждый сервис, работающий на сервере, прослушивает сокет, чтобы клиент отправлял запросы на подключение.
При успешном соединении с клиентом создается сокет (комбинация IP-адреса и порта (номер, который идентифицирует приложение / службу, к которой подключен клиент)).
Чтобы получить подробную информацию об этих сокетах, мы будем использовать инструмент командной строки ss, который используется для отображения информации о сетевых сокетах на компьютере с Linux.
Вы также можете использовать более старую команду netstat, которая отображает активные соединения с сокетами.
Например, вы можете использовать эти инструменты для получения статистической информации о сокетах всех клиентов, подключенных к определенному порту или службе.
# ss или # netstat
Чтобы получить список всех клиентов, подключенных к HTTP (порт 80) или HTTPS (порт 443), вы можете использовать команду ss или команду netstat, которая выведет список всех соединений (независимо от их состояния), включая статистику сокетов UNIX. ,
# ss -o state established ‘( sport = :http or sport = :https )’ или # netstat -o state established ‘( sport = :http or sport = :https )’
Кроме того, вы можете запустить следующую команду, чтобы получить список числовых номеров портов.
# ss -tn src :80 or src :443 или # netstat -tn src :80 or src :443
Это все, что у нас есть в этой короткой статье.
Для получения дополнительной информации об утилите ss прочитайте ее справочную страницу (man ss).
Вы можете связаться с нами по любым вопросам через форму комментариев ниже.
- Как найти процессы с наиболее высокой загрузкой на процессор в Linux
- Как найти и закрыть открытый порт в Linux
- ⚡ Как проверить открытые порты в Linux
- Как выполнить команды на удаленной системе Linux через SSH
- ️ Как вывести список всех запущенных служб на Systemd в Linux
Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Источник: itsecforu.ru