Сбой операции на компьютере клиенту winrm не удается обработать запрос

Обновлено: 07.07.2024

В этом разделе описываются некоторые из проблем, которые могут возникнуть при использовании функций удалённого взаимодействия Windows PowerShell, основанные на технологии WS-Management, и предлагаются решения этих проблем.

Перед использованием удалённого взаимодействия Windows PowerShell , рекомендуется ознакомиться с about_Remote и about_Remote_Requirements для изучения руководств по конфигурации и базовом использовании удалённого взаимодействия. Кроме того, справки по каждому из командлетов удаленного взаимодействия, в частности описание параметров, имеют полезную информацию, которая предназначена, чтобы помочь вам избежать проблем.

Обновленные версии этой темы, и другие справки Windows PowerShell, могут быть скачаны с помощью командлета Update-Help.

Решение вопросов, связанных с правами доступа и аутентификации

В этом разделе обсуждаются проблемы удаленного взаимодействия, связанные с правами доступов пользователей, компьютеров, и требованиями к удаленному взаимодействию.

Как запустить от имени администратора

ОШИБКА: Отказано в доступе. Вам необходимо запустить этот командлет с повышенными правами.
ERROR: Access is denied. You need to run this cmdlet from an elevated process.

Примечание: По умолчанию, в Windows Server 2008 R2, значок Windows PowerShell закреплен на панели задач .

Как включить удаленное взаимодействие

По умолчанию, Windows PowerShell Remoting включен в Windows Server 2012 и более новых версиях серверных систем Windows. Чтобы включить удаленное взаимодействие, на всех других системах, необходимо запустить командлет Enable-PSRemoting. На Windows Server 2012 и более новых версиях Windows Server, можно так же повторно запустить командлет Enable-PSRemoting, это включит удаленное взаимодействие, если оно было отключено.

Чтобы настроить компьютер на получение удаленных команд, воспользуйтесь командлетом Enable-PSRemoting. Этот командлет настроит все необходимые параметры удаленного взаимодействия, настроит конфигурацию сессий и перезапустит службы WinRM, чтобы изменения вступили в силу.

Для подавления всех пользовательских подсказок укажите парметр -Force:

Для получения дополнительной информации см Enable-PSRemoting.

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

Для настройки одного компьютера на приёма соединений и выполнения на нём удалённых команд в Windows PowerShell, используется командлет Enable-PSRemoting.

Как включить слушателей с помощью групповой политики

Computer Configuration\Administrative Templates\Windows Components\Windows Remote Management (WinRM)\WinRM service

Включите политику и укажите IPv4 и IPv6 фильтры. Можно воспользоваться шаблонами (*).

Как включить удаленное взаимодействие в сетях общего пользования

ОШИБКА: Не удалось проверить состояние брандмауэра
ERROR: Unable to check the status of the firewall

Командлет Enable-PSRemoting возвращает эту ошибку, когда локальная сеть является публичной, но параметр SkipNetworkProfileCheck не использовался в команде.

На клиентских версий Windows, командлет Enable-PSRemoting успешно выполняется в частных и доменных сетях. По умолчанию, он не работает на общественных сетях, но если вы используете параметр SkipNetworkProfileCheck, командлет Enable-PSRemoting успешно создает правила брандмауэра, что разрешает трафик из той же локальной подсети.

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

Я, в свою очередь, тоже попробовал сделать это в разных окружениях и получил несколько разных результатов:

Если клиент не входит в домен

IP Address

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

