Заметки IT Менеджера

01.10.2013

Экспорт номеров телефонов и структуры организации в Phone Xpress

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

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

Я умышленно пользовался внешними компонентами от Quest для работы с AD, т.к. в этом случае все будет работать и в 2003 домене. В скрипте есть ряд фрагментов, которые, в зависимости от вашей ситуации, нужно будет модифицировать.

(more…)

18.03.2013

Контроль доступа к другому почтовому ящику в Exchange

exchangeВ крупных компаниях очень важен контроль за применением “критичных” прав. Одним из наиболее важных в Exchange является доступ к другому почтовому ящику. При этом, это право может давать и Администратор пользователей Exchange. А эта роль может быть делегирована.

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

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

Ну и этот отчет, на еженедельной, а может и на ежедневной основе поможет контролировать ситуацию

 

#Автор оригинального скрипта: www.exchangefaq.ru/kak-poluchit-spisok-polzovatelej-imeyushhix-dostup-k-chuzhomu-pochtovomu-yashhiku.html + комментарии
#Автор изменений: itpadla.wordpress.com
#Дата создания: 28.08.2012
#Дата изменения: 18.03.2013
#Описание: получить список пользователей, имеющих доступ к чужому почтовому ящику

If ($host.Version.Major -lt 3) {$ExchangePss = Get-PSSnapin -Name Microsoft.Exchange.Management.PowerShell.Admin -ErrorAction SilentlyContinue}
Else {$ExchangePss = Get-PSSnapin -Name Microsoft.Exchange.Management.PowerShell.Admin -ErrorAction Ignore}
If ($ExchangePss.Name -ne "Microsoft.Exchange.Management.PowerShell.Admin") {Add-PSSnapin Microsoft.Exchange.Management.PowerShell.Admin}

(more…)

12.03.2013

Оперативный контроль аккаунтов пользователей и компьютеров в Active Directory

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

Недавно я публиковал заметку Автоматическое уведомление о заблокированных аккаунтах. Там было вполне рабочее решение, но у него был один недостаток – информация приходила в несколько “корявом” виде. В песочнице хабры я нашел нашел статью, в которой аналогичные вещи сделаны гораздо удобнее.

На ее основании я сделал  десяток скриптов, которые будут информировать вас о:

— блокировании и разблокировании (lock/unlock) учетных записей пользователей
— добавлении или удалении кого-либо в/из группы
— включение или выключение (enable/disable) пользовательского аккаунта

— добавление или удаление компьютера в/из домена
— добавление или удаление пользователя в/из домена

Все нижеприведенные скрипты сохраняются в файлы, по одному в каждый из файлов, файлы кладутся на контроллер домена, там же запускается Task Scheduler и в нем создается задача с триггером на соответствующий EventID в Security Log, например 4740, и действием, содержащим запуск C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe с параметром в виде пути к скрипту и его именем, например, C:\cmd\event-notification-4740-account_lockout.ps1

В результате, вы оперативно получаете информацию по важным изменениям в AD и можете на нее оперативно реагировать

(more…)

05.03.2013

Решение проблем с истекающими паролями у пользователей

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

Чтобы максимально минимизировать эту проблему нужно сделать две вещи:

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

 

Итак, скрипт, который рассылает уведомления пользователям

(more…)

25.02.2013

Отчет по базам данных Exchange 2007/2010

powershell_21

Публикую полезный скриптик, который по всем базам данных Exchange собирает нужную статистику и отправляет отчет по электронной почте.

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

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

Для Exchange 2010 может выводиться значения пустого места в базе.

Оригинальный скрипт был написан исключительно под Exchange 2010 и у меня не работал, так что пришлось его модифицировать. Кроме того, в оригинале, зачем-то, для генерации письма использовался файл, в который все и писалось, а в “финале” он включался в сообщение как его содержимое. Это было некрасиво, кроме того, делало сложным запуск этого скрипта как задачи на сервере.

Конечным результатом является отчет вида, представленного ниже

(more…)

14.02.2013

Автоматическое уведомление о заблокированных аккаунтах

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

Сам скрипт кладется на домен контроллер, там же запускается Task Scheduler и в нес создается задача с триггером на EventID: 4740 в Security Log и действием, содержащим запуск C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe с параметром в виде пути к скрипту и его именем, например, C:\cmd\account-lockout-notification.ps1

 
 
 

#Отсылка сообщений о блокировании аккаунтов
$Event=Get-EventLog -LogName Security -InstanceId 4740 -Newest 1 -ErrorAction SilentlyContinue
$MailBody= $Event.message

$MailSubject= "User Account locked out"
$SmtpClient = New-Object system.net.mail.smtpClient
$SmtpClient.host = "smtp.domain.com"
$MailMessage = New-Object system.net.mail.mailmessage
$MailMessage.from = "AcctLockNotify@domain.com"
$MailMessage.To.add("it@domain.com")
$MailMessage.IsBodyHtml = 1
$MailMessage.Subject = $MailSubject
$MailMessage.Body = $MailBody
$SmtpClient.Send($MailMessage)

17.07.2012

Очень полезный скрипт

03.07.2012

Переиндексация базы WSUS

Работа сервиса WSUS со временем может замедляться из-за того, что с базой данных этого сервиса не проводятся задачи обслуживания. Делать это не сложно, главное знать как :-)

Все что нужно, это периодически запускать специальный скрипт, который и будет выполнять эти работы. Следует учитывать, что нижеприведенные операции предназначены только для обслуживания баз WSUS 3.x

Итак, для выполнения этого скрипта нам потребуется утилита командной строки для запуска T-SQL скриптов sqlcmd. Если ее нету на сервере WSUS, то следует установить ее из Feature Pack for Microsoft SQL Server 2005.

После этого следует создать файл wsus_DB_maintance.cmd со следующей строкой в содержимом:

sqlcmd -S np:\\.\pipe\MSSQL$MICROSOFT##SSEE\sql\query -i c:\cmd\WsusDBMaintenance.sql

Ну и ниже, привожу текст скрипта WsusDBMaintenance.sql

(more…)

22.06.2012

Как починить Windows Update?

Эта статья объединяет известные мне способы починки агента WSUS.

Ранее, я уже писал, как сверить список компьютеров, которые есть в AD с теми, которые есть во WSUS. Если эти списки не совпадают, то у вас проблема и часть компьютеров не обновляется.

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

Итак, политика применяется, но все равно компьютер не обновляется. Что делать и как лечить?

Если у вас Windows Vista, Windows Server 2008, Windows 7 или Windows Server 2008 R2, то самым первым способом будет скачать с сайта Microsoft утилиту System Update Readiness Tool и запустить ее. Если это не поможет, то нижу приведены различные способы, которые могут помочь вам восстановить работоспособность.

(more…)

29.05.2012

Управление firewall Windows из командной строки

Command Prompt В процессе настройки Windows Server часто приходится производить манипуляции с его брандмауэром. Открывать порты, давать доступ программам и т.д. Чтобы чего-то не забыть, ну или просто для написания скриптов могут пригодиться следующие команды netsh.
  • Узнать текущие свойства конфигурации Windows Firewall:

netsh advfirewall firewall show rule name=all

  • Включить или выключить firewall:netsh advfirewall set allprofiies state on
    или
    netsh advfirewall set allprofiles state off

(more…)

Следующая страница →

Создайте бесплатный сайт или блог на WordPress.com.