Блоґ одного кібера

Історія хвороби контуженого інформаційним вибухом

Віддалене керування Windows з Python

with 8 comments

А хтось за допомогою пітона навчився керувати мікрохвильовкою.

А хтось за допомогою пітона навчився керувати мікрохвильовкою.

Зараз я знаю два способи робити це за допомогою WinRM – реалізації компанією Microsoft відкритого протоколу WS-Management (Якщо точніше то не WS-Management, а MS-WSMV але то надто тонкі деталі).

Перший спосіб – синхронна бібліотека нашого співвітчизника Алексея Діяна pywinrm. Другий – асинхронна бібліотека американського виробництва яка називається txwinrm, де tx означає Twisted. Плюс першої в тому, що з її коду я зліпив приклад виклику команди на віддаленому хості менш ніж за 300 рядків коду, замінивши urllib2 на requests. Думаю якщо ще трохи розберусь на дозвіллі – зліплю ще менший приклад і продокументую його маючи нормальний компактний опис нутрощів протоколу MS-WSMV.

А на роботі я маю проблеми з конфігурацією користувача для отакого віддаленого керування, але з адміністратором все працює після виконання на сервері звичайного winrm quickconfig.

Advertisements

Written by bunyk

Квітень 24, 2014 at 20:52

Оприлюднено в Кодерство

Tagged with ,

Відповідей: 8

Subscribe to comments with RSS.

  1. Гм… Дуже цікаво, але навіщо керувати віддалено вікнами з пайтона?

    patlatus

    Квітень 25, 2014 at 11:01

    • Ну бо Python стоїть на кожному лінуксі. Не ставити ж на нього віртуалку з Windows лише для того аби віддалені Powershell сесії робити?

      bunyk

      Квітень 25, 2014 at 12:43

      • Гм, ну це як кому. У тебе що, лінукс на основній машині стоїть? Бо в мене все навпаки. Лінукс чи МакОсь я запускаю з віртуалки, а на основній машині в мене стоїть вінда.
        І не зовсім розумію навіщо тобі віддалені Powershell сесії робити, якщо в тебе ніде нема вінди, наскільки я розумію

        patlatus

        Квітень 25, 2014 at 12:51

        • Вдома лінукс, на роботі 35 машин + хмара на AWS, для кожної задачі своя. 🙂

          Так, я теж не розумію нащо Powershell там де ніде нема вінди. Але якщо вінда десь таки є (а досвід показує що вона таки існує і дуже часто зустрічається), то Powershell дуже корисний. 🙂

          bunyk

          Квітень 25, 2014 at 13:14

          • Я думав, що ти програміст по пайтону, а скидається на те, що ти швидше сисадмін, який з дому вирішує, якому з 35 компів ламатися, як у відомому анекдоті?
            Чи ти не сисадмін, але якщо так, то навіщо тобі аж 35 машин – чи це не зажирно? 🙂

            patlatus

            Квітень 25, 2014 at 13:21

            • Та просто майстер на всі руки. 🙂 35 – не зажирно, ми пишемо дуже жирний продукт. 🙂

              bunyk

              Квітень 29, 2014 at 10:02

          • І ще одне, я точно знаю, що принаймні для вінди існують безліч способів, точніше, як мінімум декілька стандартних вбудованих у вінду способів як рімоут декстоп, і ще крім того, якісь кастомні солушини, якими я колись давно, ще на другій роботі користувався, щоб доступитися до робочої машини з дому через інтернет, хоча вже забув, як вони називалися, після того, як на третій роботі видали ноутбук і сказали, що можна його брати додому.
            Вірю в те, що для лінукса теж мусить існувати якийсь стандартний підхід чи спосіб як керувати віддалено іншими компами, чи ти не вигадуєш велосипед? Чи ще справді ніхто не виклав ніде готового інструменту, аби з лінукса адмініструвати віддалені віндовс-машини?

            patlatus

            Квітень 25, 2014 at 13:25

            • Існують. Але з чого ви взяли що цей – не стандартний? Якраз навпаки – те про що я тут пишу, це стандарт WS-MAN, від організації Distributed Management Task Force (до якої входить і Microsoft), яка саме стандартами віддаленого керування й займається.

              bunyk

              Квітень 29, 2014 at 10:07


Залишити відповідь

Заповніть поля нижче або авторизуйтесь клікнувши по іконці

Лого WordPress.com

Ви коментуєте, використовуючи свій обліковий запис WordPress.com. Log Out / Змінити )

Twitter picture

Ви коментуєте, використовуючи свій обліковий запис Twitter. Log Out / Змінити )

Facebook photo

Ви коментуєте, використовуючи свій обліковий запис Facebook. Log Out / Змінити )

Google+ photo

Ви коментуєте, використовуючи свій обліковий запис Google+. Log Out / Змінити )

З’єднання з %s

%d блогерам подобається це: