Поделиться через


Процедуры для правил доступа клиентов в Exchange 2019

Правила клиентского доступа разрешают или блокируют подключения Центра администрирования Exchange (EAC) или удаленного подключения PowerShell к организации Exchange 2019 в зависимости от свойств подключения. Дополнительные сведения о правилах клиентского доступа см. в разделе Правила клиентского доступа в Exchange Server.

Совет

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

Что нужно знать перед началом работы

Совет

Возникли проблемы? Обратитесь за помощью к участникам форумов Exchange. Посетите форумы по адресу Exchange Server.

Использование командной консоли Exchange для просмотра правил доступа клиентов

Следующая команда возвращает сводный список всех правил клиентского доступа:

Get-ClientAccessRule

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

Get-ClientAccessRule -Identity "<RuleName>" | Format-List [<Specific properties to view>]

В этом примере возвращаются значения всех свойств правила "Block Client Connections from 192.168.1.0/24".

Get-ClientAccessRule -Identity "Block Client Connections from 192.168.1.0/24" | Format-List

В этом примере возвращаются только указанные свойства правила.

Get-ClientAccessRule -Identity "Block Client Connections from 192.168.1.0/24" | Format-List Name,Priority,Enabled,Scope,Action

Подробные сведения о синтаксисе и параметрах см. в статье Get-ClientAccessRule.

Создание правил клиентского доступа с помощью командной консоли Exchange

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

New-ClientAccessRule -Name "<RuleName>" [-Priority <PriorityValue>] [-Enabled <$true | $false>] -Action <AllowAccess | DenyAccess> [<Conditions>] [<Exceptions>]

В этом примере создается новое правило клиентского доступа с именем Block PowerShell, которое блокирует удаленный доступ к PowerShell, за исключением клиентов в диапазоне IP-адресов 192.168.10.1/24.

New-ClientAccessRule -Name "Block PowerShell" -Action DenyAccess -AnyOfProtocols RemotePowerShell -ExceptAnyOfClientIPAddressesOrRanges 192.168.10.1/24

Примечания.

  • Рекомендуется создать правило клиентского доступа с наивысшим приоритетом, чтобы сохранить доступ администратора к удаленной оболочке PowerShell. Пример: New-ClientAccessRule -Name "Always Allow Remote PowerShell" -Action Allow -AnyOfProtocols RemotePowerShell -Priority 1.
  • Для правила задано значение приоритета по умолчанию, так как мы не использовали параметр Priority. Дополнительные сведения см. в разделе Использование командной консоли Exchange для задания приоритета правил доступа клиентов далее в этом разделе.
  • Правило включено, так как мы не использовали параметр Enabled , а значение по умолчанию — $true.

В этом примере создается новое правило клиентского доступа с именем Restrict EAC Access, которое блокирует доступ для Центра администрирования Exchange, за исключением случаев, когда клиент поступает с IP-адреса в диапазоне 192.168.10.1/24 или если имя учетной записи пользователя содержит "tanyas".

New-ClientAccessRule -Name "Restrict EAC Access" -Action DenyAccess -AnyOfProtocols ExchangeAdminCenter -ExceptAnyOfClientIPAddressesOrRanges 192.168.10.1/24 -ExceptUsernameMatchesAnyOfPatterns *tanyas*

Подробные сведения о синтаксисе и параметрах см. в статье New-ClientAccessRule.

Как проверить, все ли получилось?

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

  • Выполните следующую команду в командной консоли Exchange, чтобы увидеть новое правило в списке правил:

    Get-ClientAccessRule
    
  • Замените <RuleName> именем правила и выполните следующую команду, чтобы просмотреть сведения о правиле:

    Get-ClientAccessRule -Identity "<RuleName>" | Format-List
    
  • Узнайте, какие правила клиентского доступа повлияют на определенное клиентское подключение к Exchange, с помощью командлета Test-ClientAccessRule . Дополнительные сведения см. в разделе Использование командной консоли Exchange для проверки правил доступа клиентов далее в этом разделе.

Изменение правил доступа клиентов с помощью командной консоли Exchange

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

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

Set-ClientAccessRule -Identity "<RuleName>" [-Name "<NewName>"] [-Priority <PriorityValue>] [-Enabled <$true | $false>] -Action <AllowAccess | DenyAccess> [<Conditions>] [<Exceptions>]

В этом примере отключается существующее правило клиентского доступа с именем Allow EAC.

Set-ClientAccessRule -Identity "Allow EAC" -Enabled $false

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

  • Указанные вами значения заменят существующие значения.
  • Чтобы добавить или удалить значения без влияния на другие существующие значения, используйте следующий синтаксис: @{Add="<Value1>","<Value2>"...; Remove="<Value1>","<Value2>"...}

В этом примере диапазон IP-адресов 172.17.17.27/16 добавляется в существующее правило клиентского доступа с именем Разрешить EAC, не затрагивая существующие значения IP-адресов.

Set-ClientAccessRule -Identity "Allow EAC" -AnyOfClientIPAddressesOrRanges @{Add="172.17.17.27/16"}

Подробные сведения о синтаксисе и параметрах см. в статье Set-ClientAccessRule.

Как проверить, все ли получилось?

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

  • Замените <RuleName> именем правила и выполните следующую команду, чтобы просмотреть сведения о правиле:

    Get-ClientAccessRule -Identity "<RuleName>" | Format-List
    
  • Узнайте, какие правила клиентского доступа повлияют на определенное клиентское подключение к Exchange, с помощью командлета Test-ClientAccessRule . Дополнительные сведения см. в разделе Использование командной консоли Exchange для проверки правил доступа клиентов далее в этом разделе.

Использование командной консоли Exchange для задания приоритета правил доступа клиентов

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

Максимальный приоритет, который можно задать для правила, — 1. Минимальное значение зависит от количества правил. Например, если у вас есть пять правил, вы можете использовать значения 1-5. Изменение приоритета существующего правила оказывает каскадное влияние на другие правила. Например, если вы замените приоритет правила 5 приоритетом 2, когда у вас есть пять правил (с приоритетами от 1 до 5), то для существующего правила с приоритетом 2 будет задан приоритет 3, для правила с приоритетом 3 — приоритет 4, а для правила с приоритетом 4 — приоритет 5.

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

Set-ClientAccessRule -Identity "<RuleName>" -Priority <Number>

В этом примере для правила с именем Disable PowerShell задается приоритет 3. Все существующие правила, приоритет которых меньше или равен 3, уменьшаются на 1 (их приоритеты увеличиваются на 1).

Set-ClientAccessRule -Identity "Disable PowerShell" -Priority 4

Примечание. Чтобы задать приоритет нового правила при его создании, используйте параметр Priority командлета New-ClientAccessRule.

Как проверить, все ли получилось?

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

  • Выполните следующую команду в командной консоли Exchange, чтобы просмотреть список правил и их значения Priority :

    Get-ClientAccessRule
    
  • Замените <RuleName> именем правила и выполните следующую команду:

    Get-ClientAccessRule -Identity "<RuleName>" | Format-List Name,Priority
    

Удаление правил клиентского доступа с помощью командной консоли Exchange

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

Remove-ClientAccessRule -Identity "<RuleName>"

В этом примере удаляется правило клиентского доступа с именем Block EAC.

Remove-ClientAccessRule -Identity "Block EAC"

Примечание. Чтобы отключить правило клиентского доступа, не удаляя его, используйте параметр Enabled со значением $false в командлете Set-ClientAccessRule .

Подробные сведения о синтаксисе и параметрах см. в статье Remove-ClientAccessRule.

Как проверить, все ли получилось?

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

Get-ClientAccessRule

Проверка правил клиентского доступа с помощью командной консоли Exchange

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

Test-ClientAccessRule -User <MailboxIdentity> -AuthenticationType <AuthenticationType> -Protocol <Protocol> -RemoteAddress <ClientIPAddress> -RemotePort <TCPPortNumber>

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

  • Тип проверки подлинности: "Базовый"
  • Протокол: ExchangeAdminCenter
  • Удаленный адрес: 172.17.17.26
  • Удаленный порт: 443
  • Пользователь: julia@contoso.com
Test-ClientAccessRule -User julia@contoso.com -AuthenticationType BasicAuthentication -Protocol ExchangeAdminCenter -RemoteAddress 172.17.17.26 -RemotePort 443

Подробные сведения о синтаксисе и параметрах см. в статье Test-ClientAccessRule.