• Цифровая подпись, быстрый курс (перевод 17 главы Powershell in depth)

    • Tutorial
    настолько хорошо, лаконично и практично написано что не удержался и перевел.
    — Powershell in depth Don Jones Richard Siddaway

    Глава 17.3.1 Цифровая подпись, ликбез
    Уже несколько лет Microsoft продвигает идею подписи кода как механизм защиты. Подписанный код несет в себе зашифрованный блок называемый цифровая подпись. Эта подпись содержит в себе информацию идентифицирующую подписывающего, и дает уверенность что код не был изменен с момента подписи. С практической точки зрения подпись говорит что (А) кто подписал приложение, (Б) оно не было изменено с момента подписания. Любые проблемы с приложением могут таким образом переложить отвественость на распространяющую сторону, а информация в сертификате помогает выйти на нее.
    Цифровая подпись не предотвращает распространение вредного кода. Но в идеале, только экстремально тупой человек поставит свою цифровую подпись на вредоносе, потому что подпись позволяет выйти на подписывающего. Такова идея в идеале.
    Читать дальше →
  • Сброс зависших RDP сессий

      Всем у кого в хозяйстве есть терминальные сервера на Windows приходится сталкиваться с зависшими сессиями.
      Сессии частенько зависают, если пользователь просто закрыл окно терминала.
      Естественно, все мы настраиваем параметры сброса сессий по времени и отключению пользователя, но бывает что сессии все равно не завершаются и тогда мы используем команды: qwinsta — просмотр сессий и rwinsta — сброс сессий
      Абсолютно уверен что скриптик, который сам отслеживает и сбрасывет зависшие сессии, написали многие, но не выложили в сеть потому что это просто, я выложу для тех кто ищет и кому это нужно прямо сейчас:

      Скрипт получает список сессий qwinsta, выбирает сессии со статусом Диск ("*ЁбЄ*" — это тоже «Диск», просто в кривой кодировке, добавлено на всякий случай) и rwinsta сбрасывает сесии.
      В скриптике rwinsta — закомментирована, чтоб сессии сбрасывались раскомментируйте.
      В текущем виде скрипт просто покажет вам зависшие сессии.
      Читать дальше →
      • +7
      • 39,2k
      • 8
    • Пересылка больших файлов. Автоматическое получение ссылки для скачивания на почту

      Пользователям достаточно часто приходится заниматься пересылкой больших файлов как внутри локальной сети, так и за её пределы. К примеру, Пьеро нужно выслать Мальвине документацию объёмом 10 гигабайт. Тут на помощь не придет корпоративная почта, так как пользователи обычно не хотят заморачиваться с копированием ссылок и т.п. Если они в одной локальной сети, то поможет расшаренная папка, а если они на разных концах страны… Как правило, приходится пользоваться FTP-сервером, что зачастую не очень удобно, либо интернет-сервисами обмена большими файлами.

      Так пришла идея создать удобный и контролируемый сервис для пересылки больших файлов в локальной сети.

      Реализация на PowerShell, платформа Windows.

      Требования:

      • Веб сервер опубликованный в интернет.
      • Расшаренная папка на компьютере под Windows (для определения владельца файла).
      • Настройка на сервере с шарой выполнения скрипта по расписанию, раз в минуту.

      Как это работает:

      • Пользователь помещает ZIP архив в расшаренную папку на сервере.
      • Скрипт ищет ZIP-файлы в расшаренной папке и перемещает их в папку веб-сервера, затем отправляет письмо Владельцу файла.
      • Пользователю приходит письмо со ссылкой на скачивание файла через ваш веб-сервер.
      • Пользователь пересылает письмо со ссылкой на скачивание адресату.

      Читать дальше →
    • Удаление/восстановление Metro-приложений в Windows 10



      Как бы не было много сторонников старых версий ОС, все же пришла пора переходить на Windows 10. В связи с этим предлагаю разобраться с предустановлеными Metro-приложениями. Согласитесь, мало кто будет использовать абсолютно все приложения, которые навязывает нам корпорация. Ведь большинство из них просто занимают место, а кого-то вообще раздражают. В этой статье я поделюсь с вами способом, которым можно «почистить» систему от именно таких — ненужных — приложений на Windows 10.
      Читать дальше →
    • Оптимизация работы со строками в Powershell

      Вводная: с данной заметке описывается как получить ускорение в 5-10 (и более раз) при обработке большого количества строк используя вместо String объект StringBuilder.

      Вызов конструктора System.Text.StringBuilder:

      $SomeString = New-Object System.Text.StringBuilder
      

      Обратное преобразование в String:

      $Result = $Str.ToString()
      
      Читать дальше →
      • +8
      • 11,5k
      • 3
    • Серверное администрирование. Управление ресурсами средствами PowerShell

      Доброго времени суток.

      Сегодня нашему администратору потребовалось отслеживать на сетевых ресурсах, сколько Гб использовали сотрудники в своих личных каталогах (дисковое пространство выделено путем подключения сетевого диска). Предполагаем, что предельно допустимый размер личного ресурса равен 1 Гб. В случае если этот размер превышает предел, необходимо сообщить администратору. Также необходимо контролировать резкое увеличение размеров личных ресурсов. Например, если личный каталог сотрудника увеличивается в размере на 200 Мб за неделю, то необходимо оповестить администратора.

      Читать дальше →
    • Аудит безопасности на сервере. Поиск по жураналу безопасности. Power Powershell

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

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

      Первым делом необходимо было определить список событий, которые необходимо было отслеживать. Чтобы уменьшить количество текста, я создала процедуру, которая по ID события выдает ее описание:
      Читать дальше →
      • +8
      • 14,5k
      • 8
    • Практическое использование Desired State Configuration для Windows Server 2012 R2



        Администраторам Linux: это статья о “Puppet” для Windows, и уже есть бета-версия DSC для Linux.
        Для тех, кто в теме: не будет ничего о новинках PowerShell 5.0, только о том, что доступно из “коробки” Windows Server 2012 R2.


        Преамбула


        В 2013 году с выходом Windows Server 2012 R2 компания Microsoft сообщила о появлении Powershell Desired State Configuration (DSC).

        К этому моменту я более или менее представлял, что делают подобные системы для Linux (например, уже упомянутый Puppet). Поэтому, предложенные возможности мне показались недостаточными для полной автоматической настройки системы. И только недавние сообщения о готовящемся Powershell 5.0 и о новых возможностях DSC побудили меня снова обратить внимание на эту технологию.

        Чтобы разобраться, я выдумал задачку попроще:

        • Пусть, есть некий клиент, который хочет самостоятельно установить разработанное нами ASP.NET приложение на своем сервере. Кроме IIS, нам нужен MS SQL Server, а также требуется сделать некоторые настройки операционной системы и установить какие-нибудь важные утилиты.

        Можно ли вместо инструкции по установке и настройке выдать некий конфигурационный скрипт, который сделает все что требуется на только что установленном Windows Server 2012 R2?

        Для лучшего понимания этой статьи, наверное, предварительно стоит прочесть описание в блоге Microsoft — http://habrahabr.ru/company/microsoft/blog/253497/.
        Подробнее о результатах эксперимента...
        • +9
        • 17,5k
        • 4
      • Мониторинг IP в блэклистах с помощью Zabbix

        Немного теории


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

        Суть проблемы


        Если ваш IP адрес попал в черный список – адресаты не будут получать ваши электронные письма.

        Попадание IP в публичные спам-базы грозит наступлением корпоративного почтового коллапса. Это неприятно, даже если e-mail адресов на домене всего 5 и всех пользователей можно временно «пересадить» на «обычную» почту на Яндексе или Mail.ru. Но, когда к внутреннему почтовому серверу «приколочены» более 50 ящиков, интегрированных с CRM-системой, проблема приобретает катастрофический характер.

        Решение

        Читать дальше →
        • +11
        • 21k
        • 8
      • Скрипт для подсчета места, занимаемого виртуальными машинами Hyper-V

          Недавно я обнаружил расхождение данных о занимаемом виртуальными машинами дисковом пространстве, отображаемых в консоли System Center Virtual Machine Manager с данными, полученными при помощи Get-SCVirtualMachine и решил выяснить, в чем дело. Данные о занимаемом дисковом пространстве я получал при помощи распространенного командлета Get-SCVirtualMachine. Для этого я использовал цикл, в котором перебирал все виртуальные машины и накапливал размер их дисков в переменной:

          $totalhdd = 0
          $vms =  Get-SCVirtualMachine  #| where {$_.Name -eq "VM Name"} # Для отладки 
          foreach ($vm in $vms) {          
              $totalhdd += ($vm.VirtualHardDisks.Size -as [double]) / 1TB}  
          }
          

          Похожие конструкции многократно тиражируются на форумах technet и во всяких блогах, поэтому сомнений в их корректности у меня не возникало.
          Далее под кат

        Самое читаемое