Форум программистов, компьютерный форум, киберфорум
PowerShell
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/21: Рейтинг темы: голосов - 21, средняя оценка - 4.62
8 / 8 / 2
Регистрация: 19.05.2014
Сообщений: 62

Как запустить скрипт на удаленном сервере без winrm, rpc. Powershell

22.05.2017, 16:14. Показов 4937. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В связи со свирепствующими вирусами появилась задача пере организовать работу скрипт-сервера.
Ранее все работало через WinRM, штатные команды на выполнения блоков скрипта с передачей параметров на ура.
Пример:
Bash
1
Invoke-Command -ComputerName $Server1 -ScriptBlock{Запуск скрипта+передача параметров}
Теперь необходимо реализовать тот же функционал что и был только без WinRm.
1.Логика, Проверочный функционал производиться на Скрипт-Сервере также формируются необходимые параметры для передачи. С этим проблема нет.
2. Как запустить на удаленном клиента скрипт и еще передать ему параметр вот загвоздка.

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

Чтобы было понятнее, на примере.
Задача заархивировать папку на всех серверах локально, не по шаре.

что выполняется на скрипт-сервере:
Объявление переменной где храниться сам архиватор, его параметры запуска, проверка доступности сервера, наличие папки.
Передача этих параметров на клиент.
Клиент должен получить параметры и запустить приложения для архивирование, переложить папки в сеть.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.05.2017, 16:14
Ответы с готовыми решениями:

Запуск скрипта PowerShell на удаленном сервере
Коллеги помогите, появилась задача связанная с запуском скрипта который находиться на удаленном компьютере и надо именно запускать скрипт...

Запустить PowerShell-скрипт как службу
Есть скрипт, он находит некоторый процесс (он в кол. 4 штук) и разбрасывает каждый процесс на каждое ядро. Итого каждый процесс выполняется...

Как запустить приложение с GUI на удаленном сервере?
Собственно есть чисто виндузовое приложение с GUI и его нужно запустить на удаленном сервере с ubuntu. У клиента же стоит виндуз. С...

10
353 / 165 / 61
Регистрация: 01.06.2015
Сообщений: 656
22.05.2017, 19:38
Heartless, эта задача из разряда "Как забить гвоздь, если запретили использовать молоток?"
Цитата Сообщение от Heartless Посмотреть сообщение
Примечание: не хочется на каждом сервере создавать папку с одинаковыми скриптами для их запуска.
А по моему, в сложившейся ситуации, самый адекватный вариант. Копируете скрипт на нужный $Server1, а там его шетдулер запускает и по выполнению удаляет.
0
8 / 8 / 2
Регистрация: 19.05.2014
Сообщений: 62
23.05.2017, 09:04  [ТС]
в этом случае встает вопрос о поддержки.
Сложно поддерживать и держать в голове или реестре на каком сервере что исполняется и какой версии.
в случаи со скрипт сервером сам скрипт унифицирован и подстановка нужных переменных берется из аналитического блока.

Как еще из вариантов думал, оставить где на сетевой шаре скрипт и запускать его от туда.
Либо как через получения полного содержимого
PowerShell
1
 POwershell -command {Get-Contetnt \\Server1\SHare\test.ps1}
Но даже в этом варианте есть вопрос как передать переменные.
0
 Аватар для v_svitere
774 / 423 / 137
Регистрация: 03.06.2009
Сообщений: 1,223
Записей в блоге: 4
23.05.2017, 10:07
Heartless, Так если есть возможность использовать сетевые шары, то можно сделать более рационально.
Сохранить скрипт в сетевой доступности по smb-протоколу и запускать его на удаленных машинах через PSEXEC.
Единственное скрипт должен быть унифицированный, лучше избежать "хардкода" путей, а использовать переменные окружения.
0
 Аватар для volodin661
6686 / 2278 / 347
Регистрация: 10.12.2013
Сообщений: 7,871
23.05.2017, 16:49
по-моему, psexec умеет и без smb заползать на remote-клиента,
a с ключом -c сам копирует туда исполняемый файл( куда можно загнать скрипт),
исполняет его с параметрами и подчищает хвосты.
1
 Аватар для v_svitere
774 / 423 / 137
Регистрация: 03.06.2009
Сообщений: 1,223
Записей в блоге: 4
23.05.2017, 16:55
volodin661, Вполне возможно.
Этот функционал мною пока не изучен)
Если это возможно, это бесспорно наиболее рациональный вариант
0
8 / 8 / 2
Регистрация: 19.05.2014
Сообщений: 62
24.05.2017, 10:35  [ТС]
PSExec мне не нравиться, причина состоит в том, что это надстройка над оболочкой PS.
И не все там работает на прямую, и интуитивно понятно.
Я нашел решение с помощью DSC (Desired State Configuration). Пакет стандартный, и не требует winrm. сейчас тестирую, если кто с ним работал, помогайте.
Как будет решение отпишусь позже.
0
 Аватар для volodin661
6686 / 2278 / 347
Регистрация: 10.12.2013
Сообщений: 7,871
27.10.2017, 05:39
Цитата Сообщение от Heartless Посмотреть сообщение
В связи со свирепствующими вирусами
А что это за вирусы, использующие WinRM ? Конкретно.

Цитата Сообщение от Heartless Посмотреть сообщение
Я нашел решение с помощью DSC (Desired State Configuration). Пакет стандартный, и не требует winrm.
Ага. Такой стандартный ( что за стандарт, кстати ? ), и такой нетребующий, что нуждается в установке
WMF на обоих концах:

“You must have WMF 4.0 on a computer if you plan to author configurations there.
You must also have WMF 4.0 on any computer you plan to manage via DSC.
Every computer involved in the entire DSC conversation must have WMF 4.0 installed. Period. ”

Excerpt From: PowerShell.org. “The DSC Book.”


Теперь давай посмотрим на состав WMF:
  • Windows PowerShell
  • Windows PowerShell Desired State Configuration (DSC)
  • Windows PowerShell Integrated Script Environment (ISE)
  • Windows Remote Management (WinRM)
  • Windows Management Instrumentation (WMI)
  • Windows PowerShell Web Services (Management OData IIS Extension)
  • Software Inventory Logging (SIL)
  • Server Manager CIM Provider


Итак, видим в составе WinRM.

У тебя есть способы после установки выпилить WinRM и гарантировать после этого работоспособность pull-режима DSC ?
0
 Аватар для KDE777
1886 / 1108 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
27.10.2017, 12:31
Цитата Сообщение от Heartless Посмотреть сообщение
PSExec мне не нравиться, причина состоит в том, что это надстройка над оболочкой PS
Что вы называете "оболочкой PS"?

Цитата Сообщение от Heartless Посмотреть сообщение
В связи со свирепствующими вирусами появилась задача пере организовать работу скрипт-сервера.
Ранее все работало через WinRM, штатные команды на выполнения блоков скрипта с передачей параметров на ура.
...
Теперь необходимо реализовать тот же функционал что и был только без WinRm.
Т.е. вы хотите удалённый доступ всё равно оставить, но при этом заменить протокол способный работать по https (используя только один TCP порт) на что-то другое? И в чём смысл? Как уже спрашивал volodin661, не поделитесь информацией об опасностях WinRM?

Обычно такие задачи решают иначе, например есть хост с которого сервера доступны по WinRM, тогда используем vlan'ы, acl'и, firewall'ы, для того чтобы никто кроме этого хоста не смог дергать сервера за WinRM. Плюс ограничиваем доступ к самому хосту с скриптами.

Цитата Сообщение от volodin661 Посмотреть сообщение
по-моему, psexec умеет и без smb заползать на remote-клиента
Inside PsExec

PsExec starts an executable on a remote system and controls the input and output streams of the executable's process so that you can interact with the executable from the local system. PsExec does so by extracting from its executable image an embedded Windows service named Psexesvc and copying it to the Admin$ share of the remote system. PsExec then uses the Windows Service Control Manager API, which has a remote interface, to start the Psexesvc service on the remote system.
0
 Аватар для volodin661
6686 / 2278 / 347
Регистрация: 10.12.2013
Сообщений: 7,871
27.10.2017, 13:58
Ну, чисто теоретически я допускаю возможность того, что после установки на клиенте Powershell 5.1,
в котором уже 'all-inclusive', настройки pull-request для DSC и зажима
WinRM на файрволе, что-то вдруг заработает. Но...но...но...
0
505 / 158 / 49
Регистрация: 27.02.2016
Сообщений: 821
28.10.2017, 05:18
подписывать скрипты и уствервить execution-policy не пробовали ? и не нао будет winrm отключать..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
28.10.2017, 05:18
Помогаю со студенческими работами здесь

Как запустить клиентское приложение на удаленном сервере?
Люди! Помогите советом и вправьте мозги если что :). Вот есть эта технология. Не пожалел денег, купил две книги. Одна - Поля Аллена...

Как запустить скрипт на другом сервере из своего скрипта на своем сервере
Добрый день! Никак не могу сообразить как проще запустить скрипт на другом сервере из скрипта php на своем сервере. Т.е. один сервер...

Как запустить перл-скрипт на сервере?
Здравствуйте. Заранее прошу прощения, т.к. я знаком с линуксом буквально второй день, и в моих действиях будет бред потому, что я совсем...

Как запустить питон-скрипт на сервере?
Недавно написал вк-бота на питоне. Теперь хочу запустить его на сервере, чтобы он работал нон-стоп. Подскажите, как это сделать?

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru