Разное

Powershell exchange: Подключение к Exchange Online PowerShell

29.03.1978

Содержание

Подключение к Exchange Online PowerShell

  • Чтение занимает 6 мин

В этой статье

Модуль Exchange Online PowerShell V2 (сокращенно — модуль EXO V2) использует современную проверку подлинности и поддерживает многофакторную проверку подлинности (MFA) для подключения ко всем средам PowerShell в Microsoft 365, связанным с Exchange, а именно Exchange Online PowerShell, PowerShell безопасности и соответствия требованиям, а также к отдельной среде PowerShell Exchange Online Protection (EOP). Дополнительные сведения о модуле EXO V2 см. в статье Сведения о модуле Exchange Online PowerShell V2.

В этой статье приведены инструкции по подключению к Exchange Online PowerShell с помощью модуля EXO V2 с многофакторной проверкой подлинности (MFA) и без нее.

Чтобы использовать инструкции по менее безопасному устаревшему удаленному подключению PowerShell, которое станет нерекомендуемым, см. статью Обычная проверка подлинности: подключение к Exchange Online PowerShell.

Чтобы использовать устаревший модуль Exchange Online PowerShell для удаленного подключения к Exchange Online PowerShell с помощью MFA, см. статью Модуль V1: подключение к Exchange Online PowerShell с помощью MFA. Обратите внимание, что поддержка данной устаревшей версии модуля в дальнейшем будет прекращена.

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

  • Требования для установки и использования модуля EXO V2 описаны в статье Установка и обслуживание модуля EXO V2.

    Примечание

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

  • После подключения управление наличием доступа к командлетам и параметрам осуществляется путем управления доступом на основе ролей (RBAC). Дополнительные сведения см. в статье Разрешения в Exchange Online.

    Сведения о необходимых разрешениях для запуска определенных командлетов Exchange Online см. в статье Поиск разрешений, необходимых для запуска командлета Exchange.

  • Если в вашей организации используется локальная служба Exchange и вас есть лицензии Exchange Enterprise CAL со службами для Exchange Online Protection (EOP), инструкции по подключению EOP PowerShell совпадают с Exchange Online PowerShell, как описано в этой статье.

Совет

Возникли проблемы? Обратитесь на форум по Exchange Online.

Подключение к Exchange Online PowerShell с использованием современной проверки подлинности или без нее

Эти инструкции по подключению используют современную проверку подлинности и работают с многофакторной проверкой подлинности (MFA) или без нее.

Другие методы входа, доступные в PowerShell 7, см. в разделе Возможности входа PowerShell 7 далее в этой статье.

  1. В окне PowerShell загрузите модуль EXO V2, выполнив следующую команду:

    Import-Module ExchangeOnlineManagement
    

    Примечания.

    • Если модуль EXO v2 уже установлен, предыдущая команда будет действовать как написанная.
    • Возможно, вы сможете пропустить этот шаг и запустить Connect-ExchangeOnline без предварительной загрузки модуля.
  2. В команде, которую вам нужно выполнить, используется следующий синтаксис:

    Connect-ExchangeOnline -UserPrincipalName <UPN> [-ShowBanner:$false] [-ExchangeEnvironmentName <Value>] [-DelegatedOrganization <String>] [-PSSessionOption $ProxyOptions]
    
    • <UPN> — ваша учетная запись в формате имени субъекта-пользователя (например, [email protected]).
    • Если вы используете параметр ExchangeEnvironmentName, вам не требуется применять параметры ConnectionUri или AzureADAuthorizationEndPointUrl. Дополнительные сведения см. в описаниях параметров в статье Connect-ExchangeOnline.
    • В параметре DelegatedOrganization указывается организация клиента, которой вы хотите управлять в качестве авторизованного партнера корпорации Майкрософт.
      Дополнительные сведения см. в разделе Партнеры.
    • Если вы находитесь за прокси-сервером, сначала выполните следующую команду: $ProxyOptions = New-PSSessionOption -ProxyAccessType <Value>, где <Value> равно IEConfig, WinHttpConfig или AutoDetect. Затем используйте параметр PSSessionOption со значением $ProxyOptions. Дополнительные сведения см. в статье New-PSSessionOption.
    • Часто можно опустить параметр UserPrincipalName на следующем шаге, чтобы ввести имя пользователя и пароль после выполнения команды Connect-ExchangeOnline
      . Если это не сработает, необходимо использовать параметр UserPrincipalName.
    • Если вы не используете многофакторную проверку подлинности, часто можно использовать параметр Credential вместо параметра UserPrincipalName. Сначала запустите команду $Credential = Get-Credential, введите имя пользователя и пароль, а затем используйте имя переменной для параметра Credential (-Credential $Credential). Если это не сработает, необходимо использовать параметр UserPrincipalName.

    В этом примере выполняется подключение к Exchange Online PowerShell в организации Microsoft 365 или Microsoft 365 GCC

    :

    Connect-ExchangeOnline -UserPrincipalName [email protected]
    

    В этом примере выполняется подключение к Exchange Online PowerShell в организации Office 365 Germany:

    Connect-ExchangeOnline -UserPrincipalName [email protected] -ExchangeEnvironmentName O365GermanyCloud
    

    В этом примере выполняется подключение к Exchange Online PowerShell в организации Microsoft GCC High:

    Connect-ExchangeOnline -UserPrincipalName [email protected] -ExchangeEnvironmentName O365USGovGCCHigh
    

    В этом примере выполняется подключение к Exchange Online PowerShell в организации Microsoft 365 DoD

    :

    Connect-ExchangeOnline -UserPrincipalName [email protected] mil -ExchangeEnvironmentName O365USGovDoD
    

    В этом примере выполняется подключение к Exchange Online PowerShell для управления другим клиентом:

    Connect-ExchangeOnline -UserPrincipalName [email protected] -DelegatedOrganization adatum.onmicrosoft.com
    
  3. В открывшемся окне входа введите пароль и нажмите кнопку Войти.

  4. Только многофакторная проверка подлинности: Код проверки создается и отправляется на основе варианта ответа, настроенного для вашей учетной записи (например, текстовое сообщение или приложение Microsoft Authenticator на вашем устройстве).

    В открывшемся окне введите код проверки и нажмите кнопку Подтвердить.

Дополнительные сведения о синтаксисе и параметрах см. в статье Connect-ExchangeOnline.

Примечание

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

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

Disconnect-ExchangeOnline

Возможности входа PowerShell 7

В этом разделе описаны возможности входа, доступные в версии 2.0.4 и более поздних версиях модуля EXO V2 в PowerShell 7.

Дополнительные сведения об операционных системах, поддерживаемых модулем EXO V2 в PowerShell 7, см. в разделе Поддерживаемые операционные системы для модуля EXO V2.

Дополнительные сведения о синтаксисе и параметрах см. в статье Connect-ExchangeOnline.

Интерактивные сценарии с использованием единого входа на основе браузера

Единый вход на основе браузера — это стандартный метод входа в PowerShell 7. Команда

Connect-ExchangeOnline открывает страницу входа Azure AD в браузере, используемом по умолчанию. После ввода учетных данных в открывшемся сеансе PowerShell будут доступны старые командлеты Exchange Online и командлеты модуля EXO V2.

Если вы используете в команде параметр UserPrincipalName, значение UPN применяется на странице входа в браузере.

Connect-ExchangeOnline -UserPrincipalName [email protected]

Вход на основе устройства

Используйте вход на основе устройства, если браузеры недоступны (поэтому вы не можете увидеть страницу входа).

Connect-ExchangeOnline -Device

Команда возвращает URL-адрес и уникальный код, связанный с сеансом. Откройте URL-адрес в браузере на любом компьютере и введите уникальный код. Когда вы выполните вход в веб-браузере, сеанс в окне PowerShell 7 пройдет проверку подлинности с помощью обычного потока проверки подлинности Azure AD, а командлеты Exchange Online импортируются через несколько секунд.

