Обновить
14.74

PowerShell *

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

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

«Вроде всё правильно, но не работает»: как я перестал дебажить “на глаз” и собрал evidence-first пайплайн

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели10K

Есть типичная боль: ты вроде всё сделал правильно — контейнеры поднялись, API отвечает, UI открывается… а потом оказывается, что «не работает». Причём не «сломано в пепел», а именно «почти»: где‑то 404, где‑то таймаут, где‑то UI открывается, но вкладки пустые, где‑то один запрос проходит, другой — молчит.

И самое неприятное: когда начинаешь чинить «по ощущениям», можно потратить часы, а потом выяснить, что причина была не в коде, а в порте, origin, IPv6, миграциях или в том, что UI ходит не туда.

Я перестал спорить с реальностью и сделал себе простой подход evidence-first:

Читать далее

Новости

Посадка на Луну

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели13K

Пилотируемая высадка на Луне, запланированная в миссии Artemis III, увы, официально перенесена на 2028 год. NASA столкнулась с эрозией покрытия в ходе миссии Artemis I. К этому добавились задержки Axiom Space со скафандрами AxEMU и технологическая сложность Starship HLS. Последнему необходимо отработать схему для перекачки криогенного топлива на орбите и выполнить беспилотную тестовую посадку.

В статье я постарался разобрать азы теории оптимального спуска, написал скрипт посадки на PowerShell, проанализировал спуск LM-5 Eagle, пилотируемого Нилом Армстронгом, и применил современный метод оптимизации управления G-Fold.

Читать далее

Telegram‑бот для (само)дисциплины на Python: aiogram 3, APScheduler и деплой на VDS

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели8.6K

Привет, Хабр!

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

Что имеем as is - пет‑проект о том, как я с нуля собрал и выкатил в прод Telegram‑бота, который напоминает о фокусе дня, считает выполнения, дает ачивки, мягко мотивирует, работает по таймзонам и крутится на VDS под systemd.

Заценить

IP2Ban для Exchange средствами PowerShell

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели9.7K

Привет! На связи Виктор из Cloud4Y. Хочу поделиться практической историей о том, как сделать fail2ban-подобную механику для Exchange на Windows: быстрое обнаружение brute-force по IIS-логам и автоматическая блокировка атакующих IP.

Fail2ban и аналоги привычны для Linux, но когда у тебя on-prem Exchange на Windows, нужен свой инструмент для быстрого обнаружения массовых неудачных логинов и такой же быстрой блокировки источника.

Читать далее

Микрофичи, которые хотелось бы шире распространить в языках программирования

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели12K

Большая часть работы по теории языков программирования и проектированию языков программирования касается аспектов (1) и (2), так как именно они наиболее важны, но лично я глубоко увлекаюсь фичами типа (3). Поскольку эти фичи такие мелкие, именно они наиболее активно перетекают из языка в язык, ведь добавить их можно совсем «малой кровью». Сам я много времени провёл за изучением нишевых малопонятных языков, и за этим встречал множество крутых фич из третьей категории — таких, с которыми вы, возможно, никогда не сталкивались. Расскажу о некоторых из них!

Читать далее

Как управлять миром с помощью Nu

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели9.5K

Даже сравнительно простой мир, такой как ArtifactoryMMO, приподносит не мало неожиданностей. Хотя есть много примеров кода для управления этим миром из Javascript и Python, я выбрал более серьезный язык, расчитывая прикрутить туда какие-нибудь интересные алгоритмы машинного обучения. Но все равно слишком часто, по крайней мере при отладке, приходится отдавать отдельные команды и анализировать что получилось вручную. Несмотря на прекрасный REPL в Julia, один из лучших, что мне доводилось использовать, и для отладки своего кода, и просто как калькулятор, здесь это оказалось не очень удобно. Конечно, есть curl и jq, но по эргономичности он тоже не идеален. Не curl-ом единым, удобный HTTP-клиент встроен, например, в PowerShell. Но мне захотелось чего-то нового и прогрессивного, и я решил посмотреть Nu. Эта статья предназначена, чтобы привлечь к этому shell любителей MMO-игр, и заинтересовать MMO-играми пользователей nu-shell, а если повезет, заинтересовать обоими темами тех, кто раньше про них и не знал.

Читать далее

How To: XML-config для хранимых процедур MS SQL — создание, разбор, развёртывание

Уровень сложностиСредний
Время на прочтение23 мин
Охват и читатели6.7K

Всем привет! Меня зовут Александр Гаврилов, я архитектор баз данных и аналитических систем в GRI. Если вы когда-нибудь пытались выполнить одну и ту же операцию с похожими таблицами в разных базах, да ещё и на разных серверах, то знаете, насколько это может быть мучительно.

В этой статье я покажу один из рабочих вариантов, как упростить такую задачу, и заодно расскажу про интересную функцию XQuery, которая может неожиданно помочь.

Читать далее

Ловушки PowerShell: поведение, которое ломает привычные ожидания разработчиков

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели10K

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

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

Читать далее

Обзор неявных возможностей дисковой подсистемы Windows 11

Уровень сложностиСредний
Время на прочтение31 мин
Охват и читатели35K

В своей повседневной жизни мы, как правило, пользуемся только самыми примитивными функциями Windows по работе с данными. Мы создаём документы, копируем файлы, переименовываем каталоги и делаем множество других операций, доступных на расстоянии пары кликов в стандартном интерфейсе Windows.

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

В этой статье мы поговорим о таком функционале Windows, как виртуальные жёсткие диски, ссылки, точки повторной обработки (reparse points), расширенные атрибуты (extended attributes), альтернативные потоки (alternative data streams), теневые копии (volume shadow copy) и кое-чем ещё.

Читать далее

PowerShell: как я написал инструмент, который сэкономил мне кучу времени

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели14K

Часто мы ищем готовые решения, качаем софт, просим доступы — а инструмент уже лежит под рукой. У меня была рутинная задача: проверять учетки пользователей в AD. Когда менялся пароль, есть ли блокировка, не истек ли срок действия. Каждый раз — открыть ADUC, найти учетку, прокликать вкладки. Минута-две на запрос, десять запросов в день — и вот уже часы уходят в никуда.

В какой-то момент я подумал: но ведь есть PowerShell. И написал скрипт, который помогает за секунду получить состояние учетки, дату смены пароля, блокировки, контакты, подразделение. Можно сразу снять временную блокировку. Вдруг и вам пригодится.

Посмотреть, что за скрипт

Нажми и забудь: как автоматизировать рутину с PowerShell и GUI

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели15K

Нажми и забудь: как автоматизировать рутину с PowerShell и GUI

Это руководство пригодится всем, кто устал от рутины и хочет сделать свои PowerShell-скрипты доступными для коллег: системным администраторам, инженерам технической поддержки, DevOps-специалистам. Мы не только разберем основы создания кнопок и окон, но и ответим на ключевые вопросы: Как выбрать между WinForms и WPF, как избежать зависания интерфейса при выполнении долгих операций, и как удобно упаковать ваш скрипт в EXE или ярлык, чтобы любой сотрудник мог запустить его одним кликом.

Читать далее

Делаем PowerShell более удобным: настройка PsReadLine

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели11K

Привет, Хабр! Часто ли Вам приходится в сотый раз нажимать стрелку вверх в PowerShell для поиска нужной команды? Или, может быть, не замечать случайные опечатки в длинном пути? Сегодня мы превратим стандартную консоль в удобный инструмент с автодополнением и поиском по истории с помощью модуля PsReadLine, а главное - добавим нормальные функции Copy/Paste. Я поделюсь с Вами готовым конфигом, который сделает ежедневную работу в консоли быстрее и приятнее.

Читать далее

Как я свою работу в техподдержке Powershell'ом упрощал

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели7.2K

Попробую описать свой опыт автоматизации своей (и коллег) работы на 1-ой линии техподдержки внутренних сотрудников.

Было дано: домен MS AD, около 4-5 тыс компьютеров сотрудников под управлением Win7-10. Задачей нашей группы поддержки было получение заявок от сотрудников и решение их проблем в процессе подключения к их рабочему столу (MSRA или Dameware) или без подключения (если это возможно).

Читать далее

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

Решение для автоматизированной установки сетевых принтеров в гетерогенной среде

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели9.6K

Готового решения найти не удалось, так что, поехали что-то делать кривыми ручками.

Но для начала, что имеем?

Офис на 300 человек и очень разношёрстный парк техники, MacOS, GNU/Linux и конечно Windows 10 и 11. Для первых двух развернут Cups а вот для вторых он не подходит, не буду распинаться почему :-)...

6 принтеров:
- 3шт. Kyocera ECOSYS M3145dn
- 1шт. Kyocera ECOSYS M4132idn
- 1шт. HP PageWide 377dw MFP
- 1шт. HP LaserJet MFP M426fdn
- 1шт. Kyocera ECOSYS MA4000cix

Для начала накидал кратко то, что собираюсь реализовать (aka ТЗ):

- Желание подключать пользователям Win принтера в один клик, а лучше чтобы этот клик и вовсе они сами делали;
- Ставится принтер должен с понятным именем для конечного пользователя
- Подключение по TCP/IP;
- И самое главное - Использование оригинальных драйверов производителя, во избежание каких либо конфликтов с форматом и для доступа к более широкому спектру настроек.

Придумалось следующее решение...

Читать далее

Делегирование прав локального админа Windows — Систематизация и автоматизация

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели9.8K

Привет, Хабр! Меня зовут Иван Мороз, я системный администратор в BPMSoft. В нашей компании существовала проблема с контролем прав локального администратора на сотнях корпоративных ноутбуков. Ручной учет через Excel или стандартные GPO оказалось неэффективным, а ошибки могли приводить к проблемам с безопасностью и операционным рискам.

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

Читать далее

JEA + PowerShell Remoting: Принцип минимальных привилегий в проде без боли (Windows Server 2019/2022)

Уровень сложностиСредний
Время на прочтение18 мин
Охват и читатели6.3K

Привет, Хабр! Сегодня мы поговорим о боли. О той самой боли, которая возникает в 3 часа ночи, когда звонит дежурный инженер и говорит, что «всё лежит». Веб-приложение не отвечает, а единственный способ что-то сделать — это дать ему RDP-доступ на сервер с правами локального, а то и доменного администратора. И всё это ради одной единственной задачи: перезапустить пул приложений в IIS.

Знакомая ситуация? Мы даем избыточные права, потому что это быстро и просто. Мы даем «ключ от всего города», чтобы человек мог открыть одну дверь. В этот момент мы открываем ящик Пандоры: случайная ошибка, запущенный по незнанию скрипт, а в худшем случае — скомпрометированная учетная запись, которая становится для злоумышленника плацдармом для захвата всей инфраструктуры.

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

Но что, если я скажу вам, что этот выбор — ложный? Что существует технология, встроенная в Windows Server, которая позволяет нам совместить гранулярную безопасность, полный аудит и удобство автоматизации? Технология, которая превращает администрирование из «искусства» в точную инженерную дисциплину.

Имя ей — Just Enough Administration (JEA), и в связке с PowerShell Remoting она способна кардинально изменить ваш подход к управлению серверами.

Эта статья — не просто теоретический обзор. Это пошаговое, выстраданное на практике руководство по внедрению JEA в реальной продакшен-среде на Windows Server 2019/2022. Мы пройдем весь путь: от понимания фундаментальных принципов до создания, развертывания и использования защищенных конечных точек (endpoints), решая по пути реальные проблемы.

Читать далее

Автоматическая выдача сертификатов пользователям через GPO

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели6.7K

В корпоративной среде часто возникает задача раздать сертификаты ЭЦП всем сотрудникам. Стандартные методы certutil и Import-PfxCertificate не всегда работают: приложения вроде СБИС не видят такие сертификаты. В статье рассказываю, как автоматизировать распространение с помощью PowerShell и GPO — с заменой SID, импортом в реестр и копированием файлов.

Читать далее

О том, как я приручил Wi‑Fi с помощью PowerShell и чуть‑чуть ИИ

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели11K

Дома и в командировках меня раздражали внезапные «тихие» обрывы Wi‑Fi. Хотелось, чтобы система сама возвращала подключение, но не спорила со мной, если я сознательно нажал «Отключить Wi‑Fi». И чтобы всё было прозрачно: логи, автозапуск, минимум магии.

Разбор решения

Получаем Fullchain-сертификат с помощью PowerShell

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели10K

Всем привет! Меня зовут Мороз Иван, я Системный администратор и в этой статье расскажу как автоматизировать получение Fullchain — сертификата при помощи PowerShell, OpenSSL и NET Framework.

Читать далее

Книга: «Изучаем скриптинг PowerShell за месяц, занимаясь один час в день. 2-е изд»

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

Привет, Хаброжители! Скрипты PowerShell можно писать для автоматизации практически любых административных задач в Windows, Linux и macOS. Эта книга покажет вам как! Всего за 27 коротких уроков, каждый из которых можно выполнить менее чем за час, вы научитесь создавать, тестировать и публиковать скрипты и инструменты, которые помогут сэкономить часы рабочего времени. «Изучаем скриптинг PowerShell за месяц» — практическое руководство по автоматизации PowerShell и созданию инструментов. Этот тщательно переработанный бестселлер, обновленный до последней версии PowerShell, научит вас писать эффективные скрипты, находить и устранять ошибки и организовывать свои инструменты в библиотеки.

Читать далее
1
23 ...