Использование облачных сервисов имеет большие преимущества. Однако существуют реальные угрозы. Вот пример использования PowerShell для экспорта почтовых ящиков Exchange Online в файлы pst.
Экспорт почтовых ящиков из Office 365 в локальное хранилище может быть полезен для резервного копирования, архивации или миграции данных.
В этой статье мы рассмотрим, как использовать PowerShell для экспорта почтовых ящиков Office 365 в PST-файлы и сохранения их в локальном хранилище.
Требования к экспорту почтовых ящиков Exchange Online
- Учетная запись администратора Office 365 с правами доступа к Exchange Online.
- PowerShell установленный на вашем компьютере.
- Роли и разрешения: Учетная запись администратора должна иметь роль
Mailbox Import Export
для выполнения операций экспорта.
Шаг 1: Установка и настройка PowerShell
Установка модуля Exchange Online PowerShell V2
Если у вас еще не установлен модуль Exchange Online PowerShell V2, выполните следующую команду:
Install-Module -Name ExchangeOnlineManagement -RequiredVersion 2.0.5
Подключение к Exchange Online
- Откройте PowerShell от имени администратора.
- Подключитесь к Exchange Online с помощью команд:
$UserCredential = Get-Credential
Connect-ExchangeOnline -UserPrincipalName $UserCredential.UserName -ShowProgress $true
В появившемся окне введите учетные данные администратора Office 365.
Шаг 2: Назначение ролей и разрешений
Для выполнения экспорта учетная запись должна иметь роль Mailbox Import Export
. Назначьте эту роль, если она еще не назначена:
New-ManagementRoleAssignment -Role "Mailbox Import Export" -User Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript.
Замените
на учетную запись администратора.
Шаг 3: Создание запроса на экспорт почтового ящика
Создайте запрос на экспорт почтового ящика в PST-файл и укажите путь для сохранения файла. Убедитесь, что указанный путь является доступным для записи и общим сетевым ресурсом.
New-MailboxExportRequest -Mailbox Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript. -FilePath "\\networkpath\exported_mailbox.pst"
Замените:
на адрес почтового ящика, который вы хотите экспортировать.Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript. \\networkpath\exported_mailbox.pst
на путь к общему сетевому ресурсу, где будет сохранен PST-файл.
Шаг 4: Мониторинг и управление запросами экспорта
Проверка состояния запроса
Чтобы проверить состояние запросов на экспорт, используйте следующую команду:
Get-MailboxExportRequest
Просмотр детальной информации о запросе
Для получения детальной информации о конкретном запросе выполните:
Get-MailboxExportRequest -Mailbox Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript. | Get-MailboxExportRequestStatistics
Отмена запроса на экспорт
Если необходимо отменить запрос на экспорт, выполните следующую команду:
Remove-MailboxExportRequest -Identity "Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript. \MailboxExport"
Шаг 5: Завершение и отключение от Exchange Online
После завершения всех операций отключитесь от Exchange Online с помощью следующей команды:
Disconnect-ExchangeOnline -Confirm:$false
Пример PowerShell скрипта для массового экспорта почтовых ящиков
-
Создание списка почтовых ящиков: Создайте текстовый файл
mailboxes.txt
, в который добавьте адреса электронной почты всех почтовых ящиков, которые нужно экспортировать. Каждый адрес на новой строке. -
PowerShell скрипт: Создайте и запустите следующий скрипт PowerShell:
# Установка и подключение к Exchange Online
Import-Module ExchangeOnlineManagement
$UserCredential = Get-Credential
Connect-ExchangeOnline -UserPrincipalName $UserCredential.UserName -ShowProgress $true
# Чтение списка почтовых ящиков из файла
$mailboxes = Get-Content -Path "C:\path\to\mailboxes.txt"
# Папка для сохранения PST-файлов
$destinationPath = "\\networkpath\backup"
# Назначение роли Mailbox Import Export, если не назначена
foreach ($mailbox in $mailboxes) {
New-ManagementRoleAssignment -Role "Mailbox Import Export" -User $UserCredential.UserName
}
# Создание запросов на экспорт
foreach ($mailbox in $mailboxes) {
$exportFilePath = Join-Path -Path $destinationPath -ChildPath ($mailbox.Split('@')[0] + ".pst")
New-MailboxExportRequest -Mailbox $mailbox -FilePath $exportFilePath
}
# Проверка состояния запросов на экспорт
Get-MailboxExportRequest | Get-MailboxExportRequestStatistics
# Отключение от Exchange Online
Disconnect-ExchangeOnline -Confirm:$false
Пояснения к скрипту:
-
Установка и подключение к Exchange Online:
- Импортируется модуль ExchangeOnlineManagement.
- Запрашиваются учетные данные администратора Office 365.
- Подключение к Exchange Online с использованием учетных данных администратора.
-
Чтение списка почтовых ящиков:
- Список почтовых ящиков читается из текстового файла
mailboxes.txt
.
- Список почтовых ящиков читается из текстового файла
-
Определение пути для сохранения PST-файлов:
- Указывается путь к сетевому ресурсу, где будут сохраняться PST-файлы.
-
Назначение роли Mailbox Import Export:
- Назначение роли
Mailbox Import Export
учетной записи администратора, если она еще не назначена.
- Назначение роли
-
Создание запросов на экспорт:
- Для каждого почтового ящика создается запрос на экспорт в PST-файл. Имя файла формируется на основе адреса электронной почты.
-
Проверка состояния запросов на экспорт:
- Отображается состояние всех запросов на экспорт.
-
Отключение от Exchange Online:
- Отключение от Exchange Online после завершения всех операций.
Запуск скрипта экспорта почтовых ящиков Exchange Online
- Сохраните скрипт в файл, например
Export-Mailboxes.ps1
. - Откройте PowerShell от имени администратора.
- Выполните скрипт:
.\Export-Mailboxes.ps1
Важно:
- Убедитесь, что путь для сохранения PST-файлов (
$destinationPath
) доступен для записи. - В зависимости от количества почтовых ящиков и объема данных экспорт может занять значительное время.
- Убедитесь, что у вас есть достаточно места на целевом диске для всех PST-файлов.
Этот скрипт автоматизирует процесс массового экспорта почтовых ящиков из Office 365 в локальное хранилище в виде PST-файлов, что значительно упрощает задачу резервного копирования и архивации данных.
Подведем итоги экспорта почтовых ящиков Exchange Online в файлы pst
Использование PowerShell для экспорта почтовых ящиков из Office 365 в локальное хранилище компании предоставляет мощные возможности для автоматизации и управления процессом резервного копирования и миграции данных.
Следуя приведенным инструкциям, вы сможете легко настроить и выполнить экспорт почтовых ящиков, обеспечивая надежное хранение и доступ к важным данным вашей организации.
Реклама Google |
|
Внимание! Данная статья не является официальной документацией.Использование информации необходимо выполнять с осторожностью, используя для этого тестовую среду.
Если у вас есть вопросы о построении современных систем резервного копирования, репликации, синхронизации данных и защиты от программ вымогателей обратитесь в нашу компанию для получения консультации о современных технологиях резервного копирования и восстановления данных. Наша компания имеет более чем 20-летний опыт в этой области. |
Десять лучших практик резервного копирования в Казахстане
- Защита гипервизора oVirt — глубокое погружение
- Перенос виртуальной машины из oVirt в Proxmox
- Как перенести виртуальную машину из Proxmox в oVirt
- Защита контейнеров Kubernetes — глубокое погружение
- Как защитить гипервизор Proxmox от взлома - Глубокое погружение
- Использование Fail2Ban для защиты oVirt - Глубокое погружение
- Организация резервного копирования гипервизора oVirt — Глубокое погружение
- Перенос виртуальной машины между гипервизорами Proxmox
- Конфигурация гипервизора Proxmox для оптимальной работы виртуальных машин
- Защита root после взлома SSH на Proxmox - глубокое погружение