Встроенные учетные данные

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

Примечание

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

Этот метод является улучшением параметра Credential, так как вам не нужно локально хранить учетные данные в сценарии, и вы можете ввести учетные данные непосредственно в интерактивном сеансе PowerShell.

Connect-ExchangeOnline -InlineCredential

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

Командлеты Exchange Online импортируются в локальный сеанс PowerShell и отображаются на индикаторе выполнения. Если не появляются сообщения об ошибках, значит, подключение установлено. Чтобы выполнить быструю проверку, запустите командлет Exchange Online, например Get-Mailbox, и просмотрите результаты его работы.

Если возникают ошибки, просмотрите список возможных причин ниже.

  • Распространенная проблема — неправильный пароль. Еще раз повторите три описанных выше действия, уделив особое внимание имени пользователя и паролю, которые вы используете.

  • Для предотвращения атак типа «отказ в обслуживании» (DoS) можно открыть не более пяти удаленных подключений PowerShell к Exchange Online.

  • Для удаленного сеанса PowerShell необходимо включить учетную запись, которая используется для подключения. Дополнительные сведения см. в статье Включение и отключение доступа к Exchange Online PowerShell.

  • Между локальным компьютером и Microsoft 365 необходимо открыть трафик для TCP-порта 80. Вполне вероятно, что он уже открыт, но в этом следует убедиться, если в вашей организации действует политика ограниченного доступа к Интернету.

  • Если в вашей организации используется федеративная проверка подлинности и ваш поставщик удостоверений (IDP) и/или служба маркеров безопасности (STS) не являются общедоступными, вы не сможете использовать федеративную учетную запись для подключения к Exchange Online PowerShell. Вместо этого вам нужно создать и использовать нефедеративную учетную запись в Microsoft 365, чтобы подключиться к Exchange Online PowerShell.

Управляем Exchange через PowerShell — «Хакер»

Подключаться к серверу Exchange и управлять почтой можно не только через почтовик, но и напрямую из PowerShell. Это позволяет писать самые разные скрипты — например, массово создавать ящики или переносить архивы. Посмотрим, как выглядит этот интерфейс.

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

С:> $session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri http://mx.mailserver.ru -Authentication Kerberos

Вместо http://mx.mailserver.ru указываем URI своего сервера (его можно глянуть в Exchange Admin Center в разделе «Серверы -> Виртуальные директории»). Теперь используем нашу сессию:

С:> Import-PSSession $session -DisableNameChecking

После этого можно начинать вводить команды Exchange Management Shell. К примеру, для того чтобы посмотреть, сколько места занимает каждая папка, выполним:

Get-MailboxFolderStatistics -Identity <user> -FolderScope All | select Name,ItemsInFolder,FolderSize

Поиск и удаление писем по теме и вложению:

Get-Mailbox -ResultSize unlimited | Search-Mailbox -SearchQuery вложение:"archive. exe" -DeleteContent

Вывести ящики, которые не использовались за последние 120 дней:

Get-MailboxDatabase | Get-MailboxStatistics | where {$_.Lastlogontime -lt (get-date).AddDays(-120)} | Sort Lastlog

Экспортировать почтовый ящик в формате PST:

New-MailboxExportRequest -Mailbox "xakep" -Filepath "PCtempxakep.pst" -ContentFilter {(Received -gt "01/01/2017")}
New-MailboxExportRequest -Mailbox "xakep" -Filepath "PCtempxakep.pst"

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

Exchange Management Shell

11 команд PowerShell для Office 365, которые полезно знать администраторам

Использование PowerShell для управления Office 365 может сделать вашу работу быстрее, эффективнее и проще. PowerShell предоставляет доступ к информации о среде Office 365, к которой нельзя получить доступ через центр администрирования Microsoft 365, и позволяет выполнять массовые операции с помощью одной команды. Благодаря интеграции продуктов Office 365 в единый интерфейс, PowerShell также упрощает управление доступом пользователей и усиливает кибербезопасность.

