Инвентаризация контроллеров домена с помощью Powershell

Как вы уже поняли, моим хобби является написание скриптов на Powershell для Active Directory 🙂

В этот раз я поделюсь скриптом, который составляет табличку по всем доменным контроллерам, в которой содержится сайт AD, в которой содержится сайт, операционная система с сервис-паком, производитель и модель сервера, количество процессоров и памяти.

Из полезного – еще можно выдернуть наличие на контроллере домена роли глобального каталога, FSMO-ролей, RODC или нет. Плюс убрать саму привязку скрипта к модулю AD for Powershell. Но атрибута “глобальный каталог” или RODC в выводе Get-ADDomainController я не увидел, а FSMO-роли возвращаются в виде массива значений, поэтому в экспорт CSV не попадают.

Get-ADDomainController -Filter * | select hostname, site, operatingsystem, OperatingSystemServicePack, @{name="vendor";expression={(gwmi Win32_ComputerSystem -ComputerName $_.hostname).Manufacturer}}, @{name="model";expression={(gwmi Win32_ComputerSystem -ComputerName $_.hostname).model}}, @{name="CPU, count";expression={(gwmi Win32_ComputerSystem -ComputerName $_.hostname).NumberOfLogicalProcessors}}, @{name="RAM/GB";expression={[math]::round((gwmi Win32_ComputerSystem -ComputerName $_.hostname).Totalphysicalmemory/1GB)}} | sort hostname | Export-
Csv -NoTypeInformation C:\scripts\dclist.csv

Полученный CSV-файл открывается в Excel и обрабатывается с помощью операции “Текст по столбцам”.

[table id=1 /]

Хотите бесплатно сдать экзамен Microsoft?

Это вы по адресу 🙂

Прислали мне ссылку на хабр, а там – ваучеры на бесплатную сдачу экзамена 74-409 раздают со сроком сдачи до 30 июня 2014 года.

Идете по этой ссылке и будет вам бесплатный ваучер на почту после регистрации.

Правда, на хабре пишут, что количество ваучеров ограничено, как и количество бесплатных экзаменов. Если я правильно понял, ваучер могут дать, а экзамен по нему сдать – нет.

Кроме того, виртуальная лаборатория бесплатно учит по Hyper-V, и даже есть конкурс по обучению – дистанционно учитесь, а потом получаете этот же ваучер.

Хранение файла подкачки на Msft Virtual Disk SCSI Disk Device

Есть у меня виртуальная машина на Hyper-V 2008 R2.

Один диск (системный) у нее на IDE-контроллере, второй – на SCSI.

Удивлением для меня было то, что:

  1. Ни IDE, ни SCSI-контроллеры добавлять на лету в ВМ нельзя;
  2. Добавлять новый/изменять размер старого диска IDE – нельзя;
  3. Загружаться со SCSI тоже нельзя.

А еще, оказывается, нельзя положить файл подкачки pagefile.sys на SCSI-диск. Представьте картину маслом:

  • кончается место на системном диске;
  • перенастраиваю файл подкачки так, что на системном диске он занимает 400мб, на втором – 150% ОЗУ;
  • перезагружаюсь – и не вижу файла подкачки на втором диске. Серверная машина начинает кряхтеть и плакать, все приложения по кругу – глючить и вылетать.
  • самое обидное то, что причину несоздания файла подкачки в журналах я так и не нашел. Случайно нагуглил ветку на форуме.

Не все так плохо – вроде бы в Win2k12 или Win2k12R2 наконец-то можно загружаться с vSCSI и хранить там файл подкачки.

А вы что скажете, дорогие читатели? Можно или нельзя 😉

Брандмауэр Windows и буфер обмена

Mr. Aloof пишет:

Совершенно случайно обнаружил, что правила брандмауэра Windows вполне себе копируются в буфер обмена.

Понадобилось повторить штук 10 правил с одного компьютера на другом. Так как было довольно лениво, с мыслью: «а вдруг?», выделил нужные правила в списке, нажал Ctrl+C и переключившись в RDP на другой компьютер в списке правил нажал Crtl+V. Случилось чудо и правила вставились!

Искренний «Like» программистам из Microsoft, которые не поленились описать формат данных для сериализации и добавить несколько строк реализации метода.

Подсчет количества ОЗУ в контроллерах домена

Возникла у меня задача получения списка контроллеров и количества памяти на них. Так как я привык работать через Active Directory Module for Powershell, приведу пример работы с ним.

Get-ADComputer -SearchBase 'ou=domain controllers,dc=domain' -filter * | select Name, @{Name="Memory, Gb";Expression={[decimal]::round((Get-WmiObject -Class Win32_OperatingSystem -Namespace root/cimv2 -ComputerName $_.dnshostname).TotalVisibleMemorySize/1mb)}} | sort name

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

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

UPD2: Появилась более продвинутая версия скрипта.

Распространение и выполнение сценариев PowerShell с помощью System Center 2012 Configuration Manager

Виталий Якоб показывает, как выполнять Powershell-скрипты с помощью SCCM2012.

После создания скрипта для изменения строки подключения к RDS-ферме в RDP файлах пользователей нам нужно этот скрипт как-то доставить и выполнить на нескольких сотнях компьютеров. В этом непростом деле нам вновь поможет System Center 2012 Configuration Manager (SCCM).

Первым делом сохраним сценарий PowerShell в доступном сетевом расположении.

Перейдём к консоль SCCM и вызовем мастер создания пакета (Package). Присвоим имя создаваемому пакету, например “KOM Package Change Server name On RDP”. Укажем, что пакет имеет исходные файлы и укажем путь к каталогу с скриптом.

Continue reading “Распространение и выполнение сценариев PowerShell с помощью System Center 2012 Configuration Manager”

Захват и анализ сетевого трафика в Windows Server 2008 R2 /2012

Алексей Максимов показывает, как перехватывать сетевой трафик с сервера без Network Monitor/Wireshark.

В системах Windows для захвата и последующего анализа сетевого трафика многие из нас пользуются такими известными инструментами как Network Monitor или Wireshark. Захват трафика через эти инструменты в наблюдаемой системе предполагает установку дополнительных компонент, выстраивающихся в функции сетевого обмена. Начиная с Windows 7 / Windows Server 2008 R2 у нас появилась возможность выполнять захват трафика встроенными в систему средствами, то есть мы можем выполнить захват трафика на интересующей нас системе не выполняя непосредственную установку дополнительных программных средств, а полученный в результате захвата файл сетевого дампа в дальнейшем анализировать на той системе где установлены соответствующие средства анализа, например на рабочей станции администратора с установленным Network Monitor.

Continue reading “Захват и анализ сетевого трафика в Windows Server 2008 R2 /2012”

Антивирус для Windows Server – настраиваем список исключений

Алексей Максимов собирает в кучу исключения для антивирусного ПО под приложения Microsoft.

В ходе настройки политик управления клиентами любого антивирусного ПО необходимо определять список каталогов, имён процессов или даже расширений фалов, которые должны исключаться из Real-Time сканирования. Постараюсь собрать в одном месте информацию о рекомендуемых параметрах исключений и по мере необходимости буду его корректировать. Стоит отметить, что список составлен исходя из приложений, которые эксплуатируются в моём рабочем окружении. Список разделен по основным категориям сервисов и там где возможно есть ссылки на официальные рекомендации производителей ПО. Во всех случаях подразумевается что программное обеспечение установлено в каталоги «по умолчанию». Continue reading “Антивирус для Windows Server – настраиваем список исключений”

Модерирование переписки в смешанной организации Exchange 2007/2010

Ранее я писал про модерирование переписки в Exchange 2010. К счастью, мне повезло стать счастливым администратором смешанной среды, поэтому модерирование переписки на Hub 2007 у меня не работает. Или работает? 🙂

Есть магическая настройка – Expansion Server. Эта настройка указывает Hub, который “освещает” настройки группы распределения (distribution group). Соответственно, при отправке сообщений любой (даже Hub 2007) должен связаться с этим сервером.

Вот такой лайф-хак.

Из минусов решения можно отметить бОльшую нагрузку на этот Expansion Server.

P.S. Подсказку нашел тут.

P.P.S. А вот тут показывают, как посмотреть членов динамической группы распределения.