Msg windows server 2016

Команда MSG – отправить сообщение пользователю.

Команда MSG существовала еще в Windows 2000/XP и предназначалась для обмена сообщениями между пользователями вошедшими в систему локально и пользователями терминальных сессий ( подключившихся к удаленному рабочему столу ) . В Windows Vista и более поздних операционных системах семейства Windows команда MSG стала основным стандартным средством обмена сообщениями, поскольку команда net send в данных ОС больше не поддерживается.

Формат командной строки:

Описание параметров командной строки :

пользователь — Имя пользователя.
имя сеанса — Имя сеанса.
ID сеанса — Идентификатор сеанса.
@имя файла — Файл, содержащий список имен пользователей, сеансов или идентификаторов сеансов, которым отправляется сообщение.
* — Отправить сообщение всем сеансам на указанном сервере.
/SERVER:сервер — Сервер (по умолчанию — текущий).
/TIME:секунд — Интервал ожидания подтверждения от получателя.
/V — Отображение информации о выполненных действиях.
/W — Ожидание ответа от пользователя, полезно вместе с /V.
сообщение — Отправляемое сообщение. Если не указано, выдается запрос или принимается ввод из STDIN.

Нынешняя реализация msg.exe прекрасно подходит для обмена сообщениями между сеансами локальных и терминальных пользователей в пределах одной системы, однако, в случаях обмена между разными компьютерами локальной сети, потребуется изменить некоторые настройки безопасности, принятые по умолчанию в операционных системах Windows Vista, 7 и более поздних.

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

Ошибка 1722 при получении имен сеанса

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

на каждом компьютере, которому будут отправляться сообщения, добавить в раздел реестра HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server параметр AllowRemoteRPC типа REG_DWORD и равный 1 Для изменения настроек можно использовать .reg-файл следующего содержания:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server]
«AllowRemoteRPC»=dword:00000001

В ОС Windows Vista, Windows 7, 8, 10 ключ реестра AllowRemoteRPC существует, но имеет значение равное 0 , что необходимо исправить. Для применения изменений требуется перезагрузка.

поскольку для обмена сообщениями утилита msg.exe использует протокол SMB (Server Message Block ), на каждом компьютере, которому будут отправляться сообщения, должен быть открыт TCP порт 445

Примеры использования MSG :

msg * /server:Server «Тестовое сообщение » — отправить тестовое сообщение всем пользователям компьютера Server

msg * /server:192.168.0.1 «Тестовое сообщение » — отправить тестовое сообщение всем пользователям компьютера с IP-адресом 192.168.0.1

msg RDP-Tcp#0 /server:TSServer «Тестовое сообщение» — отправить тестовое сообщение пользователю терминальной сессии с именем RDP-Tcp#0 на компьютере TSServer

msg console /server:Windows7 «Тестовое сообщение» — отправить тестовое сообщение текущему локальному пользователю компьютера Windows7

msg console «Тестовое сообщение» — отправка тестового сообщения от пользователя сеанса RDP локальному пользователю. Если эта команда выполняется не пользователем терминальной сессии, то сообщение будет отправлено локальным пользователем самому себе.

Читайте также:  Как увеличить масштаб линукс

Для выполнения команды msg от имени другого пользователя можно воспользоваться утилитой PSExec из пакета PSTools или штатным средством runas.exe

psexec -u otheruser -p otherpass msg * /server:win10 TEST message

runas /user:otheruser «msg * /server:win10 Test message»

Сообщения, отправляемые командой msg локальному пользователю компьютера с операционной системой Windows XP, который отсутствует ( еще не вошел в Windows ) отображаются в окне с приглашением к регистрации в системе и могут быть доступны посторонним.

Команды сервера терминалов: MSG

В этой статье вводится синтаксис и параметры команд СЕРВЕРА терминалов MSG.

Исходная версия продукта: Windows 10 — все выпуски
Исходный номер КБ: 186480

Аннотация

MSG отправляет сообщение.

Синтаксис

Параметры