Данная статья объясняет наиболее полезные для системных администраторов команды PowerShell для Office 365. Мы разделили эти команды на три категории — автоматизация, отчетность и конфигурация, — чтобы вы могли быстро найти то, что вам нужно.

Как PowerShell может помочь работе с Office 365


Центр администрирования Microsoft 365 отлично подходит для обычных пользователей. Используя эту систему, вы можете управлять своими учетными записями и лицензиями пользователей Office 365, а также такими службами, как Exchange Online, Teams и SharePoint Online. Вы также можете управлять всеми этими компонентами с помощью PowerShell. Его использование значительно упрощает автоматизацию и делает вашу работу более эффективной.

В частности, существует несколько ключевых факторов, которые упрощают управление Office 365 с помощью PowerShell:

  • PowerShell для Office 365 показывает дополнительную информацию, которую вы не можете увидеть в центре администрирования Microsoft 365;
  • PowerShell позволяет настраивать функции и параметры, недоступные в центре администрирования Office 365;
  • Если вы используете Office 365 для обмена файлами, PowerShell для Office 365 позволит быстро выполнять проверку и управлять доступом пользователей к общим дискам;
  • Через командную строку вы можете легко выполнять массовые операции;
  • В PowerShell для Office 365 вы можете использовать командлеты для фильтрации данных, полученных из вашей системы Office 365. Таким образом вы получите быстрый доступ к информации о пользователях и системах;
  • Его также можно использовать для автоматизации процесса сбора данных из Office 365 и их выгрузки в CSV-файл;
  • Благодаря возможности быстро проверять информацию о пользователях PowerShell является мощным инструментом для мониторинга и повышения кибербезопасности.

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

PowerShell помогает расширить возможности по управлению Office 365

, а не заменяет центр администрирования Microsoft 365. Выполнение некоторых задач будет более эффективным с помощью центра администрирования, и наоборот, некоторые процедуры настройки можно выполнить только с помощью команд PowerShell.

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

Наконец, попробуйте интегрированную среду разработки сценариев PowerShell (ISE) для всех ваших потребностей, связанных с PowerShell. Эта среда не только упрощает создание сценариев PowerShell, но и улучшает взаимодействие с интерфейсом командной строки.

Команды PowerShell для автоматизации Office 365


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

Наиболее полезные команды PowerShell для автоматизации Office 365:

1. Подключение к приложению Office 365 с помощью PowerShell

Прежде чем начать использовать PowerShell для Office 365, необходимо скачать и установить модуль Office 365 для

Windows PowerShell

и подключить его к своему инстансу Office 365.

Вот как это сделать:

  • Cкачайте и установите Помощник по входу в Microsoft Online Services для ИТ-специалистов, RTW.
  • Импортируйте модуль PowerShell Online Services для Microsoft Azure Active Directory и Office 365, используя следующие команды в PowerShell:
    1.	Install-Module -Name AzureAD
    2.	
    3.	Install-Module -Name MSOnline
    

  • Введите свои учетные данные администратора Office 365:
    $Cred = Get-Credential

    Теперь вам нужно создать сеанс PowerShell от имени удаленного пользователя. Это можно сделать с помощью следующей команды:
     $O365 = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $Cred -Authentication Basic -AllowRedirection

  • Теперь импортируйте команды сеанса в локальный сеанс Windows PowerShell:
    Import-PSSession $O365

  • Наконец, подключите сеанс ко всем своим службам Office 365 с помощью этой команды:
    Connect-MsolService –Credential $O365

    Это подключит PowerShell для Office 365 к вашему инстансу Office 365 и позволит управлять им.

2. Подключение к Exchange Online и SharePoint Online с помощью PowerShell

Вы можете подключиться к Microsoft Exchange Online и Microsoft SharePoint Online, чтобы управлять этими службами с помощью PowerShell.

  • Подключение к Exchange Online, по сути, происходит так же, как и подключение к Office 365. Вот соответствующие команды:
    1.	$Cred = Get-Credential
    2.	
    3.	$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $Cred -Authentication Basic –AllowRedirection
    

  • Подключение к SharePoint Online немного сложнее, и вам потребуется установить дополнительное программное обеспечение.

    Сначала установите компонент командной консоли SharePoint Online.

    Затем запустите из PowerShell следующую команду:

    1.	$admin="[email protected]"
    2.	
    3.	$orgname="enterprise"
    4. 	
    5.	$userCred = Get-Credential -UserName $admin -Message "Укажите пароль."
    6.	
    7.	Connect-SPOService -Url https://$orgname-admin.sharepoint.com -Credential $userCred
    


3. Cписок доступных командлетов PowerShell для Office 365

Командлеты — это основной тип команд PowerShell для Office 365, и вы будете использовать их чаще всего. PowerShell для Office 365, как и большинство интерфейсов командной строки, позволяет просмотреть список всех доступных командлетов для вашей системы.


4. Cписок всех пользователей Office 365

Одно из наиболее распространенных применений PowerShell — получение списка всех пользователей Office 365. В PowerShell это можно сделать с помощью всего одного командлета:

Get-msoluser

.

Этот командлет покажет вам всех пользователей Office 365 с действующей лицензией и автоматически получит некоторую базовую информацию о каждом из них: параметры DisplayName, City, Department и ObjectID.

  • Для этого выполните команду:
    1. 	Get-MsolUser | Select DisplayName, City, Department, ObjectID 
  • Затем вы можете увидеть количество учетных записей, выполнив аналогичную команду:
    1.	Get-MsolAccountSku
  • А для получения списка доступных вам служб выполните эту команду:
    1.	Get-MsolAccountSku | select -ExpandProperty ServiceStatus
  • С помощью стандартной логики командной строки эти команды можно расширить для фильтрации получаемых результатов. Например, вы можете сгруппировать всех пользователей в зависимости от места, запустив:
    1.	Get-MsolUser | Select DisplayName, UsageLocation | Sort UsageLocation, DisplayName

5. Создание нового пользователя в Office 365 с помощью PowerShell

PowerShell можно использовать для автоматизации процесса создания новых пользователей вашей системы. Для этого воспользуйтесь командлетом

New-MsolUser

:

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

1. 	New-MsolUser -UserPrincipalName [email protected] -DisplayName "John Smith" -FirstName “John” -LastName “Smith”

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

6. Изменение пароля в Office 365 с помощью PowerShell

Одна из самых распространенных и наиболее раздражающих задач системных администраторов — смена пароля пользователя. В идеале для этого

использовать менеджер паролей

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

Для этого выполните команду:

1.	Set-MsolUserPassword -UserPrincipalName [email protected] -NewPassword [email protected]!

Вы также можете не использовать параметр

-NewPassword

, и в этом случае система автоматически сгенерирует случайный пароль:

1.	Set-MsolUserPassword -UserPrincipalName [email protected] onmicrosoft.com

Команды Windows PowerShell для отчетности


PowerShell для Office 365 — это отличный инструмент для создания отчетов. Использование командлетов PowerShell позволяет быстро и легко получать доступ, сортировать и сопоставлять информацию о пользователях Office 365, а также информацию о том, как они используют систему.

Следует отметить, что большинство командлетов для создания отчетов устарело в январе 2018 года. Корпорация Microsoft заменила эти командлеты новым API отчетов Microsoft Graph. Это сократило возможности PowerShell по созданию отчетов в Office 365, но все старые функции по-прежнему доступны через центр безопасности и соответствия требованиям Office 365.

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

1. Планы лицензирования

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

Для этого выполните команду:

1.	Get-MsolAccountSku

В результате вы получите отчет, содержащий несколько ключевых элементов информации:

  • AccountSkuld — показывает доступные планы лицензирования для вашей организации;
  • ActiveUnits — количество лицензий, приобретенных вами для определенного плана лицензирования;
  • WarningUnits — количество непродленных лицензий в плане лицензирования, которые истекают по окончании 30-дневного льготного периода;
  • ConsumedUnits — количество лицензий, которые вы назначили пользователям из определенного плана лицензирования.

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