компьютеры сервера и клиента расположены в разных доменах
  • при обращении к серверу, клиент указывает IP-адрес в качестве адреса назначения
  • при обращении к серверу, клиент указывает имя в качестве адреса назначения
  • Blank: No hosts are trusted.
  • The asterisk "*" character: All hosts are trusted.
  • A list of host name patterns separated by the comma "," character, in which each host name can be one of four possible values:
    • String starting with the asterisk "*" character and containing at least two characters. All hosts that share the suffix are trusted.
    • String ending with the asterisk "*" character and containing at least two characters. All hosts that share the prefix are trusted.
    • The exact string " ": All NetBIOS names are trusted (for example, strings that do not contain the period "." character).
    • A string without the asterisk "*" character: The host named by the string is trusted.

    Основная идея выделена. И это означает, что параметр TrustedHosts нужно использовать на клиенте. В этом списке указываются машины, при работе с которыми невозможно использовать схемы с поддержкой взаимной аутентификации. Таким образом, если и клиент и сервер находятся в одном домене, то для подключения вы можете использовать простую команду без дополнительных параметров.

    • И так, первоначально, в настройках удаленного сервера должно быть разрешено удаленное управление


    • Далее на удаленной стороне открыть порт 5985 как на роутере, так и в брандмауэре, входящем подключении.
    • А также на удаленном сервере нужно включить в брандмауэре уже готовые правила входящих подключений:
    • Далее, на сервера с которого нужно подключаться нужно выполнить в cmd команду

    это нужно сделать, потому что будет ошибка при подключении удаленного сервера в Диспетчере серверов о том, что типа

    • *Еще есть нюанс, который точно не проверенный, это то, что на обоих серверах, пользователь Администратор должен иметь одинаковый пароль.


    И все же, как написал я в начале, мы то добавили удаленный сервер в диспетчер серверов, но нам еще предстоит открытия множество портов как на роутере, так и готовых правилах брандмауэра что бы, например, иметь доступ к оснастке Управления компьютером удаленного сервера или же открыть Диспетчер устройств удаленного сервера, но это уже отдельная история + рекомендую в брандмауэре использовать Фильтры для группировки групп связанных с той или иной службой.

    Комментариев нет:

    Популярный пост


    Установил сервер 1С, установил СУБД и потом решил переименовать сервер (компьютер), который находиться обычной рабочей группе, без какого-.



    Взято с интернета. Число = 1.1 ; ЧислоОкр = Окр ( Число + 0.5 , 0 , РежимОкругления . Окр15как10 ) ;

    Архив блога:

    Пожалуйста, не забывайте при копировании текста указывать адрес оригинала. Технологии Blogger.

    Первым делом следует скачать дистрибутив операционной системы(ОС), т.к. ОС условно бесплатная, ее можно совершенно спокойна скачать с сайта microsoft, скачивать и устанавливать ОС нужно на английском языке, т.к. система не понимает русского и большая часть команд могут не работать, но проблемы в этом не вижу в самой ОС на англиском языке мы увидим только первоначальную настройку сервера! Для удаленного управления Hyper-V Server можно использовать ОС Windows Server 2012 R2 Standard или Datacenter, а также Windows 8\8.1\10.

    АВТОМАТИЧЕСКИЙ ЗАПУСК POWERSHELL ПРИ ВХОДЕ В СЕАНС


    Когда вышла первая версия Hyper-V Server 2008, PowerShell в нем официально не поддерживался, и, единственным способом настройки и получения информации с сервера были утилиты командной строки, такие как net, netsh, wmic, и множество других. Они не обладали единообразным интерфейсом и способом использования, что в итоге увеличивало порог вхождения для администратора и влияло на производительность работы. Но время не стоит на месте и, начиная с Hyper-V Server 2008 R2, Microsoft внедряет поддержку PowerShell, а в Hyper-V Server 2012 PowerShell можно использовать сразу после установки системы. Более того, в Hyper-V Server 2012 включен модуль PowerShell для взаимодействия с Hyper-V, а в Hyper-V Server 2012 R2 количество командлетов для работы с Hyper-V превысило значение 170. Точное значение можно посмотреть с помощью
    Get-Command -ModuleHyper-V | Measure-Object

    Зайдем в оболочку PowerShell и запустим командлет New-ItemProperty, который создаст новый ключ в реестре HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\run.

    New-ItemProperty -path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\run -Name PowerShell -Value "cmd /c start /max C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe -noExit" -Type string

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


    НАСТРОЙКА СЕТЕВЫХ АДАПТЕРОВ
    Если сетевые адаптеры до этого не были настроены с помощью sconfig.cmd, сделаем это с помощью командлетов PowerShell.

    Смотрим текущую конфигурацию IP на сетевых интерфейсах. В моем случае адресация назначена службой APIPA, так как в сети нет DHCP сервера.


    Назначаем статическую адресацию, маску сети, шлюз по умолчанию и адреса DNS серверов. InterfaceIndex сетевого адаптера берем из вывода предыдущего командлета.

    New-NetIPAddress -InterfaceIndex 13 -IPAddress 192.168.1.5 -DefaultGateway 192.168.1.1 -PrefixLength 24

    Set-DnsClientServerAddress -InterfaceIndex 13 -ServerAddresses 192.168.1.2,192.168.1.3


    Если использование IPv6 на сетевом интерфейсе пока не планируется, имеет смысл отключить его на интерфейсе для уменьшения «attacksurface».

    Проверяем текущую настройку IPv6 на интерфейсе. Имя интерфейса берем из вывода командлетов Get-NetAdapter или Get-NetIPConfiguration.

    Get-NetAdapterBinding -InterfaceDescription "Microsoft Hyper-V Network Adapter" | Where-Object -Property DisplayName -Match IPv6 | Format-Table –AutoSize


    Отключить поддержку IPv6 на сетевом адаптере можно командлетом Disable-NetAdapterBinding. Данное действие будет аналогично снятию галки «Internet Protocol Version 6 (TCP/IPv6)» в настройках адаптера в графическом интерфейсе Windows.

    Disable-NetAdapterBinding -InterfaceDescription "Microsoft Hyper-V Network Adapter" -ComponentID ms_tcpip6


    Настройка межсетевого экрана (Advanced Firewall)

    С внедрением PowerShell в Hyper-V Server появился удобный способ управления правилами межсетевого экрана, взамен устаревающего netsh. Просмотреть список комадлетов можно с помощью Get-Command.

    Get-Command -Noun *Firewall* -Module NetSecurity

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

    Get-NetFirewallRule | Where-Object -Property DisplayName -Match "firewall" | Format-List -Property Name, DisplayName, Enabled


    Включаем оба правила.

    Enable-NetFirewallRule -Name RemoteFwAdmin-In-TCP,RemoteFwAdmin-RPCSS-In-TCP

    Теперь можно попробовать подключиться к оснастке MMC управления межсетевым экраном с хоста управления.



    ВЗАИМОДЕЙСТВИЕ С SERVER MANAGER

    Если гипервизор и хост управления не являются частью домена, а находятся в рабочей группе, как в нашем случае, то при попытке добавить сервер Hyper-V в Server Manager на удаленном хосте возникнет ошибка согласования WinRM.


    Решается проблема довольно просто – достаточно добавить на Hyper-V Server в доверенные узлы WinRM на хосте управления и обновить текущее состояние в ServerManager.

    Set-Item wsman:\localhost\Client\TrustedHosts HYPER-V01 -Concatenate –Force


    Создание дискового хранилища для виртуальных машин

    Теперь настало время создать хранилище файлов виртуальных машин и файлов виртуальных дисков. Для хранения данных будем использовать отдельный раздел на физическом диске. Для начала посмотрим список командлетов PowerShell, которые используются для управления носителями. Как обычно будем использовать для этого командлет Get-Command. Во втором случае мы получим список командлетов, служащих для получения информации.

    Get-Command -Module Storage

    Get-Command -Verb *Get* -Module Storage

    Просмотрим список физических дисков на сервере.


    Создаем новый раздел на диске максимально возможного размера, назначаем букву D. Используем id из Get-Disk. После этого форматируем раздел в NTFS и указываем его метку.

    New-Partition -DiskNumber 0 -DriveLetter D –UseMaximumSize


    Format-Volume -DriveLetter D -FileSystem NTFS -NewFileSystemLabel "VMStore"


    Убедимся в правильности проделанных нами операций с помощью оснастки MMC Disk Management на удаленном хосте, для этого включим соответствующие правила на межсетевом экране.

    Как мы видим, наш только что созданный диск прекрасно отображается в Disk Management.


    Создадим папку на нашем разделе, где будем хранить настройки и файлы дисков виртуальных машин. Командлет New-Item позволяет создавать вложенные пути, так что нет необходимости запускать его два раза для каждой папки.

    New-Item -Path "D:\Hyper-V\Virtual Hard Disks" -Type Directory

    Создадим папки D:\Distrib и D:\ImportedVM, которые будем соответственно использовать для хранения дистрибутивов ОС и импортированных ВМ с других хостов виртуализации.

    New-Item -Path D:\Distrib -ItemType Directory

    New-Item -Path D:\ImportedVM -ItemType Directory

    Для создания шары используем командлет New-SmbShare, с помощью которого дадим полный доступ по сети для группы локальных администраторов сервера.

    New-SmbShare -Path D:\Distrib -Name Distrib -Description "OS Distributives" -FullAccess "BUILTIN\Administrators"

    New-SmbShare -Path D:\ImportedVM -Name ImportedVM -Description "Imported VMs" -FullAccess "BUILTIN\Administrators"


    Проверяем с помощью PowerShell и с помощью ServerManager с хоста управления.

    Get-SmbShare -Name Distrib,ImportedVM | Format-List

    Get-SmbShareAccess -Name Distrib,ImportedVM | Format-List



    Общий список командлетов, относящихся к SMB (ServerMessageBlock), как обычно можно получить с помощью командлета Get-Command.

    В заключение этой темы добавлю только то, что если на сервере не используется физический или логический RAID, то для повышения производительности и надежности работы с хранилищем ВМ целесообразно использование технологии Storage Pools (к примеру, такие командлеты, как New-StoragePool, New-Volume). Более подробнее об использовании Storage Pools совместно с Hyper-V я напишу в одной из будущих статей.

    НАСТРАИВАЕМ ПАРАМЕТРЫ ГИПЕРВИЗОРА

    Приступим к настройке параметров гипервизора. Основные параметры Hyper-V можно получить с помощью командлета Get-VMHost.


    Как мы видим из вывода командлета, пути ВМ и виртуальных дисков сейчас размещаются на одном разделе с ОС, что нас не устраивает ни с точки зрения скорости работы, ни с точки зрения надежности. Пропишем пути к созданным в прошлом разделе папкам с помощью командлета Set-VMHost.

    Проверим с помощью PowerShell…


    … и с помощью Hyper-V Manager.


    Как я упоминал выше, в Hyper-V Server 2012 R2 возможно использование EnhancedSessionMode для ВМ, что позволит пробросить в ВМ локальные диски, принтеры, звук, использовать буфер обмена и многомониторные конфигурации. Давайте включим его.

    Set-VMHost -EnableEnhancedSessionMode 1

    СОЗДАДИМ ВИРТУАЛЬНЫЙ КОММУТАТОР

    Виртуальный коммутатор Hyper-V (Hyper-V Extensible Switch) предназначен для организации сетевого взаимодействия между различными ВМ, между ВМ и хостом виртуализации, между ВМ и внешней средой. На самом деле у Hyper-V Extensible Switch обширное количество возможностей, много вкусного появилось в версии 2012 R2. Так что сейчас не будем углубляться в эту тему, и создадим простейший External Switch, который привязывается к сетевой карте Hyper-V Server, и организует взаимодействие ВМ с физической сетью.

    Для начала проверим поддержку SR-IOV (Single-Root Input/Output (I/O) Virtualization).

    Get-VMHost | Select-Object -Property "Iov*" | Format-List


    В моем случае поддержки SR-IOV нет. Это связано с тем, что я немного схитрил, и в данной демонстрации у меня Hyper-V сервер запущен не на живом железе, а в виртуальной среде.

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

    Get-NetAdapter | Where-Object -PropertyStatus -eqUp


    Привязываем виртуальный свитч к сетевому адаптеру и при наличии SR-IOV включим его поддержку.

    Внимание: Включить или отключить поддержку SR-IOV после создания свитча будет невозможно, для изменения этого параметра необходимо будет пересоздавать свитч.

    New-VMSwitch -Name "Extenal_network" -NetAdapterName "Ethernet 2" -EnableIov 1


    В моем случае Hyper-V выдает ошибку, опять же связанную с тем, что гипервизор сам запущен в виртуальной среде. На живом железе командлет создаст External Switch с именем «External_network» и привяжет его к сетевому адаптеру Ethernet 2. Виртуальный свитч также появится в списке сетевых адаптеров и на него будет перепривязаны все сетевые параметры физического адаптера Ethernet 2

    Проверить можно с помощью командлетов

    Get-VMSwitch и Get-NetIPConfiguration –Detailed

    На этом этапе первоначальная настройка Hyper-V Server 2012 R2 закончена, и все готово для создания нашей первой виртуальной машины. Но об этом мы поговорим в следующей статье, использовать будем, естественно, PowerShell.

    Ошибки в процессе установки и настройки Hyper-V Server 2012 и способы их устранения.

    В.: Не отображается сетевой адаптер в Hyper-V Server Configuration console (п.8).
    П.: 1) В сетевой адаптер не вставлен кабель;
    2) Неполадки с активным (коммутатор, маршрутизатор и др.) или пассивным (кабели, розетки, патч-панель и др.) сетевым оборудованием .
    Р.: 1) Вставьте кабель;
    2) Проверьте работоспособность сетевого оборудования.

    » (Отказано в доступе. Не удается установить соединение между

    ).
    П.: Пользователю не предоставлены права на удаленный запуск (remote launch and activation) в DCOM.
    Р.: Все манипуляции производятся на клиентском компьютере:
    1) Запустите оснастку «Component Services» (Службы компонентов) с полными правами администратора. Для этого можно, например, выполнить программу %SystemRoot%\System32\dcomcnfg.exe.
    2) В дереве консоли последовательно разверните узлы «Component Services» (Службы компонентов) и «Computers» (Компьютеры).
    3) В контекстном меню объекта «My Computer» (Мой компьютер) выберите «Properties» (Свойства).
    4) В окне «My Computer Properties» (Свойства моего компьютера) выберите вкладку «COM Security» (Безопасность COM).
    5) В разделе «Access Permissons» (Права доступа) нажмите кнопку «Edit Limits» (Редактировать ограничения).
    6) В диалоговом окне «Access Permissions» (Права доступа) выберите строку НANONYMOUS LOGON» (Анонимный вход) из списка «Group or user names» (Имена пользователей и групп).
    В графе «Allow» (Разрешить) раздела «Permissions for User» (Разрешения для пользователя) выберите «Remote Access» (Удалённый доступ).
    7) Закройте все диалоговые окна кнопкой ОК.

    В.: Добавив новый жесткий диск в сервер Microsoft Hyper-V Server 2008 R2, его можно проинициализировать через консоль «Управление дисками» (Disk Management MMC) с удаленного компьютера. Однако при попытке подключения к серверу, консоль сообщает: «RPC сервер не доступен» («RPC Server is unavailable»).

    Р.:Необходимо изменить правила брандмауэра на обоих компьютерах (не только на Hyper-V Server). Для английской версии ОС выполните команду:

    netsh advfirewall firewall set rule group="Remote Volume Management" new enable=yes

    Читайте также: