Home

Serg

Net Manager - system administrator tool for manage computers in Active Directory network. Quick Start(ru): http://goo.gl/h2qXs Change log(ru): http://goo.gl/p2C8y FAQ(ru): http://goo.gl/aQlPJ ICQ: 6251498

Страница проекта: http://sourceforge.net/projects/netopmanager/

Обычно в жизни простого системного администратора наступает момент, когда в и без того загруженной голове не остается места, чтобы помнить все компьютеры и имена пользователей по ip-адресам/именам ПК.

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

NetManager - программный продукт, предоставляющий удобный и быстрый доступ к информации о рабочих станциях и учетных записях в вашей сетевой структуре, и позволяет за несколько секунд выполнить следующие действия:
Узнать когда был последний вход определенного пользователя и на каком компьютере?;
Выяснить основные аттрибуты учетной записи пользователя (Полное имя, Телефон, E-Mail, и т.д.)?;
Найти IP зная MAC и наоборот;
Одним-двумя щелчками запустить повседневные утилиты удаленного администрирования типа Psexec, NetOp, VNC, Dameware MRC, Radmin, etc. с передачей в качестве параметров имени ПК и(ли) учетных данных для подключения;
Составить списки по членству в группах и принадлежности к подразделениям;
В короткие сроки подготовить отчет или составить список пользователей по заданным параметрам;
Выяснить, каким компьютерам требуется апгрейд оперативной и дисковой памяти, сетевых интерфейсов;
Найти, на каких компьютерах есть проблемы с обновлениями или какие явно заражены вирусами (параметры реестра HKLM..\Winlogon\Shell и Userinit);
Просмотреть и произвести поиск по любым прочим параметрам, которых в данный момент насчитывается более 40.
Интеграция с www.netdisco.org позволяет в считанные секунды найти порт и коммутатор к которому подключен ПК пользователя.
Выделить ПК, на которых следует заменить HDD
Выгрузить данные в CSV файл для дальнейшего анализа в MS Excel
* Определить ПК, нуждающиеся в обновлении основных компонентов (Java, Flash, Silverlight, WindowsUpdate, Антивирус)

Приложение состоит из двух компонентов:

Cкрипт на kix32 http://www.kixtart.org/ audit.kix запускается из user-logon скрипта на всех ПК локальной сети и сохраняет результат в общую папку, доступную всем пользователям сети на чтение/запись. Результатом работы скрипта является текстовый файл названный по NETBIOS-имени ПК.
gui win32 приложение,которое читает файлы с результатами работы скрипта audit.kix и представляет их в виде таблицы с возможностью гибкой фильтрации и выгрузки в HTML/CSV (например для последующего анализа в MS Excel)

Этапы внедрения:

Создать общую папку на файловом севере \server\share\data
Разрешить доступ на чтение/запись в эту папку группе “Пользователи домена”
Проверить работоспособность запустив kix32.exe c параметром audit.kix
c:>kix32.exe audit.kix $SharePath=\server\share\data
Результатом работы скрипта будет файл названый NETBIOS именем ПК в папке
\server\share\data
Определить OU в домене к которому будет привязан объект GPO запускающий скрипт audit.kix Как правило это ou=users,dc=domain
Создать общую папку на файловом сервере с доступом чтение/запуск для группы пользователей “Пользователи домена” \server\share\kix
Скопировать файлы audit.kix и kix32.exe в папку \server\share\kix
Создать командный файл inventory.cmd содержащий строку запуcка

\server\share\kix32.exe \server\share\kix\audit.kix $SharePath=\server\share\data

Создать политику для этого OU и назначить в качестве logon cкрипта пользователя (конфигурация пользователя) inventory.cmd
Перелогиниться в профиль MS Windows на любом ПК домена. Если все настройки верны, то в папке \server\share\data будет создан файл результатов работы скрипта названый NETBIOS именем ПК.
Запустить nm.exe на закладке config указать путь к папке в разделе Path to KIX results \server\share\data и нажать кнопку Refresh
Если не используется Active Directory (контроллер домена NT/SAMBA) в скрипте audit.kix установить параметр $ad=0

Параметры audit.kix, установленные по умолчанию:

$ad=1 ; use ADSI (ActiveDirectory)
1 - получать данные из ActiveDirectory
0 - не использовать ActiveDirectory (в случае если домен NT4/SAMBA или отсутсвует)
$oo_profile=1 ; set OpenOffice user information
1 - Прописать в Open Office информацию о пользователе и ПК
0 - Отключить изменение параметров Open Office
$ms_profile=1 ; set MS Office user information
1 - Прописать в MS Office информацию о пользователе и ПК
0 - Отключить изменение параметров MS Office
$EmptyTemp=1 ; delete temp
1 - чистить папку %TEMP%
0 - не чистить папку %TEMP%
$ObjectsToDelete = 500 ; 500 items
количество элементов для удаления из %TEMP% за один запуск скрипта
$FileAge = 5 ; 5 day old
удалять элементы из %TEMP% старше 5 дней

Особенности интерфейса:
В полях формы фильтрации поддерживается поиск по нескольким словам (частям слова) разделенных пробелом например иванов петров пупкин.
Для точной фильтрации используется символ \ например: \User
Для точного поиска необходимо включить искомую фразу в кавычки например: “Иванов Иван”
Результат поиска объединяется по условию ИЛИ
Если строка поиска не найдена то, производится ее автоматическая перекодировка в другую раскладку (EN/RU) и повторный поиск. Если и при повторном поиске ничего не найдено то строка поиска снова перекодируется в первоначальную кодировку.
На закладке config расположен листбокс со списком доступных для отображения столбцов. Для того чтобы изменения в этом списке вступили в силу необходимо перезапустить приложение
В момент закрытия информация о ширине столбцов фильтрованного списка сохраняется в файл nm.ini Далее при старте приложения эта информация применяется как к столбцам фильтрованного, так и общего списков.
Для правильной сортировки колонок содержащих цифровые данные в файле nm.ini предусмотрен раздел [IsNumeric] В нем описаны столбцы которые следует сортировать как числовые. 0 - текстовый столбец, 1 - числовой.
Для удобства работы, выделенная строка таблице записей, может дублироваться на отключаемую полупрозрачную панель информации, которая будет отображаться поверх всех окон
В файле nm.col содержится информация, которая при старте приложения загружается в листбокс на закладке config. При желании можно подифицировать скрипт audit.kix для получения дополнительной информации и помещения ее в файл результатов для дальнейшего анализа в nm.exe
Для более быстрого визуального анализа списка предусмотрено 5 цветовых градаций. Если в строке таблицы в любой ее колонке будет найдено слово (последовательность символов), указанное настройках, то строка будет подсвечена соответствующим цветом (последовательность заливки “сверху вниз” т.е. если верхний совпал и нижний то закрасится нижним) . Это удобно например для визуального отображения привилегий пользователя на ПК.

Если по какой-то причине в именах результирующих файлов работы скрипта audit.kix добавлено расширение то его можно указать в поле KIX file suffix например: . LOG
Для удаления файла результатов и строки из списка предусмотрена “горячая” кнопка Delete
В фильтрованной таблице при правом клике на строку доступно всплывающее меню, в котором доступны некоторые действия с ПК:

Предусмотрена возможность вызова внешних командных файлов с указанием в параметрах командной строки имени компьютера и пароля. Для этого в всплывающем меню служит пункт Deploy. Информация динамически подгружается из файла nm.dep имеющего формат “название пункта”,”имя командного файла или приложения”. Командный файл будет выполнен c параметрами %1 и %2
file.cmd %1 %2
Где %1 - NETBIOS имя компьютера
%2 - Пароль (необязательный параметр)
пример командного файла “снятие скриншота с удаленной машины”

lsgrab.exe /c:%1 /p:c:\ start c:\%1.JPG

пример командного файла “Установка приложения через psexec”

psexec.exe \%1 -u domain\Admin -p %2 -e \server\share\prog_inst.cmd

=== install_prog.cmd ===
msiexec /q /i "\server\share\installer.msi"
========================
Как оказалось запуск psexec в w7/Vista с активным UAC требует дополнительного ключа командной строки -i 1 поэтому скрипт деплоинга может выглядеть например так:

@echo off
:: =============================================================================
:: Запуск psexec с разными ключами в зависимости от версии OS 2000/XP/Vista/W7
:: =============================================================================
:: 5.0 - 2000
:: 5.1 - XP
:: 6.0 - Vista
:: 6.1 - w7
:: (c) cp 17.12.2010
:: =============================================================================
set OsVer="Unknow"
wmic /node:"%1" OS get Version > "%temp%\osver.txt"

type "%temp%\osver.txt" | find "5.0"
if ERRORLEVEL 1 goto next1
set OsVer=2000
:next1

type "%temp%\osver.txt" | find "5.1"
if ERRORLEVEL 1 goto next2
set OsVer=XP
:next2

type "%temp%\osver.txt" | find "6.0"
if ERRORLEVEL 1 goto next3
set OsVer=Vista
:next3

type "%temp%\osver.txt" | find "6.1"
if ERRORLEVEL 1 goto next4
set OsVer=W7
:next4

if %OsVer% == W7 goto psexecW7
psexec \%1 cmd
goto end
:psexecW7
psexec \%1 -i 1 cmd
:end

В файле nm.ini предусмотрена секция [WARNINGS] в которой описываются условия для отбора по кнопке [WARNINGS] (на владке Config). Если какой-то параметр попадает под указанные условия, он будет подсвечен в окне Details:

Пример секции [WARNINGS]:

[WARNINGS]
Param1=FREE_C<1000
Param2=RAM<500
Param3=NeworkInterfaceSpeed1<99
Param4=FS_C=FAT32
Param5=Userinit!C:\WINDOWS\system32\userinit.exe,
Param7=HDD1smart_RSC>10
Param8=HDD2smart_RSC>10

Допускается использование условных операторов:

больше
< меньше
= равно
! не равно

Отобрать записи попадающие под условия можно из пункта меню:

[Parameters]

P.S. Жду отзывов и разумной критики на
ICQ 6251498
google+
Сергей.

Screenshot thumbnail
Filtered list
Screenshot thumbnail
Popup menu
Screenshot thumbnail
netdisco search results
Screenshot thumbnail


Project Members:


Related

Wiki: Parameters

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks