Поиск по сайту

telegram

Интересуешься IT и системным администрированием? Подпишись на наш канал, где мы делимся инсайдами, новостями и практическими советами! Прокачай свои навыки вместе с нами!

Как проверить работоспособности Active Directory с помощью скрипта PowerShell

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

Онлайн-курс: Планирование и установка Exchange Server 2016 с нуля до запуска в Production.

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

Зачем нужно проверять работоспособность Active Directory?

Проверка работоспособности контроллеров домена — это важный шаг при возникновении инцидентов, проблем или при внедрении изменений в инфраструктуру Active Directory. Вот основные случаи, когда это особенно актуально:

  • Проблемы с Active Directory: Если службы работают некорректно, пользователи жалуются на доступ к ресурсам, или возникают ошибки синхронизации.
  • Сбои в работе контроллеров домена: Например, проблемы репликации между серверами, которые могут привести к рассинхронизации данных.
  • Перед и после обновления Windows: Проверка помогает убедиться, что обновления на контроллере домена прошли успешно и не вызвали сбоев.
  • Добавление нового контроллера: После ввода нового сервера в домен важно убедиться, что он правильно интегрировался в существующую структуру.
  • Снижение роли контроллера: Перед выводом сервера из работы нужно проверить, что все роли и данные успешно переданы другим контроллерам.

Сценарий PowerShell для проверки работоспособности Active Directory

Сценарий PowerShell Get-ADHealth.ps1 — это мощный инструмент для проверки состояния вашей среды Active Directory. Он выполняет комплексную диагностику и предоставляет структурированный отчет с ключевой информацией о каждом контроллере домена.

Что анализирует сценарий:

  1. Основная информация о контроллере домена:
    • Имя DC.
    • Имя сайта AD.
    • Версия операционной системы.
    • Роли DC (например, FSMO).
    • DNS-имя.
    • Доступность хоста.
    • Время работы (Uptime) в часах.
    • Свободное место на диске с базой данных AD.
    • Свободное место на системном диске.
  2. Состояние служб:
    • DNS.
    • NTDS.
    • NetLogon.
  3. Тесты и проверки:
    • Advertising: Проверяет роли и сервисы, опубликованные на DC.
    • Replications: Диагностика репликации между контроллерами домена и поиск ошибок.
    • FSMO KnowsOfRoleHolders: Убедиться, что контроллеры с ролями FSMO доступны.
    • FSMO Check: Проверка подключения DC к KDC, PDC и глобальному каталогу.
    • Services: Проверяет, запущены ли на DC все необходимые службы.
  4. Общее время выполнения скрипта — позволяет оценить его производительность

Get-ADHealth.ps1 — незаменимый инструмент для предотвращения проблем в Active Directory, дающий системному администратору полный контроль над состоянием инфраструктуры.

Скачайте скрипт PowerShell для проверки работоспособности Active Directory

Скачайте скрипт PowerShell Get-ADHealth.ps1 и сохраните его на контроллере домена в папке C:\scripts. Если указанной папки не существует, создайте её вручную.

Чтобы избежать ошибок при запуске, убедитесь, что файл Get-ADHealth.ps1 разблокирован. Если при запуске появляется ошибка, связанная с отсутствием цифровой подписи, обратитесь к статье о способах её устранения: Как исправить ошибку отсутствия цифровой подписи при запуске скрипта PowerShell.

Создание задачи в планировщике задач

Если вы хотите, чтобы сценарий Get-ADHealth.ps1 запускался автоматически и создавал отчет о состоянии Active Directory, настройте его выполнение с помощью запланированной задачи. Для этого ознакомьтесь с инструкцией в статье Как создать запланированную задачу с помощью PowerShell. Настройка позволит автоматизировать проверку состояния AD и получать регулярные отчеты без необходимости ручного запуска.

Настройка ретрансляции SMTP

Если вы хотите, чтобы скрипт Get-ADHealth.ps1 отправлял отчет о состоянии Active Directory по электронной почте, сначала настройте параметры SMTP в строках 67–73 скрипта. Укажите адрес SMTP-сервера, порт, отправителя, получателя и другие необходимые данные. Без этой настройки отправка писем будет недоступна.

Для отправки отчета выполните скрипт с параметром –SendEmail. Это обеспечит автоматическую генерацию и отправку отчета по указанным почтовым параметрам.

Создание отчета о состоянии Active Directory

Для создания отчета о состоянии Active Directory выполните следующие шаги:

  1. Войдите в систему на контроллере домена, используя учетную запись с правами администратора.
  2. Запустите PowerShell с повышенными привилегиями (от имени администратора).
  3. Выполните команду .\Get-ADHealth.ps1 -ReportFile. Это запустит скрипт и создаст отчет с результатами проверки. Убедитесь, что путь к скрипту указан корректно, если он находится не в текущей директории.

PS C:\> cd C:\scripts
PS C:\scripts> .\Get-ADHealth.ps1 -ReportFile

Вот как это выглядит в моём примере.

Скрипт Get-ADHealth.ps1 генерирует отчет в формате HTML, который сохраняется в том же каталоге, где расположен сам скрипт.

В моем примере отчет сохраняется в папке C:\scripts.

Откройте отчет о состоянии.

Как видно из отчета, оба контроллера домена — DC01-2019 и DC02-2019 — находятся в доступном состоянии, а все тесты выполнены успешно.

Теперь давайте отключим контроллер домена DC02-2019, снова запустим скрипт и посмотрим, как изменится состояние в отчете.

В отчете о состоянии Active Directory будут отражены сбои в большинстве тестов, что вполне ожидаемо при отключении контроллера домена.

Вот и все!

Заключение

Теперь вы знаете, как проверять состояние Active Directory с помощью сценария PowerShell. Скрипт Active Directory Health Check проведет диагностику контроллеров домена и создаст отчет, который станет отличным инструментом для мониторинга и анализа состояния вашей инфраструктуры.

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

Интересуешься IT и системным администрированием? Подпишись на SysAdminHub в Телеграмм или Макс, чтобы узнавать обо всем первым!

Комментарии (0)

Здесь не опубликовано еще ни одного комментария

Оставьте свой комментарий

0 Значки
Вложения (0 / 5)
Поделитесь своим местоположением