документации Microsoft по использованию PowerShell для создания отчетов

.

2. Учетные записи пользователей

Еще один полезный командлет для создания отчетов —

Get-MsolUser

, который возвращает список всех учетных записей пользователей Office 365. Вот как вы можете использовать эту команду.

Выполните команду:


1.	Get-MsolUser

Вы увидите полный список учетных записей пользователей с соответствующими именами. Вы также можете добавить ряд параметров для фильтрации отображаемых учетных записей. Например, чтобы получить список нелицензированных пользователей (пользователей, которые были добавлены в Office 365, но еще не получили лицензии на использование какой-либо из служб), выполните следующую команду:

1.	Get-MsolUser -UnlicensedUsersOnly

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

where

.

Чтобы скомбинировать два командлета, воспользуйтесь вертикальной чертой «|»: Это означает, что PowerShell для Office 365 возьмет результаты первой команды и отправит их следующей команде. Например, если вы хотите отображать только те учетные записи пользователей, у которых не указано место использования, вы можете использовать такую команду:

1.	Get-MsolUser | Where {{$_.UsageLocation -eq $Null}}

Добавив дополнительный синтаксис после символа вертикальной черты «|», вы сможете конкретизировать отчеты и получать списки пользователей с любой комбинацией атрибутов.

3. Отчеты электронной почты

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

  • Вы можете использовать PowerShell для получения информации о каждом почтовом ящике в вашей системе, используя следующую команду:
    1.	Get-mailbox | get-MailboxStatistics
    

  • Вы также можете получить список всех почтовых ящиков, в которые не выполнялся вход в течение 30 дней (или любого другого нужного вам периода, означающего, что вам необходимо закрыть эти ящики). Для этого выполните команду:
    1.	Get-Mailbox –RecipientType 'UserMailbox' | Get-MailboxStatistics | Sort-Object LastLogonTime | Where {{$_.LastLogonTime –lt ([DateTime]::Now).AddDays(-30) }} | Format-Table DisplayName, LastLogonTime
    

  • Еще один полезный инструмент для обеспечения кибербезопасности — проверка активности ваших почтовых ящиков, чтобы отметить те из них, которые отправляют и получают больше всего почты. Для этой задачи есть специальный командлет. Выполните команду:
    1.	Get-MailTrafficTopReport
    


Командлеты PowerShell для настройки Office 365


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

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

1. Настройте «скрытые» параметры с помощью PowerShell для Office 365

Как мы упоминали ранее, к некоторым параметрам конфигурации Office 365 можно получить доступ только с помощью PowerShell.

Наиболее ярким примером являются параметры конфигурации «Skype для бизнеса». Онлайн-центр администрирования этой службы содержит несколько параметров, позволяющих настроить способ ее работы для вашей организации. Однако с помощью PowerShell вы получите доступ к большему количеству параметров настройки. Например, стандартные конференции в Skype настроены так, что:

  • анонимные пользователи могут автоматически войти в каждую конференцию;
  • участники могут вести запись конференции;
  • все пользователи вашей организации могут быть назначены докладчиками.

Чтобы изменить эти стандартные настройки, вы можете использовать Powershell. Вот команда для отключения всех трех вышеперечисленных параметров:

1.	Set-CsMeetingConfiguration -AdmitAnonymousUsersByDefault $False -AllowConferenceRecording $False -DesignateAsPresenter "None"

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

1.	Set-CsMeetingConfiguration -AdmitAnonymousUsersByDefault $True -AllowConferenceRecording $True -DesignateAsPresenter "Company"

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

наш бесплатный онлайн-курс

.

2. Управление членством в группах Office 365 с помощью PowerShell

PowerShell имеет несколько командлетов, специально предназначенными для работы с группами Office 365. Например…

Выполните команду, чтобы просмотреть список всех активных групп в Office 365.

1.	Get-MsolGroup

Эта команда также предоставит вам шестнадцатеричный идентификатор для каждой группы, который вам понадобится для управления членством.

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

1.	Get-MsolUser | Select ObjectID.

