Как стать автором
Обновить
4.18

PowerShell *

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

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

Вышла первая превью-версия Microsoft PowerShell 7.1 для Windows, Linux и macOS

Время на прочтение3 мин
Количество просмотров7.3K
Компания Microsoft выпустила новую превью-версию PowerShell 7.1 — средства для автоматизации работы и языка сценариев для Windows, Linux и macOS. Эта версия содержит в себе возможности, которых не было в PowerShell 7.0. Общедоступная версия PowerShell 7.0, которой предшествовала платформа PowerShell Core 6.x, выпущена в начале Марта сего года.



Превью PowerShell 7.1 включает в себя новые модули и инструменты, над которыми работает команда PowerShell. Но нет гарантии того, что всё это попадёт в обычный выпуск PowerShell 7.1, который должен выйти через неделю или две после выхода платформы .NET 5. Это так из-за того, что, начиная с PowerShell 7.0, Microsoft согласует выход новых версий PowerShell с расписанием выхода новых версий .NET.
Читать дальше →

Что такое Windows PowerShell и с чем его едят? Часть 3: передача параметров в скрипты и функции, создание командлетов

Время на прочтение9 мин
Количество просмотров42K


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

Представляем PowerShell 7.0

Время на прочтение4 мин
Количество просмотров19K
Сегодня мы рады объявить о выпуске общедоступной (GA) версии PowerShell 7.0! Прежде всего, мы хотели бы поблагодарить наших многочисленных контрибьюторов за то, что сделали этот выпуск возможным, поделившись кодом, тестами, документацией и отзывами о проблемах. PowerShell 7 не был бы возможен без вашей помощи.



Что такое PowerShell 7?


Для новичков, PowerShell 7 является последним крупным обновлением PowerShell, кросс-платформенного (Windows, Linux и macOS) инструмента автоматизации и инфраструктуры конфигурации, оптимизированной для работы со структурированными данными (например, JSON, CSV, XML и т. д.), REST API и объектными моделями. PowerShell включает оболочку командной строки, объектно-ориентированный язык сценариев и набор инструментов для выполнения сценариев/командлетов и управления модулями.
Читать дальше →

Что такое Windows PowerShell и с чем его едят? Часть 2: введение в язык программирования

Время на прочтение11 мин
Количество просмотров78K
Исторически утилиты командной строки в Unix-системах развиты лучше чем в Windows, однако с появлением нового решения ситуация изменилась.

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

Windows Terminal Preview v0.9

Время на прочтение3 мин
Количество просмотров14K
Состоялся релиз 0.9 версии Windows Terminal. Это последняя версия Терминала, которая будет включать в себя новые функции до выхода v1. Вы можете загрузить Windows Terminal из Microsoft Store или со страницы выпусков на GitHub. Давайте подробнее рассмотрим детали обновления!

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

Выкупать — так королеву: Varonis расследует быстро распространяющийся шифровальщик-вымогатель “SaveTheQueen”

Время на прочтение5 мин
Количество просмотров9.6K


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

Наши заказчики столкнулись с этим вредоносом недавно. Приводим наш полный анализ, его результаты и выводы ниже.
Читать дальше →

Что такое Windows PowerShell и с чем его едят? Часть 1: основные возможности

Время на прочтение8 мин
Количество просмотров400K
Исторически утилиты командной строки в Unix-системах развиты лучше чем в Windows, однако с появлением нового решения ситуация изменилась.

Windows PowerShell позволяет системным администраторам автоматизировать большинство рутинных задач. С ее помощью можно менять настройки, останавливать и запускать сервисы, а также производить обслуживание большинства установленных приложений. Воспринимать синее окошко как еще один интерпретатор команд было бы неправильно. Такой подход не отражает сути предложенных корпорацией Microsoft инноваций. На самом деле возможности Windows PowerShell гораздо шире: в небольшом цикле статей мы попробуем разобраться, чем решение Microsoft отличается от более привычных нам средств.


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

Выбор архиватора для бэкапа логов

Время на прочтение11 мин
Количество просмотров8.7K

Всем привет!


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


Подразделение, в котором я работаю, занимается разработкой и сопровождением единой фронт офисной системы Банка. Я отвечаю за ее сопровождение, мониторинг и DevOps.


Наша Система — это высоконагруженное приложение, ежедневно обслуживающее более 5 000 уникальных пользователей. На сегодняшний день — это «монолит» со всеми своими достоинствами и недостатками. Но сейчас активно идет процесс выноса функционала в микросервисы.


