Тема: Как удалить Java средствами PowerShell Появилась задача удалить на RDS ферме из 50 хостов компоненты Java. Одним из удобных вариантов, это использование кода PowerShell, который сходит на каждый хост, запросит есть там установленная Java, если да, то получит ее версии и затем произведет тихую деинсталляцию. По ссылке ниже представлены рабочие скрипты, как это осуществить. Методы удаления Java с помощью PowerShell
PowerShell Азбука - Иван Сёмин
Огромное количество примеров скриптов и команд PowerShell, для упрощения повседневной жизни - еще больше материала на http://pyatilistnik.org/ Для связи - microsoftexam@yandex.ru
Графики
📊 Средний охват постов
📉 ERR % по дням
📋 Публикации по дням
📎 Типы контента
Лучшие публикации
20 из 20Тема: Скрипт по массовой чистке Kerberos тикета и обновлению групповой политики Если у вас есть домен на базе Active Directory, то вы сто процентов часто делаете групповые политики, нацеленные на пользователей и объекты компьютеров. Для некоторых ситуаций в GPO используется фильтрация по группам безопасности, чтобы нацеливать ее исключительно на определенные списки. Когда вы добавляете объект компьютера в группу безопасности, это меняет его тикет Kerberos, выдаваемый контроллером домена на 8 час...
Тема: Получить в Active Directory все объекты компьютера у которых операционная система Windows Server 2019 и исключить виртуальные компьютеры, а так же произвести сортировку по имени, с указанием количества. Это наверное самое часто выполняемое системным администратором действие. Get-ADComputer -Filter {OperatingSystem -like "2019" -and Enabled -eq $true} -Property | Where-Object { $_.Description -notlike "Failover cluster virtual network name account" } | Select-Object Name, Operatin...
Задача: Взять список серверов и удаленно на каждом из них проверить установлено определенное обновление или нет. Для таких вещей отлично подходит PowerShell # 1. Взять список серверов из файла и положить в переменную $servers = Get-Content -Path "C:\Temp\RDS\dc-servers.txt" # 2. На каждом сервере удаленно проверяем наличие обновлений и версию ОС $results = foreach ($server in $servers) { # Получаем информацию о версии ОС $osInfo = Get-WmiObject -Class Win3...
Тема: Обновление curl.exe в Windows средствами PowerShell Не так давно появилась уязвимость в curl.exe CVE-2025-5399. Microsoft не особо спешит с ее устранением, а вся суть просто перейти на более свежую версию 8.15. Чтобы для своей инфраструктуры или домашней технике ускорить данный процесс, я написал скрипт позволяющий это сделать. Скрипт временно меняет владельца и права на файл C:\WINDOWS\System32\curl.exe, производит замену, на заранее скачанный файл и возвращает права и влад...
Тема: Скрипт получения отметки последнего обновления групповой политики на серверах Предположим, что вы создали новую групповую политику и нацелили ее на нужные сущности Active Directory. Произвели принудительное обновление GPO, и хотите убедиться, что политика долетела. В таких случаях можно всегда воспользоваться PowerShell, чтобы проверить временную отсечку. (Дополнительно еще советую почитать причины и методы диагностики почему не применилась групповая политика) Вот пример простого скрипта: ...
Тема: Как получить список DNS серверов на сетевых интерфейсах на группе удаленных хостов Я произвожу обновление контроллеров домена до Windows Server 2022, а это подразумевает, что по хорошему перед понижением роли DC нужно убрать из DNS на серверах, чтобы запросы ходили корректно. Ниже я приведу несколько PowerShell скриптов позволяющих это сделать на куче серверов из файла или например, только по контроллерам домена в домене или лесу. # Получаем список серверов из текстового файла $server...
Тема: Методы определения срока действия пароля пользователя Active Directory В статье рассматриваются методы позволяющие получить дату, когда у пользователя закончится пароль. Умение это делать позволит вам более тонко настроить политику уведомления, улучшить безопасность в домене и в целом прокачать знания по Active Directory. Подробнее про методы получения срока действия пароля у пользователя AD
Задача: Взять список серверов и на каждом из них проверить какие существуют VPN профили в системе. В результирующей таблице вывести имя сервера, имя профиля с его описанием и путь до нужного ProfileID. Как и ранее в этом нам будет помогать PowerShell ISe в режиме администратора. # 1. Взять список серверов из файла $serverList = Get-Content -Path "C:\Temp\RDS\servers-term.txt" # 2. Создать массив для хранения результатов $results = @() # 3. Обойти каждый сервер из списка ...
Скрипт для удаленной проверки журнала NTLM на списке серверов. Еще больше скриптов ищите на Pyatilistnik.org. # Чтение списка серверов из файла $servers = Get-Content -Path "C:\Temp\RDS\servers-term.txt" # Проход по каждому серверу foreach ($server in $servers) { try { # Использование Invoke-Command для выполнения кода на удаленном сервере $result = Invoke-Command -ComputerName $server -ScriptBlock { # Определение пути к реестру $RegPath = "HKLM:\...