Затем вы можете запустить соответствующий командлет для добавления или удаления пользователей из

определенных групп

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

1.	Add-MsolGroupMember -GroupObjectId 5b61d9e1-a13f-4a2d-b5ba-773cebc08eec -GroupMemberObjectId a56cae92-a8b9-

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

1.	Remove-MsolGroupMember

Как Varonis взаимодействует с PowerShell

Varonis дополняет использование PowerShell несколькими способами.

Мониторинг

Varonis отслеживает и проверяет активность в Office 365 (включая изменения конфигурации) и команды PowerShell. Это позволяет вам отслеживать любые изменения, которые администраторы или злоумышленники вносят с помощью PowerShell.

Администраторы должны вносить изменения в конфигурации или разрешения Office 365, имея действующий запрос на изменение. Этот дополнительный уровень проверки обеспечивает бесперебойную работу процессов и процедур.

Злоумышленники пытаются использовать PowerShell для отключения мер безопасности или повышения прав учетной записи. Varonis улавливает эти изменения и отслеживает любые другие действия, которые злоумышленники совершают в Office 365.

Получайте оповещения и принимайте меры

Varonis позволяет пользователям запускать сценарии PowerShell при получении оповещений.

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

Заключение

PowerShell является эффективным инструментом для работы с Office 365. Он позволяет быстро получать доступ к информации из системы, составлять подробные отчеты и выполнять массовые действия. Кроме того, с его помощью можно получить доступ к определенным функциям Office 365, которые недоступны другим способом.

Подключить Powershell к Office 365 относительно просто, и в результате вы получите доступ ко всем перечисленным выше расширенным функциям. Это также позволит вам более легко интегрировать вашу среду Office 365 с платформой кибербезопасности Varonis и обеспечить безопасность конфиденциальных данных.

Установка сертификата: Exchange 2010 (PowerShell)

После того, как Вы получите ваш Zip-файл с выпущенным сертификатом, извлеките файл(ы), содержащийся(щиеся) в Zip-файле на сервер. Мы рекомендуем их извлечение на рабочий стол или все вместе в новую папку.

Вариант 1

Из командной консоли Exchange Management Shell, выполните следующую команду для установки server (серверного), root (корневого) и intermediate (промежуточного) сертификатов в соответствующее хранилище сертификатов:

Import-ExchangeCertificate -FileData ([Byte[]]$(Get-Content -Path c:\certificates\YOUR_CERTIFICATE. cer -Encoding byte -ReadCount 0))

Примечание:

Если Вы получили .crt(s) вместо одного .cer file, то Вам необходимо будет убедиться, что YOUR_CERTIFICATE.cer это YOUR_ORDER_NUMBER.crt или YOUR_FQDN.crt. В результате Вам может потребоваться установить вручную root (корневой) и intermediate (промежуточный) сертификаты на Вашем сервере. Смотрите раздел статей данного документа для более подробной информации о том, как это сделать.

Убедитесь, что в Вашем «пути» нет пробелов. В результате выполнения этой команды, будет выведен отпечаток. (В случае если Вы потеряли Ваш отпечаток, Вы можете скопировать его из ММС сертификаты Snap-in (оснастки) консоли).

Затем, чтобы включить службы, выполните следующую команду:

Enable-ExchangeCertificate -Thumbprint $your_thumbprint -Services «POP,IMAP,SMTP,IIS»

(Это предполагает, что Вы будете выполнять вышеперечисленные службы)

Вариант 2

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

Import-ExchangeCertificate -FileData ([Byte[]]$(Get-Content -Path c:\certificates\YOUR_CERTIFICATE.cer -Encoding byte -ReadCount 0)) | Enable-ExchangeCertificate-Services»IIS,POP,IMAP,SMTP»


Удаленное управление Exchange — Get-PowerShell

Для настройки Exchange 2013 в основном используется два инструмента это Exchange Admin Center и Exchange Managment Shell. Использование Admin Center удаленно — не проблема. Это веб сайт, который можно открыть на любом компьютере. Удаленное управление Exchange с использованием Managment Shell, требует установки этого Managment Shell. Однако большинство задач можно выполнить просто удаленно подключившись к Exchange 2013.

Для выполнения команд Exchnage удаленно необходимо в общем-то создать сессию и импортировать командлеты из этой сессии в текущий сеанс PowerShell

Запуск команд удаленно

Данный подход позволяет запустить команды Exchange с компьютера, на котором не установлен Exchange удаленно.

Во-первых, запускаем обычный повершел (конечно не ниже третьей версии).

Во-вторых, запускаем следующий командлет, он создаст подключение (сессию), которое мы в дальнейшем будем использовать для удаленного управления Exchnage.

PS D:\> $session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri http://lon-cas1.adatum.com/powersh ell/ -Authentication Kerberos

PS D:\> $session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri http://lon-cas1.adatum.com/powersh

ell/ -Authentication Kerberos

Где вместо lon-cas1.adatum.com вы указываете свой сервер клиентского доступа, конкретный URI можно посмотреть в том же Exchange Admin Center в разделе серверы -> виртуальные директории (servers -> virtual directories).

Данная сессия будет создана с разрешениями текущего пользователя, если желаете запустить с разрешениями другого пользователя выполните командлет с параметром -credential

PS D:\> $session = New-PSSession -ConfigurationName Microsoft. Exchange -ConnectionUri http://lon-cas1.adatum.com/powersh ell/ -Authentication Kerberos -Credential (Get-Credential)

PS D:\> $session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri http://lon-cas1.adatum.com/powersh

ell/ -Authentication Kerberos -Credential (Get-Credential)

Вариант выше создаст сессию, спросив предварительно в отдельном окне логин и пароль.

В-третьих, начните использовать сессию.

PS D:\> Import-PSSession $session -DisableNameChecking ModuleType Name ExportedCommands ———- —- —————- Script tmp_wfdf152x.m3e {Add-ADPermission, Add-AvailabilityAddressSpace, Add-ContentFilterPhr…

PS D:\> Import-PSSession $session -DisableNameChecking

 

ModuleType Name                                ExportedCommands

———- —-                                —————-

Script     tmp_wfdf152x. m3e                    {Add-ADPermission, Add-AvailabilityAddressSpace, Add-ContentFilterPhr…

После чего можно вводить команды Exchange Managment Shell.

PS D:\> Get-ExchangeServer Name Site ServerRole Edition AdminDisplayVersion —- —- ———- ——- ——————- LON-MBX1 Adatum.com/Config… Mailbox Enterprise Version 15.0 (Bu… LON-MBX2 Adatum.com/Config… Mailbox Enterprise Version 15.0 (Bu… LON-CAS1 Adatum.com/Config… ClientAc… Enterprise Version 15.0 (Bu… LON-CAS2 Adatum.com/Config… ClientAc… Enterprise Version 15.0 (Bu…

PS D:\> Get-ExchangeServer

 

Name                Site                 ServerRole  Edition     AdminDisplayVersion

—-                —-                 ———-  ——-     ——————-

LON-MBX1            Adatum. com/Config… Mailbox     Enterprise  Version 15.0 (Bu…

LON-MBX2            Adatum.com/Config… Mailbox     Enterprise  Version 15.0 (Bu…

LON-CAS1            Adatum.com/Config… ClientAc… Enterprise  Version 15.0 (Bu…

LON-CAS2            Adatum.com/Config… ClientAc… Enterprise  Version 15.0 (Bu…

Вообще удаленное управление Exchange все же отличается от использование Exchange Managment Shell. Поэтому если вы планируете постоянное управление с данного компьютера — рекомендуется поставить Management Tools для Exchnage.

В-четвертых, после использования всех необходимых команд. Разорвите сессию.

PS D:\> Remove-PSSession $session

PS D:\> Remove-PSSession $session

Полезные ссылки

Подключение к удаленному серверу статья на technet

Справка по использованию Import-PSSession

Подключиться к Exchange Online PowerShell

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *