Light-electric.com

IT Журнал
2 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Инвентаризация в домене

Инвентаризация в домене

Всё никак не получается подойти к решению данной проблемы.
Сначала был GLPI c Fusion Inventory. И работало и работает он до сих пор, только проблема в агенте — его нужно запускать на клиенте. Как что-то обновляется — его нужно по новой запускать. При изменении добавляет повторную такую же запись. Последний год не добавляли и не ставили на компы. Вот и возникли сложности.

Нужно без агентов, собрать статистику по компьютерам и софту на них. В основном стоит Win7 Pro с MS Office 2010. Посмотрел в сторону MS MAPT (Microsoft Assessment and Planning Toolkit). Поставил, начал тестировать. Ввёл диапазон сетей. Нашло несколько компов (даже много), достучалось до 1-2. Вбил учётные записи, которые 100% есть на компах — ещё 5 штук инвентаризировал, остальные — нет доступа. Как я понял, ему нужно, чтобы компы состояли в AD.
В общем, нехватка времени и постоянные дёргания со стороны не позволяют подойти к полному изучению данного инструмента. Минус данного инструмента — не работает с домашними и домашними расширенными версиями ОС.

Нашёл статью на ixbt.com — [url=Обзор Total Network Inventory]http://www.ixbt.com/soft/total-network-inventory.shtml[/url]. Скачал, начал тестировать. Программа проста в понимании, но, ошибки схожи с MAPT. Не может оно достучаться до большинства компов, где 100% есть у/з, которые я вбил. Вываливается с ошибкой по SMB. Хотя, все компы в домене и доступны.

Подскажите, какое ПО есть, чтобы собрать статистику всех компов и ПО на них в сети без запуска агентов. Недолго читая форумы, некоторые люди пишут, что GLPI может работать без дополнения fusion inventory, но подтверждения так и не нашёл.

Sas
Не может оно достучаться до большинства компов, где 100% есть у/з, которые я вбил. Вываливается с ошибкой по SMB. Хотя, все компы в домене и доступны.

А зачем на компах создавать учётки, если у вас есть домен?

Добавление от 17.03.2015 20:11:

Sas
ПО на них в сети без запуска агентов

Я это делал самописным скриптом, опрашивающим машины по WMI. А потом у нас появился SCCM. Хоть он и с агентом, но он того стоит. Особенно если вспомнить, что SCCM умеет дистанционно впихивать агента на клиентские машины.

Джамаль
А зачем на компах создавать учётки, если у вас есть домен?
Как раз таки незачем. Вводил доменную учётку, как обычную так и с правами администратора. Я примечанием подписал, что на каждом компе, когда устанавливал оборудование или софт — вводил эту учётку, на всех компах она 100 % есть. Вот MAPT, почему-то, не хочет с ней стучаться и вообще её не воспринимает, пишет — acces denied. Как и Network Inventory.
Есть и локальная учётка, которая тоже есть на всех компах — не видят/не хотят и всё тут.

Я это делал самописным скриптом, опрашивающим машины по WMI.
А есть где почитать касательно такого скрипта?

SCCM
Завтра почитаю и потестирую.

Раз акцесс денайд, то либо машины не в домене, либо файрвол включён или поставлен сторонний, либо вашего пользователя кто-то выбросил из группы локальных администраторов. Либо шаловливые ручки прописали левые DNS-серверы, из-за чего машина не может договориться с доменом. Либо те же ручки отключили сервис Server или Remote Registry, чтобы никто не зашёл и ничего не посмотрел. Я такие ручки обычно выдёргиваю и вставляю в плечи, а заодно ремень по заднице начисляю.

Чтобы не останавливали службу сервера, удалённого реестра и WMI, я их в политиках вписал, чтобы они принудительно запускались.

А в чем проблема OcsInventory запускать раз в неделю или раз в день при запуске компа ? Он ведь при установке сервисом на винде устанавливается.

Самого то же этот вопрос интересует , вроде новый касперский умеет инвентаризировать

Если в организации нет полного представления обо всем аппаратном и программном обеспечении, работающем в сети, то задача управления системами и обеспечения их безопасности становится непосильно сложной. Kaspersky Systems Management освобождает управление IT-ресурсами и IT-безопасностью от необходимости строить предположения, действуя вслепую.

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

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

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

Программа для инвентаризации компьютерного парка — Total Network Inventory

Приветствую дорогие друзья.

Как я уже неоднократно говорил, да и, думаю, Вы сами догадываетесь, меня частенько просят написать что-нибудь из именно админских заметок, а так как » hard — version » (про сервера и прочие совсем админские штуки) этого сайта еще не вышел (но активно разрабатывается), то пока что я буду, правда очень редко и очень кратко (подробного описания, что и как делать, не ждите, но некоторые микро-обзоры программ всё таки мелькать будут) публиковать некоторые статьи по данной теме в рамках этого сайта, как это было, например, со статьей «Сетевой сканер для Windows [Advanced IP Scanner 2.0]».

Читать еще:  Установите a запись для домена

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

Total Network Inventory — программа для инвентаризации

Не знаю кто как, а я люблю знать, что у меня в сети где, зачем и почему. Где обитают сервера, где бухгалтерия, где файлопомойка и что-то еще такое разное, причем не только физически, но и, так сказать, виртуально.

Но мало знать где это всё стоит, какие IP имеет и тд и тп, но порой, в случае инвентаризации (учета всего и вся для нужд бухгалтерии, апгрейдов или еще чего-то подобного) или просто по прибытию на новое место (или даже просто из любопытства 🙂 ), бывает просто жизненно необходимо узнать куда больше данных, а именно, что за железо стоит на всех компьютерах в сети, что за программы и операционная система установлены на той или иной машине, какие принтеры туда воткнуты и всё такое разное.

Естественно, что бегать от компьютера к компьютеру с каким-нибудь AIDA64, довольно накладно, особенно, если компьютеров штучек этак 50 — 100 и за каждым работает кто-либо. И вот тут нам на помощь приходит такая программа как Total Network Inventory .

Занимается она тем, что умеет сканировать через сеть компьютеры с системами Windows, Mac OS X или Linux (и при этом не нужно ничего и никуда дополнительно бегать и устанавливать — достаточно иметь лишь админский пароль) и буквально в два клика позволяет узнать всё необходимое, от всего железа до списка установленных и запущенных программ, установленных системных обновлений, списка автозагрузки и вообще всего всего всего, что может быть необходимо. Количество подробностей поражает воображение и, по сути, не вставая из-за компьютера, Вы получаете по количеству данных тоже самое (а местами и больше), что Вы бы узнали, бегая от машины к машине и используя вышеупомянутую AIDA64 .

Программа полностью на русском языке, имеет крайне симпатичный дизайн и проста в управлении настолько, что я даже не буду описывать, что к чему и как делать (хотя, учитывая, что это статья в формате «для администраторов», то думаю, что оные и сами разобрались куда жмакать, даже если бы всё было не так просто 😉 ). Единственный недостаток — программа платная. Однако, я сторонник того, что в рамках корпоративных решений за хороший софт можно (и местами даже нужно) платить, благо что толковый руководитель компании всегда найдет копейку-другую под админские нужды, тем более, что подобная программка позволит, путем инвентаризации, сэкономить, возможно существенное, количество средств.

Скачать демо версию программы по этой ссылке.
Почитать всякое описание о принципе сканирования можно здесь.
Сайт разработчика со всякой прочей документацией, описанием и тп вот по этой ссылке: Total Network Inventory.

На установке и использовании останавливаться не буду. Любопытные же, могут и в домашних условиях, протестировать программу просто указав свой собственный локальный IP (например 192.168.1.2) или имя компьютера в поле » Добавить » и нажав Enter , а затем надавить в кнопочку » Начать сканирование «, по завершению которого увидеть список всех данных на вкладке » Подробности «.

Послесловие

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

Как и всегда, если есть какие-то вопросы, дополнения и тп, то буду рад видеть их в комментариях.

Спасибо за внимание и оставайтесь со мной 😉

PowerShell и другие скрипты

Get-Command | Out-Blog

Простенькая инвентаризация ПО на компьютерах

Захотелось тут одному начинающему “автоматизатору” получить данные об установленном на компьютерах сети программном обеспечении, для последующей обработке в Excel 🙂

Если для получения списка компьютеров применить Quest AD Cmdlets, а для проверки их доступности Where-Online то всё будет очень просто 🙂

Share this:

Понравилось это:

Похожее

Навигация по записям

Xaegr, подскажите тогда, пожалуйста, как вытащить информацию, например, о версии IE?
EE namespace :rootcimv2ApplicationsMicrosoftIE
Спасибо.

Konstantin, откуда вы взяли этот namespace? Я его у себя на 2008R2 RC1 не нашел 🙂
Версию IE можно посмотреть например так:
(gi «$env:ProgramFilesInternet Exploreriexplore.exe»).versionInfo.productVersion
8.00.7100.0
Пойдёт?

Подозреваю, что это выходит за рамки «простенькой инвентаризации», но…

В Win32_Product не всегда можно получить полностью адекватный список программ, к примеру, пытаясь получить версию JRE, в Win32_Product у нас будут JRE update 5, JRE update 13 и т.д. Поэтому нужно ставить какой-то фильтр, что неудобно.

Получается, что иногда проще вытаскивать информацию о версиях программ из «rootcimv2Applications» или, например, реестра.

Читать еще:  Outlook почта для домена

function Get-InternetExplorerVersionWMI <
param ($strComputer)

$hklm = 2147483650
$key = «SOFTWAREMicrosoftInternet Explorer»
$value = «Version»
$wmi2 = «\»+$strComputer+»rootdefault:stdRegProv»
$wmi = [wmiclass]$wmi2
$rpk = ($wmi.GetStringValue($hklm,$key,$value)).sValue

$rpk
>
Get-InternetExplorerVersionWMI $args

Или так:
#Get-InternetExplorerVersionWMI.ps1
$reg = Get-WmiObject -List -Namespace rootdefault -ComputerName $_ | Where-Object <$_.Name -eq «StdRegProv»>
$HKLM=2147483650
$ie = $reg.GetStringValue($HKLM,»SOFTWAREMicrosoftInternet Explorer»,»Version»)
$ie.sValue

Не-не-не. Там же ж $key, $value и $compname можно из $args брать 😉 И будет универсальная читалка реестра по сети =)

И уж если сокращать:
# Get-IEVer-WMI-oneliner.ps1
# Get IE version through WMI in one line! (comments don’t count!) made by pan_2@LJ
(([wmiclass]»rootdefault:stdRegProv»).GetStringValue(2147483650,“SOFTWAREMicrosoftInternet Explorer”,“Version”)).sValue

Согласен, я так собираю информацию о кодеках, DjVu и прочем, что через Windows Installer не всегда проходит, поэтому и $args столько.

прошу прощения пару вопросов,
1. правильно понимаю, что скрипт под PSv2 ?
2.как прикрутить Quest AD Cmdlets к PSv2 ?
у меня выдается сообщение об ошибке
The term ‘Get-QADComputer’ is not recognized as a cmdlet, function, operable program, or script file. Verify the term and try agai
n.

прошу прощения пару вопросов,
1. правильно понимаю, что скрипт под PSv2 ?
2.как прикрутить Quest AD Cmdlets к PSv2 ?
у меня выдается сообщение об ошибке
The term ‘Get-QADComputer’ is not recognized as a cmdlet, function, operable program, or script file. Verify the term and try agai
n.

smilerZ:
1. Нет, этот скрипт вполне будет работать и в 1.0. Посты со скриптами требующими функционала 2.0 я стараюсь помечать соответствующей меткой.
2. Точно так же как к 1.0. Вы видимо установили командлеты, но не подгрузили оснастку. Можно например выполнить команду get-pssnapin -registered | add-pssnapin чтобы подключить все установленные оснастки.

Xaegr Спасибо.
Пытаюсь сделать инвентаризацию ПО при загрузки машины с записью в SQL, при тестировании всех найденных мною вариантов получения списка ПО через

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

Вы можете посоветовать, как можно сделать скрипт, который дает полный список установленного ПО.

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

Заранее огромное спасибо.


Сдается впечатление, что мои сообщения публикуются только со второго раза 😦

Инвентаризация в домене

Администратор

Группа: Главные администраторы
Сообщений: 14349
Регистрация: 12.10.2007
Из: Twilight Zone
Пользователь №: 1

Недавно начальство попросило меня подумать над вопросом о сборе информации о комплектации компьютеров у нас в домене. Сначала просьба была только на счет процессоров памяти и жестких дисков. Первая мысль — хождение по отделам и просьба освободить компьютер на минутку. В случае с 1 компьютером не сложно, но если их 1500. Мысли были направленны в сторону PowerShell.

Для начала надо было извлечь список всех компьютеров в домене. В данном примере мой домен Test.lan. Импортируем весь этот список в файл AllComputers.csv.

Для этого не забываем добавить модуль АД для PS. У меня на рабочем месте он прописан в профиле, и вам советую сделать тоже самое:

Sort-Object name | Select-Object name | Export-csv C:InventAllComputers.csv -NoTypeInformation

Здесь надо пояснить, что у меня в домене есть папка Disable, где располагаются учетные записи всех отключенных компьютеров. Если они отключены, то какой смысл к ним стучаться. По этому эту папку мы исключаем из поиска.

Всем понятно, что далеко не все компьютеры, которые находятся в домене, включены, работают или вообще имеют место быть. По этому перед тем, как перейти к проверке, мы проверяем связь с ним. Конечно можно этого не делать, если у вас 100 компьютеров. А если у вас 2000 компьютеров, потеря времени при количестве выключенных компьютеров порядка 800 съест у вас не мало времени. Так же стоит сразу вспомнить компьютеры, к которым у нас нет доступа. Так же смысла стучаться в их дверь нет.

import-csv c:InventAllComputers.csv | foreach <

if ((Test-connection $a -count 2 -quiet) -eq «True»)

if ((Get-WmiObject -computername $a Win32_OperatingSystem) -eq $null)

Многие могут возразить:

«Для чего такие сложности? Зачем сначала делать список а потом импортировать его. Не легче ли сразу?»

Согласен, легче. Но иметь перед глазами список компьютеров, согласитесь, приятно. К тому же, список пронумерован. И Вы всегда знаете сколько у вас компьютеров в АД.

Для теста соединения выбрал cmdlet Test-connection с параметром -quiet, дабы нам не выдавались строчки с разной информацией, а просто выдавался ответ: True or False. При чем мы сокращаем количество запросов с 2 до 4.

Если мы постучимся к компьютеру с WMI запросом, а прав на такое действие у нас нет, получим кучу строчек красного цвета с ошибками. Так что сразу отфильтровываем такие компьютеры пробным WMI запросом

Любую информацию (наверное, почти любую) можно узнать, если залезть в WMI объекты, а PS позволяет это делать просто на ура. Так что я сразу углубился в поиски нужных WMI объектов.

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

Убедившись, что компьютер в сети, что доступ у нас к нему есть, смотрим его внутренности:

Читать еще:  Синхронизация времени в домене

Write-Host «Проверка компьютера » -ForeGroundColor Green $a

«Компьютер» | out-file c:InventComp$a.txt

Get-WmiObject -computername $a Win32_OperatingSystem |

select-object csname, caption, Serialnumber, csdVersion |

out-file c:InventComp$a.txt -append

Get-WmiObject -computername $a Win32_ComputerSystemProduct | select-object UUID |

ft UUID -autosize | out-file c:InventComp$a.txt -append

«Процессор» | out-file c:InventComp$a.txt -append

Get-WmiObject -computername $a Win32_Processor | select-object name, SocketDesignation, Description |

«Материнская плата» | out-file c:InventComp$a.txt -append

Get-WmiObject -computername $a Win32_BaseBoard | select-object Manufacturer, Product, SerialNumber |

out-file c:InventComp$a.txt -append

«Жесткие диски» | out-file c:InventComp$a.txt -append

Get-WmiObject -computername $a Win32_DiskDrive | select-object Model, Partitions, Size, interfacetype |

out-file c:InventComp$a.txt -append

«Логические диски» | out-file c:InventComp$a.txt -append

Get-WmiObject -computername $a Win32_LogicalDisk -Filter «DriveType=3» | select-object DeviceID, FileSystem, Size, FreeSpace |

out-file c:InventComp$a.txt -append

«Оперативная память» | out-file c:InventComp$a.txt -append

Get-WmiObject -computername $a Win32_Physicalmemory | Select-Object capacity, DeviceLocator |

out-file c:InventComp$a.txt -append

«Видеокарта» | out-file c:InventComp$a.txt -append

Get-WmiObject -computername $a Win32_videoController |

Select-Object name, AdapterRAM, VideoProcessor |

out-file c:InventComp$a.txt -append

«Сетевая карта» | out-file c:InventComp$a.txt -append

$OS=Get-WmiObject -computername $a Win32_OperatingSystem | foreach

if ($OS -eq «Microsoft Windows 2000 Professional»)

Get-WmiObject -computername $a Win32_NetworkAdapterConfiguration -Filter «DHCPEnabled=True» |

out-file c:InventComp$a.txt -append

Get-WmiObject -computername $a Win32_NetworkAdapter -Filter «NetConnectionStatus>0» |

