Использование PowerShell для администрирования и автоматизации задач


PowerShell – это командная оболочка и полноценный объектно-ориентированный язык сценариев основанный на .NET, который можно использовать для управления компьютерами и созданий скриптов автоматизации различных задач администрирования. Среда PowerShell предустановлена в Windows.

Команды PowerShell (называются командлеты) можно запускать в командной строке powershell.exe ( pwsh.exe для PowerShell Core 6.7, 7.x), или можно использовать встроенный в Windows редактор сценариев PowerShell ISE (с подсветкой кода, справочником команд, средствами отладки). Еще больше возможностей для работы с кодом PoweShell дает бесплатный редактор Visual Studio Code (VSCode). В консоли PowerShell доступна история выполненных ранее команд.

На данный момент есть две ветки PowerShell:

  • Windows PowerShell до версии 1 — встроенная в Windows классическая версия PowerShell, основанная на .NET Framework. На данный момент PowerShell 5.1 не развивается Microsoft.
  • PowerShell Core x, 7.x — актуальная кроссплатформенная версия PowerShell, основанная на .NET Core. Активно развивается. Эту версию PowerShell нужно устанавливать и обновлять отдельно. Возможна установка на PowerShell Core на Linux.

PowerShell позволяет системным администраторам автоматизировать и управлять различными компонентам дестопных версий Windows, ролями Windows Server, и другими компонентами инфраструктуры Microsoft и сторонними продуктами.

Команды и скрипты PowerShell для системного администратора

PowerShell в администрировании ролей Windows Server

PowerShell – это отличное средство автоматизации настройки и управления платформой Windows Server. Практически все действия, которые вы выполняете с помощью графических оснасток можно сделать с помощью PowerShell. PowerShell значительно упрощает одновременное администрирование десятков и сотен серверов с Windows Server 2022/2019/2016/2012R2.

Администрирование компьютеров Windows 10 и 11 с помощью PowerShell

С помощью PowerShell вы можете конфигурировать различные параметрами в пользовательских операционных системах (Windows 10 и 11):

Использование PowerShell для администрирования Active Directory

Для администрирования леса/домена Active Directory используется модуль RSAT-AD-PowerShell:

Работа с файлами в PowerShell

Управление Exchange с помощью PowerShell

Командлеты PowerShell это важный инструмент администрирования и автоматизации on-premises Exchange Server и Exchange Online (Microsoft 365). Для подключения к Exchange Online нужно установить модуль EXO. К Exchange Server можно подключиться удаленно с любого компьютера и импортировать командлеты PowerShell для Exchange в свою сессию.

Администрирование Teams из PowerShell

Управление Microsoft 365 с помощью PowerShell

Удаленное подключение, получение данных с помощью PowerShell:

Администрирование продуктов VMware из PowerShell

Автоматизация PowerShell в сторонних продуктах

Включаем аудит доступа к папкам и файлам в Windows

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

Добавление хоста ESXi в VMware vCenter


Копирование (синхронизация) файлов из SharePoint в локальную папку


Создание, удаление, управление точками восстановления в Windows 10 и 11

Точки восстановления (restore points) — это достаточно простое средства для восстановления работоспособность операционной системы Windows в случае непредвиденных ошибок с системными файлами и реестром после установки некорректных драйверов, обновлений или программ. С помощью точки восстановления вы можете восстановить состояние реестра, системных...

Управление языковыми пакетами и предпочтительным языком Microsoft Office


Не удалось загрузить PowerShell модуль


Как включить и настроить Wake-on-LAN (WoL) в Windows?

Технология Wake on LAN (WoL) используется для удалённого пробуждения (включения) компьютера, который находится в спящем режиме (режиме пониженного энергопотребления). Сетевая карта компьютера инициирует процесс пробуждения компьютера после получение специального широковещательного пакета (magic packet) со своим MAC адресом. В этой статье мы...

Как прочитать или изменить JSON файл с помощью PowerShell?

JSON это популярный текстовый формат представления и передачи данных. В PowerShell есть два командлета для работы с форматом данных JSON: ConvertFrom-Json и ConvertTo-Json. В этой статье мы покажем, как создать, прочитать, или изменить JSON объекты и сохранить их в файлы с...

Отключить сохранение паролей в браузерах (Chrome, Edge, Firefox) с помощью GPO

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

Как включить или отключить брандмауэр (файервол) в Windows?

Во все современные версии Windows встроен брандмауэр Windows Defender Firewall. Это встроенный программный межсетевой экран, который защищает Windows от несанкционированного внешнего доступа к компьютеру и запущенным на нем службам. По умолчанию брандмауэр Windows включен и защищает все сетевые интерфейсы компьютера. Брандмауэр...

Читаем письма из ящика Outlook с помощью PowerShell

В некоторых сценариях вам нужно погромно анализировать входящие письма в почтовом ящике и извлекать из них различную информацию (отправитель, тема, тело письма). API Outlook позволяет получить прямой доступ к содержимому почтового ящика, отрыть список писем в ящике и прочитать их содержимое....

Ошибка синхронизации Azure AD Connect: Stopped Deletion Threshold Exceeded

Если вы удалили большое количество объектов в Active Directory DS, то при следующей синхронизации с Azure AD Connect (Entra Cloud Sync) покажет ошибку stopped-deletion-threshold-exceeded. По умолчанию AD Connect останавливает синхронизацию с облаком, если вы удалили более 500 объектов в течении 30...