username : идентифицирует пользователя.

sessionname : Определяет имя сеанса. Имя было создано системным администратором при настройке сеанса.

sessionID : указывает ИД сеанса.

filename : определяет файл, содержащий список , и в usernames sessionnames который необходимо отправить sessionIDs сообщение.

message (строка сообщения): текст сообщения, которое вы хотите отправить. Если сообщение не ввели, для сообщения считыется стандартный ввод (STDIN).

/server:servername : Разрешает заданный сервер терминалов. В противном случае используется текущий сервер терминалов.

/time:seconds (задержка во времени): задает время ожидания перед получением подтверждения от целевого сеанса о том, что сообщение было получено.

/w (подождите). Дождись ответа от целевых пользователей.

/v (подробно). Отображает сведения о выполняемом действии.

/? (справка). Отображает синтаксис команды и сведения о параметрах команды.

Ограничения безопасности

Пользователь должен иметь разрешение на доступ к сообщению для сеанса.

Дополнительные замечания

Если пользователь или сеанс не указан, msg отображает сообщение об ошибке. Если указано имя сеанса, он должен определить активный сеанс. Для параметров могут использоваться поддиаограммы. Если присутствует один поддианс (*), он указывает всех пользователей в системе.

Примеры

Чтобы отправить сообщение Под названием «Фоладель»? для всех сеансов для пользователя MIKES введите:

Чтобы отправить сообщение на сеанс MODEM02, введите:

Чтобы отправить сообщение в сеанс 12, введите:

Чтобы отправить сообщение во все сеансы, содержащиеся в файле USERLIST, введите:

Чтобы отправить текст в файле MSG. DAT как сообщение для всех сеансов имени пользователя TERRYJ, введите:

Чтобы отправить сообщение всем во время входа пользователям, введите:

Чтобы отправить сообщение всем пользователям с временем подтверждения в 10 секунд, введите:

Сообщения не будут в очереди на экране клиента. Может оказаться полезным использовать параметр TIME: таким образом, срок действия исходных сообщений истечет и будут заменены новыми сообщениями.

Installing MSMQ on Windows Server 2016

This article describes how to install Microsoft Message Queuing (MSMQ) to store emails temporarily, while they are being scanned or waiting to be processed by the mail server.

  1. Launch the Server Manager.

Go to Manage > Add Roles and Features.

Click Next from the Before You Begin screen.

Select Role-based or feature-based installation and click Next.

Select the destination server.

  • Go to Features, navigate to Message Queuing > Message Queuing Services, and select Message Queuing Server.
  • Click Install to start the installation. The setup may require a system restart.

  • Click OK to finish.
  • Confirmation

    Once the Installation wizard is complete, the Message Queuing Services is installed on Windows Server 2016.

    Всё, что вам нужно знать про Windows Server 2016

    Всем, привет! У нас накопилось много русскоязычных материалов о Windows Server 2016, которыми хотелось бы с вами поделиться. К тому же, в начале месяца вышла русскоязычная версия книги «Введение в Windows Server 2016». Об этом, а также о других интересных статьях и видео по серверной тематике вы узнаете ниже.

    Читайте также:  What is hardware acceleration in windows

    Бесплатная электронная книга «Введение в Windows Server 2016» (pdf)

    На русском языке литературы по Windows Server 2016 совсем немного, поэтому выпуск этого перевода пришёлся как нельзя кстати.

    Книга «Введение в Windows Server 2016» посвящена разбору ключевых функций системы и вполне может стать настольной книгой для тех, кто постоянно работает с Windows Server 2016. Вы также найдёте в ней описание сценариев развертывания системы и особенностей миграции. Введение не подразумевает погружение в детали той или иной технологии, но в книге приведены ссылки на дополнительные источники информации по темам.

    Предполагается, что читатель обладает базовыми знаниями по Hyper-V, сетям, системам хранения данных, а также по Microsoft Azure.

    Обзорные видео

    Windows Server 2016: эволюция или революция?

    Защита привилегированных учетных записей в Windows Server 2016

    Какие технологии Microsoft Azure реализованы в Windows Server 2016

    Полезные статьи на Habrahabr

    Сразу после выхода Windows Server 2016 мы выпустили серию статей на Хабр. Хотел бы напомнить вам о них, а также о других материалах, которые, на мой взгляд, могут быть полезны:

    Похожие публикации

    Windows Server 2016 и службы интеграции Hyper-V

    Что нового в Windows Server 2016 Failover Clustering

    Подключайтесь к вебинару, посвященному Shielded VM в Windows Server 2016. Начало 27 апреля в 11:00 (МСК)

    Комментарии 17

    Чтобы скачать книгу бесплатно, нужно указать:

    • имя
    • фамилию
    • рабочий e-mail
    • рабочий телефон
    • страну
    • ответить на вопрос «Являетесь ли вы сотрудником государственной организации (государственного агентства, государственного образовательного учреждения или компании, полным или частичным владельцем которой является государство)?»
    • указать название организации
    • Согласиться с тем, что «Корпорация Майкрософт может использовать вашу контактную информацию для предоставления обновлений и сведений о специальных предложениях, касающихся Гибридное облако и других продуктов и служб Майкрософт. От подписки можно отказаться в любое время»
    • Согласиться с тем, что «Отправляя эту страницу, я подтверждаю, что я ознакомился с политикой в отношении обработки персональных данных ООО «Майкрософт Рус» и даю согласие оператору ООО «Майкрософт Рус»[. ] на поручение обработки и/или передачу моих персональных данных третьим лицам»

    Коллеги, вы вот сами как считаете, какое количество желающих скачать эту книгу, скачает ее именно с вашего ресурса? Как вы, вот с позиции здравого смысла и здоровой логики, оцениваете этот показатель в процентном соотношении? Вы не поймите меня не правильно, мне просто интересно узнать ваше мнение на этот счет 🙂

    Рабочий телефон и рабочая почта? Не жалко) Они для того и существуют, чтобы их распространять. Имя и фамилию, кому некомфортно — напишут левые.

    Иногда лучше жевать, чем говорить) В чём несогласны хоть? Вам дают бесплатную книгу, от вас тоже что-то просят, это нормально. Передача третьим лицам — самый спорный пункт, но наверняка в пределах холдинга

    Msg windows server 2016

    Добрый день! Уважаемые читатели и гости IT блога Pyatilistnik.org. В прошлый раз мы с вами научились устанавливать библиотеку VCRUNTIME140.dll в операционных системах Windows. Сегодня я переключу наше внимание с клиентских ОС на серверные. Наверняка многие из обычных людей , а тем более системные администраторы знают, что такое терминальные службы, RDS ферма или удаленный стол (Удаленка). Это уже неотъемлемая часть бизнес процессов, для многих организаций. Бывают ситуации, что вам необходимо оповестить всех пользователей терминального сервера, о необходимости в его обслуживании. По мимо корпоративной почты вы можете, это делать и средствами Windows и сегодня я покажу, как отправить сообщение всем пользователям RDS фермы.

    Постановка задачи

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

    Читайте также:  Аудио драйвер для asus windows 10 64 bit

    Методы отправки сообщения на RDS ферме

    • Отправка сообщение, через диспетчер задач
    • Отправка сообщения через утилиту командной строки msg
    • Отправка сообщения через командлеты PowerShell

    Как отправить предупреждение пользователям RDS через диспетчер задач

    Во времена терминальных служб на Windows Server 2008 R2, была замечательная возможность массовой отправки сообщений для всех пользователей фермы и делалось, это штатно из диспетчера задач. В 2008R2, когда вы запустите диспетчер задач и перейдете на вкладку «Пользователи», то у вас была возможность выделить их всех, щелкнуть правой кнопкой мыши и из контекстного меню выбрать пункт «Отправить сообщение».

    У вас откроется окно «Отправка сообщений», где вы можете задать заголовок сообщения и его текст. После чего нажмите кнопку «Ок».

    В результате все пользователи данного удаленного стола, получат вот такое сообщение в виде всплывающего окна.

    Точно так же в Windows Server 2008 R2 вы могли произвести отправку оповещений, через оснастку «Диспетчер служб удаленных рабочих столов»

    К сожалению начиная с Windows Server 2012 R2, данную возможность для массовой рассылки из диспетчера задач убрали, вы теперь не можете выделить всех пользователей.

    Использование утилиты MSG

    Есть такая замечательная утилита командной строки msg. Что хорошо, вы ей можете пользоваться на любом компьютере, хоть на Windows 8.1. Откройте cmd, желательно от имени администратора и просто введите:

    У вас появится справка по утилите. Конструкция команды будет такой MSG < | | | @ | *>[/SERVER: ] [/TIME: ] [/V] [/W] [ ]

    • Имя пользователя.
    • Имя сеанса. Удобно если нужно отправить конкретному сеансу.
    • Идентификатор сеанса.
    • @ Файл, содержащий список имен пользователей, сеансов или идентификаторов сеансов, которым отправляется сообщение.
    • * Отправить сообщение всем сеансам на указанном сервере.
    • /SERVER: Сервер (по умолчанию — текущий).
    • /TIME: Интервал ожидания подтверждения от получателя.
    • /V Отображение информации о выполненных действиях.
    • /W Ожидание ответа от пользователя, полезно вместе с /V.
    • Отправляемое сообщение. Если не указано, выдается запрос или принимается ввод из STDIN.

    Если нужно отправить сообщение всем людям локально с того же сервера, где они работают, то просто введите:

    Вот так, например в Windows Server 2019 выглядит подобное оповещение на RDS ферме.

    Для отправки оповещения на удаленный сервер вы должны использовать вот такую конструкцию:

    Для отправки на несколько серверов, можно использовать вот такое построение команды:

    Использование связки PowerShell и msg

    Если у вас выскакивает ошибка «Ошибка 1726 при получении имен сеанса» и сообщение не отправляется, то тут вся загвоздка в том, что у той учетной записи от имени которой открыта командная строка, просто не хватает прав. Вам нужно открыть cmd от имени пользователя у кого есть права на тот сервер.

    Третий метод отправки сообщения пользователям RDS через Send-RDUser Message

    Безусловно самым популярным и универсальным методом отправки оповещений пользователям удаленного рабочего стола, являются командлеты PowerShell. Одним из таких командлетов выступает Send-RDUser Message.

    • HostServer — Имя RDS сервера
    • -UnifiedSessionID — идентификатор сеанса, к сожалению сразу нельзя выбрать всех, обязательно указывать число (Как определить номер сеанса пользователя, читайте по ссылке)
    • -MessageTitle — Текст самого сообщения

    Еще есть возможность воспользоваться скриптом гуляющем по интернету:

    $Sessions = Get-TerminalSession -ComputerName «Имя сервера»
    ForEach ($Session in $Sessions) <
    Send-RDUserMessage -HostServer $Session.ServerName -UnifiedSessionID $Session.UnifiedSessionID -MessageTitle $MessageTitle -MessageBody $MessageText
    >

    $ConnectionBroker = «»
    $SessionHostCollection = «Терминал»

    $MessageTitle = «От кого)) »
    $MessageText = «Текст «

    If ($ConnectionBroker -eq «») <
    $HAFarm = Get-RDConnectionBrokerHighAvailability
    $ConnectionBroker = $HAFarm.ActiveManagementServer
    >

    $Sessions = Get-RDUserSession -ConnectionBroker $ConnectionBroker -CollectionName $SessionHostCollection
    ForEach ($Session in $Sessions) <
    Send-RDUserMessage -HostServer $Session.ServerName -UnifiedSessionID $Session.UnifiedSessionID -MessageTitle $MessageTitle -MessageBody $MessageText
    >

    Кстати если вы неправильно развернули RDS ферму, то при выполнении скрипта получите сообщение

    Оцените статью