Обновить
28.43

PowerShell *

Расширяемое средство автоматизации от Microsoft

Сначала показывать
Порог рейтинга
Уровень сложности

Встречаем третий PowerShell (часть I)

Время на прочтение5 мин
Охват и читатели14K
Темпы развития современных технологий таковы, что мы за ними еле-еле поспеваем. Но сегодня мы забежим чуть-чуть вперед, узнаем о новшествах PowerShell v3, причем оглядим их не только глазами, но и пощупаем руками.
Читать дальше →

Сам себе DynDNS или реализация Managed DNS посредством PowerShell

Время на прочтение2 мин
Охват и читатели15K
На улице сейчас прекрасные солнечные дни, так что большую часть своего времени я стал проводить вне своего дома с широким каналом, а где-нибудь в парке с нетбуком и 4g модемом. Это несомненно лучше для моего здоровья, но, тем не менее, большие файлы скачивать все-таки хочется, так что пришлось искать варианты способов для организации доступа в мою домашнюю сеть извне. Замечу сразу, что мой провайдер выдает своим пользователям динамические белые IPv4 адреса (к счастью, при вводе в эксплуатацию IPv6 необходимость в такого рода извращениях автоматически пропадет).
Читать дальше →

PowerShell: Перемешиваем файлы

Время на прочтение2 мин
Охват и читатели2.4K
Доброго времени суток, %habrauser%!
Недавно мне подкинули довольно простенькую на первый взгляд задачку: Надо перемешать около 1000 фотографий для системы голосований.
Вручную заниматься этим — дело неблагодарное. Нужен какой-нибудь миленький скрипт.
PowerShell оказался идеальным вариантом: ставить что-то стороннее вроде python не хотелось, а с .bat файлами я за свою жизнь так и не подружился.
Читать дальше →

Скрипт для развертывания SSRS отчетов

Время на прочтение4 мин
Охват и читатели3.5K
Во многих проектах требуется инсталляционный скрипт либо пакет, который выполняет обновление серверной части приложения. Необходимость, в первую очередь, обусловлена отсутствием прямого доступа к производственному серверу у разработчиков.
Инсталлятор в виде скрипта лучше всего подходит для установки без явного входа на сервер (RDP). Также скрипт может быть выполнен в виде одного загрузчика, который и выполнит все остальное. В текущих проектах мы реализовали что-то наподобие PsGet[1], только для внутреннего билд-сервера.
Приложение большое и состоит из ряда компонентов, одним из которых является модуль отчетности, построенный на базе SSRS.
Подробности реализации

Потерянная группа. Выясняем назначение «странных» групп в AD

Время на прочтение5 мин
Охват и читатели13K
Доброе время суток, хабраграждане!

Спешу с Вами поделиться одной из своих вещиц, которые были призваны облегчить работу мне, как системного администратора, который разбирается в, доставшимся ему по наследству, хламе в Active Directory.
Самые проблемные из доставшегося добра, по моему мнению, это группы. О них и пойдет речь в данной статье.
А именно: заходим в Active Directory, бороздим просторы подразделений и видим группы, совершенно с безликими названиями (например Ugin, Vassa, Opel, www etc) и без описания. Внимание вопрос: определите для чего нужны эти группы.
Читать дальше →

Как подписать свой первый скрипт за 48 часов

Время на прочтение3 мин
Охват и читатели41K

Проблема


Когда задача, требующая решения, небольшая, совсем не хочется писать для её решения отдельную утилиту, особенно, если ты — .NET-программист.
Скрипт? Однозначно, да, но ставить на боевую машину под управлением Windows сторонний интерпретатор совсем уж не по-христиански. Так почему бы не воспользоваться Windows Powershell? Готов сразу честно признаться: практически никакого опыта с ним не было, но уж больно заманчиво выглядел.
Скрипт, решающий задачу, был готов через 15 минут, если не учесть одно «но». Скриптом пока назвать это было сложно, потому что это был набор инструкций, непригодный для выполнения в виде скрипта. Непригодный, с точки зрения PowerShell.
Читать дальше →

Синхронизируем контакты между лесами

Время на прочтение12 мин
Охват и читатели11K
В ходе деятельности любой организации, у нее возникают и исчезают временные союзники, она дружит и разрывает дружбу с партнерами, она реорганизуется, поглощает другие организации и наоборот, разделяется на несколько. С точки зрения ИТ часто возникает необходимость в создании общих ресурсов, доверительных отношений между лесами Active Directory, в налаживании vpn-туннелей сеть-сеть и прочих «объединительных» процедурах. Ниже я рассмотрю одну такую процедуру, копирование контактных сведений о пользователях чужого доверенного домена.
Читать дальше →

Teamviewer, powershell и циска

Время на прочтение4 мин
Охват и читатели34K
Поставили мне тут задачку прикрыть доступ посредством софтины Teamviewer к нашей сети извне. Предыстория вопроса немного грустная – исторически сложилось, что таким образом программер-подрядчик удалённо подключался к серверу с базами 1С. Да, всё неправильно и сложно, и попытки что-то изменить как технически, так и организационно, натыкались на противодействие бухгалтерии. Но речь не об этом, а о блокировке этого самого Teamviewer’а.

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



Ну что ж, ставим рядом два компа, устанавливаем на них Teamviewer’ские программулины – чтобы вживую сразу видеть, получается или нет.
Читать дальше →

Актуализируем учетные данные Active Directory

Время на прочтение10 мин
Охват и читатели86K
Многие помнят то чувство, когда компания расширяется до тех размеров, когда рабочих групп недостаточно, и поднимается первый домен Active Directory: «О, уж теперь-то все будет как следует!» Ан нет, домен потихонечку разрастается, создаются новые учетки, блокируются старые, добавляются, удаляются компьютеры, девушки выходят замуж, меняют фамилии и, в конце концов, база данных службы каталогов выглядит, как полный швах. В этом топике мы наладим связь между базой Active Directory и кадровой системой предприятия, а также создадим механизм для поддержания данных сотрудников в AD в актуальном состоянии.
С чего начать?

Ошибка 80040154 при работе с WebAdministration

Время на прочтение3 мин
Охват и читатели3.6K
Мне нравится время от времени писать на PowerShell. В основном это задачи администрирования и развертывания. В этой заметке я хочу рассказать о решении одной интересной проблемы связанной с работой модуля WebAdministration. Итак, суть проблемы: при выполнении любого командлета из этого модуля возникает ошибка:

Cannot retrieve the dynamic parameters for the cmdlet.
Retrieving the COM class factory for component with CLSID {688EEEE5-6A7E-422F-B2E1-6AF00DC944A6} failed due to the following error: 80040154.
Читать дальше →

HelpDesk под колпаком. Аудит создания учетных записей пользователей в AD

Время на прочтение4 мин
Охват и читатели20K
Всех приветствую.

Еще только в начале своего познания профессии системного администратора мой начальник поведал мне о такой профессии (вернее ее направлении) как дизайнер AD. Эти люди наводят порядок в домене и приводят в порядок учетные записи. Кто с этим сталкивался и возился может понять то раздражение, которое вызывают корявые имена учетных записей, созданных каким-нибудь сотрудником, который чихал на твой порядок.
Взяв в руки PowerShell мы дали им бой!
Читать дальше →

Меняем цвета в PowerShell

Время на прочтение3 мин
Охват и читатели28K
Совершено недавно открыл для себя эту оболочку. Тут же полез искать книги, которые, кстати, уже перевели и их можно взять отсюда. И все вроде бы хорошо, и код пишется легко и интеграция с vsb-скиптами, но, почему то, тянет меня к мастдайным окнам.

И так, было решено перекрасить окошко PowerShell в стандартный цвет cmd и параллельно настроить автозапуск собственных функций и алиасов. Так же, слегка, напрягало предложения ввода с надписью — PS, которое, совместно с цветом, напоминает лого Adobe Photoshop ( Ничего против Adobe не имею ).

Итак, информация следом исключительно для новичков.
Читать дальше →

Инвентаризация компьютеров в домене. Лень-двигатель прогресса

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

Ближайшие события

Использование PowerShell для администрирования Microsoft SQL Server

Время на прочтение3 мин
Охват и читатели33K
В одном посте невозможно описать все возможности, появившиеся после введения поддержки Window Powershell в Microsoft SQL Server, однако этим постом я постараюсь показать хотя бы часть этих возможностей. В состав SQL Server, начиная с версии SQL Server 2008, входят две оснастки:
  1. Поставщик (Provider) SQL Server, предоставляющий простой механизм навигации – «внутри» SQL Server, можно использовать команды dir, ls, cd, Set-Location, Get-Location и т.д.;
  2. Набор командлетов для указания действий SQL Server (например, выполнение скрипта sqlcmd).

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

Чем это может быть полезно для администратора?

Читать дальше →

PowerShell: машина vs человек

Время на прочтение2 мин
Охват и читатели4.3K
Некоторое время назад мне досталась по наследству ферма терминальных серверов. И руководство поставило мне задачу — искоренить skype, chrome, firefox и mail.ru агентов на всех терминальных серверах. Исторически сложилось так, что в компании используются тонкие клиенты и лишь у привилегированных пользователях есть полноценный ПК, и там разрешены вышеперечисленные программы, а на терминалах — ни-ни.

image

Читать дальше →

Особенности национальной автоматизации MS Excel

Время на прочтение6 мин
Охват и читатели15K
Ни для кого не секрет, что существуют программы, которые прекрасно работают с английской «культурой» и начинают «глючить», когда дело касается национальных «культур». При ближайшем рассмотрении выяснилось, что офисная программа MS Excel как раз из этого числа. Как обойти некоторые «особенности» MS Excel и пойдёт речь в этой статье.
Читать дальше →

PowerShell и аудит безопасности

Время на прочтение8 мин
Охват и читатели69K

PowerShell и аудит безопасности



Приветствую хабранарод! Хочу поделится с вами способом, который может облегчить рутинные будни системного администрирования Win системы, с помощью PowerShell.
В один прекрасный день передо мной встала задача повседневного отслеживания активности пользователей, которые используют сервер терминалов в качестве рабочих станций. Думаю я выражу не только свое мнение, сказав что «Просмотр событий» входящий в состав средств администрирования Windows, является не самым удобным средством отслеживания ситуации на сервере. Да там есть фильтр, по которому можно отсеивать только интересующие нас события, но нет удобного способа который меняет формат отображения данной информации. В результате чего и появилась идея с помощью PowerShell осуществлять парсинг событий журнала безопасности.
Читать дальше →

Настройка виндового веб-сервера без RDP

Время на прочтение4 мин
Охват и читатели5.3K
Совсем недавно понадобилось настроить очередной веб-сервер. Как раз в это время у меня было весеннее обострение PowerShell. В общем, в качестве небольшой разминки, я решил настроить веб-сервер без RDP.
Читать дальше →

Как же все-таки пользоваться PowerShell?

Время на прочтение3 мин
Охват и читатели43K
Навеяно q&a: Как воспроизвести mp3 из командной строки в Windows 7?

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

Когда то в Windows XP использовал для этой задачи простейшую утилиту mplay, хоть и GUI но планировщиком задач нормально запускается, но в Windows 7 удалили его и даже sndrec32. Запускать монстроуозный wmplayer считаю глупостью, поэтому приходится обращаться к скриптовым языкам.

Примеры однострочных скриптов на vbs для windows scripting host можно нарыть в интернете, вот простейший пример:
Set oVoice = CreateObject("SAPI.SpVoice")
set oSpFileStream = CreateObject("SAPI.SpFileStream")
oSpFileStream.Open "c:\Windows\Media\tada.wav"
oVoice.SpeakStream oSpFileStream
oSpFileStream.Close

Кстати, это чудо, что код заработал на windows 7, так как по сравнению с windows xp ряд activex объектов исчезло (типа WMPlayerClass) и никто не знает, когда исчезнет или как изменится класс SAPI, да и не дело это, микроскопом гвозди забивать. Поэтому это решение считаю неправильным и не логичным, да и отмирает ActiveX потихоньку, вполне логично убиваемый .NET окружением.
Попробуем решить задачу с помощью PowerShell

Run as administrator из командной строки

Время на прочтение2 мин
Охват и читатели197K
Вчера я некоторое время потратил на то, чтобы запустить скрипт из командной строки от имени администратора. Мне нужен был эквивалент right-click > «Run as administrator»:


Читать дальше →