Ежедневно наша система генерирует более 130 ГБ «сырых» логов и, несмотря на то, что мы используем ENG стек (Elasticsearch Nxlog Graylog), файловые логи содержат гораздо больше информации (например, stack trace ошибок), поэтому требуют архивирования и хранения.


Так как место хранения ограничено, встаёт вопрос: «А какой архиватор лучше всего справится с этой задачей».


Для решения этого вопроса я написал скрипт на языке PowerShell, который произвел анализ за меня.

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

Функциональный Powershell с классами — не оксюморон, я гарантирую это

Время на прочтение6 мин
Количество просмотров6.5K

Привет, Хабр! Представляю вашему вниманию перевод статьи "Functional PowerShell with Classes.
I promise it’s not an oxymoron"
автора Christopher Kuech.


Объектно-ориентированная и функциональная парадигмы программирования могут казаться не в ладах друг с другом, но обе в равной мере поддерживаются в Powershell. Практически все программные языки, функциональные и нет, имеют средства расширенного связывания имён и значений; Классы, подобно struct-ам и record-ам, это всего лишь один подход. Если мы ограничим использование Классов связыванием имён и значений и станем избегать таких "тяжёлых" объектно-ориентированных программных концепций, как наследование, полиморфизм, или изменяемость (mutability), мы сможем использовать их преимущества, не усложняя наш код. Далее, добавляя неизменяемые (immutable) методы преобразования типов, мы можем обогатить Классами наш функциональный код.


Магия кастов


Касты одна из самых мощных фич в Powershell. Когда вы подвергаете значение касту, вы полагаетесь на добавляемую средой в ваше приложение возможность неявных инициализации и валидации. Например, простой каст строки в [xml] прогонит её через код парсера и сгенерирует полное дерево xml. Мы можем в своём коде использовать Классы с той же целью.

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

Telegram-бот для управления инфраструктурой

Время на прочтение26 мин
Количество просмотров75K
image

По мотивам статьи Телеграмм-бот для системного администратора (статья не моя, я только прочитал) захотел поделиться опытом создания Telegram-бота на PowerShell для управления серверами приложений. Будет текст, код и немножко картинок. Конструктивная критика приветствуется ( главное чтобы не звучало «зачем на PowerShell? Надо было на perl» ).

Думаю что статья больше подойдет «новичкам» в PowerShell, но и опытные администраторы могут что-то полезное здесь увидеть.

Саму статью старался построить по частям – от простого к сложному. Возможно, встретится плагиат, будьте бдительны!

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

  • Простота добавления/изменения задач в Telegram-бот
  • Многозадачность или параллелизация
  • «Понятный» интерфейс управления
  • Хоть какая-то безопасность
Читать дальше →

Пытаемся автоматизировать процессы с помощью Powershell

Время на прочтение4 мин
Количество просмотров26K

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

В этом руководстве рассмотрим несколько крутых по мнению автора команд и расскажем почему это круто. Начнем со снипетов.
Читать дальше →

Мой нереализованный проект. Сеть из 200 маршрутизаторов MikroTik

Время на прочтение8 мин
Количество просмотров26K


Всем привет. Данная статья рассчитана на тех, у кого в парке находится много устройств микротик, и кому хочется сделать максимальную унификацию, чтобы не подключаться на каждое устройство в отдельности. В этой статье я опишу проект, который, к сожалению, не дошел до боевых условий из-за человеческих факторов. Вкратце: более 200 маршрутизаторов, быстрая настройка и обучение персонала, унификация по регионам, фильтрация сетей и определенных хостов, возможность легкого добавления правил на все устройства, логирование и контроль доступа.
Читать дальше →

Делаем один проект плагина с компиляцией под разные версии Revit/AutoCAD

Время на прочтение13 мин
Количество просмотров12K


При разработке плагинов для САПР приложений (в моем случае это AutoCAD, Revit и Renga) со временем появляется одна проблема – выходят новые версии программ, меняется их API и нужно делать новые версии плагинов.


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


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

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

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

Масштабное назначение прав на пользователей доменов из разных лесов

Время на прочтение4 мин
Количество просмотров6.6K
Видимо у меня карма такая: реализовывать стандартные задачи всякими нетривиальными способами. Если у кого-то окажется другое видение проблемы — прошу в обсуждение, для проработки вопроса.

Одним прекрасным утром появилась интересная задача раздать права группам пользователей на разные шары, содержащие подпапки проектов с папками документов. Все было хорошо и был написан скрипт назначающий права на папки. А затем выяснилось, что группы должны содержать пользователей разных доменов, из разных лесов (для тех кто забыл что это). Допустим, сама шара, размещается на носителе Synology, зарегистрированном в домене FB, леса PSI. Задача: разрешить пользователям доменов другого леса иметь доступ к содержимому данной шары, причем очень избирательно.
Читать дальше →

Hyper-V для разработчиков под Windows 10

Время на прочтение6 мин
Количество просмотров71K
Hyper-V более известен как технология виртуализации серверов; однако, начиная с Windows 8, он также доступен в клиентской операционной системе. В Windows 10 мы значительно улучшили работу, сделав Hyper-V отличным решением для разработчиков и ИТ-специалистов.
 
Microsoft Hyper-V, кодовое название Viridian, — это нативный (тип 1) гипервизор, который, в отличие от VMware Workstation, VirtualBox и других гипервизоров типа 2, работает непосредственно на оборудовании. Впервые он был выпущен в Windows Server 2008 и позволяет запускать виртуальные машины в системах x86-64.

Hyper-V позволяет разработчикам быстро разгонять виртуальные машины для разработки на Windows 10 с превосходной производительностью, но он также используется в нескольких других функциях разработки в качестве серверной технологии, например, в таких как эмулятор Android, подсистема Windows для Linux 2 (WSL2) или контейнеры Docker. В этой статье мы кратко рассмотрим, как Hyper-V в Windows 10 может помочь разработчикам.
Читать дальше →

Порядок в фотоархиве средствами powershell

Время на прочтение3 мин
Количество просмотров8.2K
Привет, Хабр!

На днях возникла типовая задача — помочь знакомой превратить гору фотографий в упорядоченную иерархию. Всё бы ничего, но гор фотографий не одна, а две — на Mac и на ноуте под Win10. В поисках решения, наткнулся на несколько сценариев для linux, а вот чего-то такого кроссплатформенного найти не удалось. Будем писать сами — прошу под кат.
Читать дальше →

Использование PowerShell для сбора информации об инциденте

Время на прочтение5 мин
Количество просмотров8.2K
PowerShell достаточно распространенное средство автоматизации, которое часто используется, как разработчиками вредоносных программ, так и специалистами по информационной безопасности.
В данной статье будет рассмотрен вариант использования PowerShell для удаленного сбора данных с конечных устройств при реагировании на инциденты ИБ. Для этого потребуется написать скрипт, который будет запускаться на конечном устройстве и далее будет подробное описание данного скрипта.
Читать дальше →

О разных тиках замолвите слово или как не получить ошибку в Powershell при работе с Get-Date

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров3.6K
Доброго дня, любители Powershell.

Я люблю его, и сегодня заметил одну странность, которая мотивировала к написанию данного поста. Думаю, вам тоже будет интересно. Дело о лишнем тике. Если интересно, добро пожаловать под кат:
Читать дальше →

PowerShell в роли инструмента для пентеста: скрипты и примеры от Varonis

Время на прочтение7 мин
Количество просмотров14K


Хакеры любят использовать PowerShell для запуска «fileless malware» — бестелесных вредоносных программ, которые не являются традиционными бинарными файлами с компилированным вредоносным кодом, и по этой причине подчас не могут быть обнаружены антивирусными решениями.

PowerShell, конечно же, всегда имел вполне нормальное предназначение, никак поначалу вообще не связанное с тестированием на проникновение. Те из вас, кто захочет узнать предысторию появления на свет PowerShell, должны почитать знаменитый Манифест Монады. Написанный одним из первоначальных разработчиков, этот манифест объясняет, зачем Microsoft потребовался новый язык описания сценариев (проще говоря, скриптов), который в конечном итоге и превратился в PowerShell.
Читать дальше →

Интегрируем команды Linux в Windows с помощью PowerShell и WSL

Время на прочтение8 мин
Количество просмотров19K
Типичный вопрос разработчиков под Windows: «Почему здесь до сих пор нет <ВСТАВЬТЕ ТУТ ЛЮБИМУЮ КОМАНДУ LINUX>?». Будь то мощное пролистывание less или привычные инструменты grep или sed, разработчики под Windows хотят получить лёгкий доступ к этим командам в повседневной работе.

Подсистема Windows для Linux (WSL) сделала огромный шаг вперёд в этом отношении. Она позволяет вызывать команды Linux из Windows, проксируя их через wsl.exe (например, wsl ls). Хотя это значительное улучшение, но такой вариант страдает от ряда недостатков.
Читать дальше →