Select-Object name, AdapterType, MACAddress |

out-file c:InventComp$a.txt -append

Вся информация о компьютере падает в текстовый файл.

Здесь стоит остановить внимание на 2 моментах.

Во-первых, строчку Write-Host «Проверка компьютера » -ForeGroundColor Green $a я делал исключительно для себя, ибо приятно знать чем занимается в данный момент PowerShell.

Во-вторых, для чего мы перед проверкой сетевой карты проверяем ОС.

К сожалению, Windows 2000 не отвечает на запрос Win32_NetworkAdapter, по этому к ней мы применяем запрос Win32_NetworkAdapterConfiguration. Почему не оставить только последний? Можно оставить, но Win32_NetworkAdapter выдает такой атрибут, как Name, когда в его аналоге только Caption. Мелочь, а приятно.

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

Вот в принципе и все.

Скрипт можно доработать до своих потребностей.

Инвентаризация ПК в домене

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

Может кому-нибудь пригодится данный способ:

1) Установленный/Portable Дистрибутив AIDA64

3) Учетка с правами администратора в данном домене

1) Создаем шару с полным доступом для всех и копируем туда все файлы aida64

2) Запускаем Aida64, заходим в мастер отчетов , выделяем нужные нам свойства и сохраняем на шару рядом с AIDA64.exe — aida64.rpf

3) Делаем бат-файл со следующим содержимым и кладем его на нашу шару в папку с aida64 под именем aida.bat:

\station177AIDALOGS2aida64.exe /R «\station177AIDALOGS2Reports$IPADDR — $HOSTNAME — $USERNAME.txt» /SUM /CSV /SHOWP /NOICONS /CUSTOM \station177AIDALOGS2aida64.rpf

где \station177AIDALOGS2 — путь к шаре

4)Для скана всех известных пк в сети(используется ARP таблица) запускаем данную команду:

Сначала обновляем ARP таблицу:

for /L %a in (1,1,254) do @start /b ping 10.200.1.%a -n 2 > nul

Замените 10.200.1 на вашу подсеть

И команда для инвентаризации:

psexec \* -u domainuser -p ***** -d -n 12 \station177AIDALOGS2aida.bat

, где * — скан всех пк (ARP)

Для скана определенного пк замените * на его имя

В итоге в папке REPORTS обнаружим отчеты в CSV/HTML формате, которые можно просмотреть в любом браузере в удобном виде.

+ данного метода в том, что aida предоставляет множество информации(нужные поля мы сами задаем в мастере отчетов)

+ все происходит в скрытом режиме для конечного пользователя

Он денег стоит:D

Нам было необходимо достать инфу конкретную, чтобы закупить память под старый разрозненный парк. Опять же единоразово, а не на постоянной основе. Так и PRTG хватает

Опять повторюсь, аида позволяет достать ту же макс поддерживаемую ОЗУ + количество свободных слотов + поддерживаемые типы достать. И еще кучу всего по желанию. Не всякий софт справится.

А зачем перед сканированием ARP-таблицу очищать?

А именно очищать ее нужно перед сканом подсети так как некоторые пк, которые закэшировались в таблице уже могут быть выключены и это удлиняет время отработки скрипта.

У меня строчка завелась только после изменения:

for /L %%a in (1,1,254) do @start /b ping 10.200.1.%a -n 2 > nul

Без этого ошибка «Непредвиденное появление а».

Дык это не очистка, а наоборот заполнение таблицы — пинг каждого пк в указанной подсети в указанном диапозоне, чтобы pstools смогла отработать с * диапозоном.

Как этот процесс заставить работать не в домне.

Допустим, на всех ПК есть админская учётка «admin» c одним и тем же паролем.

Первую проблему победил — это заставил psExec заходить на ПК — на всех ПК разрешил доступ к админиским шарам «C$» (в домене он уже включён, а у меня компьютеры не в домене), командой:

reg add «HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem» /v «LocalAccountTokenFilterPolicy» /t reg_dword /d 1 /f

Вторая проблема в том что psExec надо запускать в cmd, запущенной от администратора, т.к. aida64 требует повышения прав.

Третью пробелму я не смог победить: проблема в том, что psExec не может запустить бат файл с шары, хотя доступ для всех и без пароля (вручную с другого с ПК, с которого мне надо собрать отчёт я могу запустить из шары этот bat файл):

Ссылка на основную публикацию
Adblock
detector