نحوه راه اندازی گوشی های هوشمند و رایانه های شخصی پرتال اطلاعاتی
  • خانه
  • خطاها
  • نحوه اتصال خط فرمان یک کامپیوتر از راه دور PsExec - ابزاری برای اجرای فرمان از راه دور

نحوه اتصال خط فرمان یک کامپیوتر از راه دور PsExec - ابزاری برای اجرای فرمان از راه دور

ابزارهایی مانند Telnet و نرم افزارهای مدیریت از راه دور مانند Symantec's PC Anywhere به شما این امکان را می دهند که برنامه ها را بر روی سیستم های راه دور اجرا کنید، اما نصب آنها آسان نیست زیرا شما همچنین باید نرم افزار مشتری را روی سیستم های راه دوری که می خواهید به آن دسترسی داشته باشید، نصب کنید. PsExec یک نسخه سبک وزن از Telnet است. این امکان را به شما می دهد تا با استفاده از تمام قابلیت های رابط تعاملی برنامه های کنسول، بدون نیاز به نصب دستی نرم افزار مشتری، فرآیندها را بر روی سیستم های راه دور اجرا کنید. مزیت اصلی PsExec توانایی فراخوانی تعاملی CLI در سیستم های راه دور و اجرای از راه دور ابزارهایی مانند IpConfig است. این تنها راه برای نمایش اطلاعات مربوط به سیستم راه دور بر روی صفحه کامپیوتر محلی است.

توجه داشته باشید. برخی از اسکنرهای آنتی ویروس گزارش می دهند که یک یا چند مورد از این برنامه ها به ویروس "Remote Admin" آلوده شده اند. هیچ یک از برنامه های موجود در PsTools حاوی ویروس نیستند، اما توسط ویروس ها استفاده می شدند که منجر به این هشدارها می شود.

نصب و راه اندازی

فقط برنامه PsExec را در پوشه اجرایی کپی کنید. هنگامی که فرمان psexec را صادر می کنید، دستور دستور دستور help نمایش داده می شود.

PsExec بر روی Windows Vista، NT 4.0، Win2000، Windows XP و Server 2003، از جمله نسخه های سیستم عامل 64 بیتی اجرا می شود.

استفاده

مقاله ای از مارک روسینوویچ در شماره جولای 2004 مجله Windows IT Pro، روش های اضافی کار با این برنامه را شرح می دهد. PsExec.

استفاده: psexec [\\ کامپیوتر [, computer2 [, ...] | @file] [- u user [-p رمز عبور]] [- ns] [- l] [- s | -e] [- x] [- i [جلسه]] [- c [-f | -v]] فهرست [-w] [- d] [-<приоритет>] [- یک n، n، ...] برنامه [استدلال]

کامپیوتر

به PsExec دستور می دهد تا برنامه را روی رایانه یا رایانه های مشخص شده اجرا کند. اگر نام رایانه مشخص نشده باشد، PsExec برنامه را در سیستم محلی راه اندازی می کند، اما اگر یک ستاره (\\ *) برای نام رایانه مشخص شده باشد، PsExec برنامه را روی همه رایانه های موجود در دامنه فعلی راه اندازی می کند.

@فایل

به PsExec دستور می دهد تا برنامه را در تمام رایانه های فهرست شده در فایل متنی مشخص شده اجرا کند.

پردازنده هایی که می توان برنامه را روی آنها اجرا کرد با کاما از هم جدا می شوند و پردازنده ها از 1 شروع می شوند. به عنوان مثال، برای اجرای برنامه روی پردازنده های دو و چهار، "-a 2,4" را وارد کنید.

برنامه مشخص شده برای اجرا در سیستم راه دور کپی می شود. اگر این پارامتر مشخص نشده باشد، برنامه باید در پوشه سیستم سیستم راه دور قرار گیرد.

نشان می دهد که منتظر تکمیل برنامه نباشید. این پارامتر فقط باید هنگام اجرای برنامه های غیر تعاملی استفاده شود.

نمایه حساب مشخص شده بارگیری نشده است.

برنامه مشخص شده در سیستم راه دور کپی می شود، حتی اگر چنین فایلی از قبل در سیستم راه دور وجود داشته باشد.

برنامه در حال راه اندازی به دسکتاپ جلسه مشخص شده در سیستم راه دور دسترسی پیدا می کند. اگر هیچ جلسه ای مشخص نشده باشد، فرآیند در جلسه کنسول اجرا می شود.

هنگامی که فرآیند شروع می شود، به کاربر حقوق محدودی اعطا می شود (حقوق گروه Administrators لغو می شود و به کاربر فقط حقوق اختصاص داده شده به گروه کاربران اعطا می شود). در ویندوز ویستا، فرآیند با سطح امنیتی پایین شروع می شود.

به شما امکان می دهد تاخیر برای اتصال به رایانه های راه دور (در چند ثانیه) را تنظیم کنید.

به شما امکان می دهد یک رمز عبور اختیاری برای نام کاربری تعیین کنید. اگر این پارامتر حذف شود، از شما خواسته می شود رمز عبور را وارد کنید و رمز عبور روی صفحه نمایش داده نمی شود.

فرآیند راه دور از حساب سیستم شروع می شود.

به شما امکان می دهد یک نام کاربری اختیاری برای ورود به سیستم راه دور تعیین کنید.

فایل مشخص شده تنها در صورتی که شماره نسخه آن بیشتر یا جدیدتر باشد به جای فایل موجود در سیستم راه دور کپی می شود.

به شما امکان می دهد دایرکتوری کاری را برای فرآیند (مسیر داخل سیستم راه دور) مشخص کنید.

رابط کاربری را روی دسکتاپ Winlogon (فقط سیستم محلی) نمایش می دهد.

-اولویت(اولویت)

به شما امکان می‌دهد اولویت‌های مختلفی را برای فرآیند تنظیم کنید: -کم (کم)، -زیر نرمال (زیر میانگین)، -بیش از نرمال (بالاتر از میانگین)، -بالا (بالا) یا -زمان واقعی (زمان واقعی).

برنامه

نام برنامه ای که باید اجرا شود.

استدلال ها

آرگومان های ارسال شده (توجه داشته باشید که مسیرهای فایل باید به عنوان مسیرهای محلی در سیستم هدف مشخص شوند).

از علامت نقل قول برای تعیین نام برنامه ای که حاوی فاصله است، استفاده کنید، به عنوان مثال psexec \\ marklap "c: \ longname \ app.exe". داده های وارد شده با فشار دادن کلید "Enter" به سیستم از راه دور منتقل می شود؛ برای تکمیل فرآیند از راه دور، باید کلید ترکیبی Ctrl-C را فشار دهید.

اگر نام کاربری مشخص نشده باشد، فرآیند راه دور از همان حساب برنامه PsExec شروع می شود. با این حال، از آنجایی که فرآیند از راه دور جعل هویت است، به منابع شبکه سیستم راه دور دسترسی نخواهد داشت. اگر یک نام کاربری مشخص شده باشد، فرآیند از راه دور از حساب مشخص شده راه اندازی می شود و به همان منابع شبکه در سیستم راه دور مانند این حساب دسترسی پیدا می کند. توجه داشته باشید که رمز عبور به صورت متن واضح به سیستم راه دور ارسال می شود.

هنگام دسترسی به سیستم محلی، این نسخه از PsExec را می توان به جای Runas استفاده کرد زیرا PsExec به حقوق مدیر نیاز ندارد.

نمونه هایی از

این دستور رابط خط فرمان تعاملی را در سیستم \\ marklap فراخوانی می کند:

psexec \\ marklap cmd

این دستور برنامه IpConfig را در سیستم راه دور با پارامتر / all شروع می کند و داده های دریافتی را در صفحه سیستم محلی نمایش می دهد:

psexec \\ marklap ipconfig / all

این دستور برنامه test.exe را در سیستم راه دور کپی کرده و به صورت تعاملی اجرا می کند.

psexec \\ marklap -c test.exe

اگر چنین برنامه ای از قبل بر روی سیستم راه دور نصب شده است و در دایرکتوری سیستم نیست، مسیر کامل این برنامه را مشخص کنید.

psexec \\ marklap c: \ bin \ test.exe

این دستور برنامه Regedit را به صورت تعاملی از حساب سیستم اجرا می کند تا کلیدهای رجیستری SAM و SECURITY را مشاهده کند:

psexec -i -d -s c: \ windows \ regedit.exe

این دستور برای فراخوانی اینترنت اکسپلورر به عنوان یک کاربر محدود استفاده می شود:

psexec -l -d "c: \ فایلهای برنامه \ اینترنت اکسپلورر \ iexplore.exe"

وظیفه انجام برخی عملیات با استفاده از خط فرمان در رایانه دیگری به وجود آمد، البته، برای راه اندازی خط فرمان به کاربر بروید و دستورات را تایپ کنید - روش ما نیست، ما باید خط فرمان رایانه راه دور را بدون بلند شدن شروع کنیم. از صندلی و اقدامات لازم را در خط فرمان انجام دهید. البته، چنین عملی را می توان با استفاده از برنامه های اتصال از راه دور انجام داد، اما این همیشه راحت نیست و شما و کاربر را ملزم به داشتن یک برنامه مشابه (کلاینت-سرور) می کند. روش اتصال به خط فرمان یک کامپیوتر دیگر را می توان به سادگی با استفاده از دستور انجام داد PSEXEC.

PsExecیک ابزار خط فرمان با قابلیت فراخوانی تعاملی رابط خط فرمان در سیستم های ویندوز راه دور و اجرای دستورات مختلف از راه دور است.

این ابزار فقط بر روی رایانه مدیر قابل نصب است. برای نصب، باید آن را دانلود کنید، این لینک آن است سایت رسمی مایکروسافت ... پس از دانلود بایگانی، باید آن را از حالت فشرده خارج کنید، فایل PsExec.exe را در پوشه زیپ نشده پیدا کنید. روی آن دو بار کلیک کنید، یک پنجره با یک توافقنامه مجوز ظاهر می شود، روی " کلیک کنید موافق".

بیایید نحو دستور را تجزیه و تحلیل کنیم:

psexec [\\ کامپیوتر [، کامپیوتر2 [، ...] | @file] [- u user [-p رمز عبور]] [- ns] [- l] [- s | -e] [- x] [- i [جلسه]] [- c [-f | -v]] فهرست [-w] [- d] [-<приоритет>] [- یک n، n، ...] برنامه [استدلال]

کامپیوتربه PsExec دستور می دهد تا برنامه را روی رایانه یا رایانه های مشخص شده اجرا کند. اگر نام رایانه مشخص نشده باشد، PsExec برنامه را در سیستم محلی راه اندازی می کند، اما اگر یک ستاره (\\ *) برای نام رایانه مشخص شده باشد، PsExec برنامه را روی همه رایانه های موجود در دامنه فعلی راه اندازی می کند.

@فایلبه PsExec دستور می دهد تا برنامه را در تمام رایانه های فهرست شده در فایل متنی مشخص شده اجرا کند.

پردازنده هایی که می توان برنامه را روی آنها اجرا کرد با کاما از هم جدا می شوند و پردازنده ها از 1 شروع می شوند. به عنوان مثال، برای اجرای برنامه روی پردازنده های دو و چهار، "-a 2,4" را وارد کنید.

برنامه مشخص شده برای اجرا در سیستم راه دور کپی می شود. اگر این پارامتر مشخص نشده باشد، برنامه باید در پوشه سیستم سیستم راه دور قرار گیرد.

نشان می دهد که منتظر تکمیل برنامه نباشید. این پارامتر فقط باید هنگام اجرای برنامه های غیر تعاملی استفاده شود.

-eنمایه حساب مشخص شده بارگیری نشده است.

برنامه مشخص شده در سیستم راه دور کپی می شود، حتی اگر چنین فایلی از قبل در سیستم راه دور وجود داشته باشد.

-منبرنامه در حال راه اندازی به دسکتاپ جلسه مشخص شده در سیستم راه دور دسترسی پیدا می کند. اگر هیچ جلسه ای مشخص نشده باشد، فرآیند در جلسه کنسول اجرا می شود.

هنگامی که فرآیند شروع می شود، به کاربر حقوق محدودی اعطا می شود (حقوق گروه Administrators لغو می شود و به کاربر فقط حقوق اختصاص داده شده به گروه کاربران اعطا می شود). در ویندوز ویستا، فرآیند با سطح امنیتی پایین شروع می شود.

-nبه شما امکان می دهد تاخیر برای اتصال به رایانه های راه دور (در چند ثانیه) را تنظیم کنید.

به شما امکان می دهد یک رمز عبور اختیاری برای نام کاربری تعیین کنید. اگر این پارامتر حذف شود، از شما خواسته می شود رمز عبور را وارد کنید و رمز عبور روی صفحه نمایش داده نمی شود.

-sفرآیند راه دور از حساب سیستم شروع می شود.

-uبه شما امکان می دهد یک نام کاربری اختیاری برای ورود به سیستم راه دور تعیین کنید.

-vفایل مشخص شده تنها در صورتی که شماره نسخه آن بیشتر یا جدیدتر باشد به جای فایل موجود در سیستم راه دور کپی می شود.

-wبه شما امکان می دهد دایرکتوری کاری را برای فرآیند (مسیر داخل سیستم راه دور) مشخص کنید.

-ایکسرابط کاربری را روی دسکتاپ Winlogon (فقط سیستم محلی) نمایش می دهد.

-اولویت(اولویت) به شما امکان می دهد اولویت های مختلفی را برای فرآیند تنظیم کنید: -کم (کم)، -زیر نرمال (زیر میانگین)، -بیش از حد معمول (بالاتر از میانگین)، -بالا (بالا) یا -زمان واقعی (زمان واقعی).

برنامهنام برنامه ای که باید اجرا شود.

استدلال هاآرگومان های ارسال شده (توجه داشته باشید که مسیرهای فایل باید به عنوان مسیرهای محلی در سیستم هدف مشخص شوند).

نمونه هایی از کار تیمی PSEXEC:

1) برای شروع خط فرمان یک کامپیوتر دیگر، باید وارد شوید
psexec \\<имя компьюетра>cmd

مثلا:
psexec \\ WIN782 cmd


سپس می توانید دستورات مورد نیاز خود را وارد کنید.

2) برای اجرای هر برنامه ای (در این مثال test.exe) بر روی کامپیوتر راه دور، باید دستور را اجرا کنید (این دستور برنامه test.exe را در سیستم راه دور کپی می کند و آن را در حالت تعاملی اجرا می کند).

psexec \\<имя компьютера>-c test.exe

مثلا:
psexec \\WIN782-c test.exe

3) اگر چنین برنامه ای از قبل بر روی سیستم راه دور نصب شده است و در دایرکتوری سیستم نیست، مسیر کامل این برنامه را مشخص کنید.

psexec \\ WIN782 c: \ temp \ test.exe

این درس نشان خواهد داد چگونه یک فایل را از طریق خط فرمان در ویندوز حذف کنیم(7، 8، XP، Vista). دستورات DEL یا ERASE به این امر کمک خواهند کرد، که زمانی استفاده می شوند که نمی توانید فایل را به روش معمول حذف کنید. زیرا، DEL و ERASE کار نمی کنند.

طبیعتا برای شروع. با این عمل بهترین نتیجه را خواهید گرفت.

اگر از این درس استفاده کنید، فایل بلافاصله بدون ارسال به سطل زباله حذف خواهد شد.

در cmd DEL / را وارد کنید؟ و Enter را فشار دهید تا پیش نمایش پارامترهای فرمان را مشاهده کنید. اگر به درستی انجام شود، توضیحی را مشاهده خواهید کرد (عکس زیر).

استفاده از cmd هنگام بوت کردن ویندوز

گاهی اوقات لازم است قبل از راه اندازی سیستم به cmd بروید. با توجه به اینکه یک برنامه مخرب ورود موفقیت آمیز را مسدود می کند یا بخش بوت سیستم آسیب دیده است، مراحل زیر به شما کمک می کند:

  1. هنگام بوت شدن ویندوز، Command Prompt را باز کنید
  2. در cmd وارد کنید DiskPartو enter را بزنید
  3. بعد، باید حجم لیست را بنویسید و دوباره اینتر را فشار دهید (تصویر زیر را ببینید). با این کار می‌توانید حرف درایوی را که می‌خواهید فایل را حذف کنید، ببینید.
  4. وقتی از شما خواسته شد exit را تایپ کرده و Enter را بزنید.

حالا با خیال راحت گزینه های مربوط به دستورات حذف را که در زیر توضیح داده شده اند وارد کنید.

با انجام این کار، با استفاده از خط فرمان، فایل های موجود در رایانه خود را حذف خواهید کرد.

حذف یک فایل خاص

برای حذف یک عنصر خاص، باید نام و پسوند آن را بدانید. در غیر این صورت، احتمال حذف چیز اشتباه افزایش می یابد!

در cmd دستور زیر را وارد کرده و enter را بزنید:

DEL / F / S / Q / A "عنصر مسیر کامل با پسوند"

به عنوان مثال، اگر بخواهم با نام "حذف" و با پسوند (.bat) موجود در درایو C در پوشه "سطل زباله" حذف کنم، باید این دستور را وارد کنم:

DEL / F / S / Q / A "C: \ garbage \ delete.bat"

تمام فایل ها را با یا بدون تایید از خط فرمان حذف کنید

در این حالت، باید اقدامات را با حروف (Y - yes / N - no) تأیید یا رد کنید تا همه پرونده‌های موجود در فهرست اصلی و زیر پوشه‌ها حذف شوند.

برای تایید، از نحو زیر استفاده کنید:

DEL / F / S / Q / A "مسیر کامل به پوشه \ *"

اگر بخواهم تمام فایل‌های درایو D را از پوشه "in the trash" که شامل بسیاری از فهرست‌ها و فایل‌های دیگر است حذف کنم، از دستور استفاده می‌کنم:

DEL / F / S / Q / A "D: \ افزودن به سبد خرید \ *"

به منظور. واسه اینکه. برای اینکه حذف فایل از خط فرمان با تایید، / P به پارامترها اضافه می شود و به شکل زیر است:

DEL / P / F / S / A "D: \ آزمایش \ *"

این امکان وجود دارد که همه فایل‌های با پسوند مشخص را حذف کنید، سپس دستور به شکل زیر در می‌آید:

DEL / F / S / Q / A "مسیر کامل به پوشه \ *. پسوند"

این به ویژه زمانی مفید است که بسیاری از عناصر غیر ضروری از یک نوع وجود داشته باشد، که گزینه ای برای تکرار دستی نیستند، اما می توانند به سادگی به صورت دسته ای از cmd حذف شوند.

با رویکرد درست، شما می توانید حذف فایل از طریق خط فرمان، در چند ثانیه امیدوارم که توصیه ها مفید بوده باشد. اگر به cmd علاقه مند هستید، به شما توصیه می کنم که با مطالب آن آشنا شوید که کمتر جالب نخواهد بود.

  • مدیریت سرور،
  • مدیریت سیستم ،
  • اصطلاحات فناوری اطلاعات
  • امروزه حتی برای سگ ها با کنترل از راه دور آمد .


    با بازگشت به چرخه "خلاصه مدیر"، می خواهم در مورد گزینه های راه اندازی برنامه های اجرایی در رایانه های راه دور صحبت کنم. این مقاله برای کسانی جالب خواهد بود که هنوز سیستم های مدیریت متمرکز ندارند، اما قبلاً درک خسته کننده ای از دور زدن ایستگاه های کاری و سرورها به صورت دستی دارند. یا کسانی که علاقه ای به راه حل های "کلید در دست" ندارند، زیرا آنها غیرورزشی هستند.


    در مورد اینکه چرا به چنین راه اندازی برنامه ها نیاز است، می توان به هیستری اخیر با Petya / Not-Petya اشاره کرد، زمانی که همه برای بررسی / غیرفعال کردن و دانلود به روز رسانی ها عجله داشتند. بله، و همچنین می توان با استفاده از این روش، یک موجودی انجام داد یا یک پچ فوری نصب کرد.


    روزی روزگاری در جریان همه گیری Kido \ Conficker در یک سازمان کار پیدا کردم. ساده ترین راه برای فهمیدن اینکه آیا همه چیز در IP این شرکت خوب است، یک ابزار باشکوه از Kaspersky به نام Kido Killer بود که وجود یک ویروس را بررسی می کرد و آن را از بین می برد. اجرای برنامه روی صدها دستگاه با دست جالب نبود، بنابراین مجبور شدم با اتوماسیون آشنا شوم.

    اگر در سیستم عامل * nix SSH معمولاً برای راه اندازی از راه دور استفاده می شود، روش های ویندوز برای راه اندازی برنامه ها و اسکریپت ها واقعاً مانند شن و ماسه در بیابان است. من گزینه های اصلی را، هم شناخته شده و هم عجیب و غریب، تجزیه و تحلیل خواهم کرد. من به چیزهای واضحی مانند سرور تلنت دست نخواهم داد، به خصوص که مایکروسافت قبلاً آن را از سیستم عامل های مدرن حذف کرده است.

    روش‌ها قدیمی و آزمایش‌شده هستند

    Psexec

    شاید این اولین چیزی است که هنگام اجرای برنامه ها از راه دور به ذهن می رسد. ابزار Mark Russinovich از زمان ویندوز NT استفاده شده است و هنوز هم در حال استفاده است. علاوه بر عملکرد اصلی، می توانید از آن هم به عنوان Runas و هم برای راه اندازی برنامه ها در جلسه کاربر یک سرور ترمینال استفاده کنید. Psexecهمچنین به شما اجازه می دهد تا هسته های پردازنده ای را که برنامه روی آنها اجرا می شود و اولویت آن در سیستم را تنظیم کنید.


    به عنوان مثال، بیایید ببینیم آیا به‌روزرسانی نصب شده است که آسیب‌پذیری بدنام SMB را در لیست رایانه‌ها برطرف کند:


    psexec @ computers.txt / u USER / p PASS cmd.exe / v / c "" systeminfo | "KB4012212" را پیدا کنید || نام کامپیوتر! >> \\ سرور \ اشتراک \ log.txt "" "

    فایل computers.txt حاوی لیستی از کامپیوترها است. می توانید از \\ * برای اجرا در کل دامنه استفاده کنید. فایل \\ server \ share \ log.txt حاوی نام ایستگاه های کاری یا سرورها بدون به روز رسانی است. اگر رایانه هایی با * nix در دامنه موجود باشد یا به منبع شبکه مدیریتی دسترسی نداشته باشید ادمین $- فرمان روی این ماشین اجرا نمی شود، اما پردازش ادامه می یابد. برای جلوگیری از یخ زدن اسکریپت هر بار که سعی می‌کنید وصل شوید، می‌توانید با استفاده از کلید یک بازه زمانی تعیین کنید -n.


    اگر کامپیوتر خاموش باشد، ما از آن خبر نخواهیم داشت. بنابراین، بهتر است از قبل در دسترس بودن ماشین ها را بررسی کنید یا اطلاعات موفقیت یا شکست را در یک فایل جمع آوری کنید.


    با معایب Psexecمی توان آن را به این واقعیت نسبت داد که به دلیل راحتی و محبوبیت آن اغلب توسط ویروس نویسان استفاده می شود. بنابراین، سیستم های ضد ویروس می توانند ابزار را به عنوان یک تهدید مدیریت از راه دور شناسایی کنند.


    به‌طور پیش‌فرض، فرآیند روی دستگاه راه دور به‌عنوان کاربری اجرا می‌شود که Psexec را راه‌اندازی کرده است. در صورت لزوم، نام کاربری و رمز عبور را می توان به صراحت تنظیم کرد یا می توانید از حساب SYSTEM استفاده کنید.

    Wmic

    WMI (Windows Management Instrumentation)، پیاده سازی استاندارد مدیریت شی گرا WBEM، اغلب برای مدیریت سیستم های ویندوز با استفاده از ابزارهای گرافیکی مختلف استفاده می شود. می توانید از wbemtest.exe به عنوان یک ابزار رابط کاربری گرافیکی برای کار با WMI استفاده کنید.


    برای کار با WMI از کنسول ایجاد شده wmic.exe... به عنوان مثال، برای بررسی به‌روزرسانی‌های نصب‌شده، به‌جای ساختار creepy از مثال قبلی، می‌توانید از یک دستور ساده استفاده کنید:


    wmic / node: "نام سرور" qfe get hotfixid | "KB4012212" را پیدا کنید

    همچنین می‌توانید از فهرست رایانه‌ها با دستور /node:"@computers.txt" استفاده کنید.


    شما همچنین می توانید برنامه ها را با استفاده از WMI اجرا کنید - نحو بسیار ساده است:


    wmic / node: فراخوانی فرآیند "نام سرور" ایجاد "cmd / c somecommands"

    متأسفانه، برخلاف Psexec، نمی‌توانید خروجی را در کنسول دریافت کنید - باید نتایج فرمان را در یک فایل خروجی بگیرید.


    به‌طور پیش‌فرض، فرآیند روی دستگاه راه دور به‌عنوان کاربری که wmic را شروع کرده است اجرا می‌شود. در صورت لزوم، نام کاربری و رمز عبور را می توان به صراحت تنظیم کرد.

    خط مشی ها و اسکریپت های گروه

    اگر گزینه های قبلی به محیط دامنه نیاز نداشتند، در این حالت یک دامنه مورد نیاز است. اسکریپت ها زمانی که کاربر وارد سیستم می شود و از آن خارج می شود و همچنین زمانی که سیستم روشن و خاموش می شود پشتیبانی می شود. از آنجایی که هر مدیر ویندوز با آنها برخورد کرده است، نحوه استفاده از آنها را با جزئیات توضیح نمی دهم - فقط به شما یادآوری می کنم که کجا آنها را جستجو کنید.



    اسکریپت هایی که هنگام راه اندازی و خاموش شدن سیستم اجرا می شوند.



    اسکریپت هایی که هنگام ورود و خروج کاربر اجرا می شوند.


    اسکریپت های پیکربندی شده در بخش کاربر از طرف کاربر و در بخش کامپیوتر - تحت حساب SYSTEM اجرا می شوند.

    وظایف زمانبندی شده

    روشی کاملاً جالب که مستحق حق زندگی است. کارهای برنامه ریزی شده را می توان از خط فرمان با استفاده از ابزار ایجاد کرد schtasks.exe، آنها را اجرا کنید، سپس حذف کنید. جزئیات بیشتر در مورد نحو را می توان در مستندات یافت، اما من نمونه ای از استفاده از وظایف زمان بندی شده در یک محیط دامنه را تجزیه و تحلیل خواهم کرد. فرض کنید باید دستوری را در سریع ترین زمان ممکن اجرا کنیم، صرف نظر از اینکه کامپیوتر خاموش است یا خیر. برای این کار، به اصطلاح Group Policy Preferences استفاده می شود.


    به دنبال نصب وظایف برنامه ریزی شده در پیکربندی رایانه یا کاربر باشید - "تنظیمات - تنظیمات پنل کنترل - وظایف برنامه ریزی شده".



    ایجاد یک کار برنامه ریزی شده جدید.


    برای اجرای یک دستور یا اسکریپت ASAP، باید یک "وظیفه فوری (ویندوز 7 و بالاتر)" ایجاد کنید. اگر ناگهان ماشین‌هایی در زیرساخت وجود داشته باشند که ویندوز XP را اجرا می‌کنند، «کار بعدی (ویندوز XP)» انجام می‌شود.


    ارزش دارد چندین خط مشی با فیلترهای WMI مناسب ایجاد کنید یا دو وظیفه برنامه ریزی شده مختلف را در یک خط مشی هدف گذاری ایجاد کنید - به عنوان مثال، با استفاده از فیلتر WMI یکسان. این به جلوگیری از درگیری در یک محیط ناهمگن با ویندوزهای قدیمی و جدید کمک می کند.


    نمونه ای از فیلتر WMI برای اعمال این خط مشی فقط برای رایانه های دارای ویندوز XP:


    انتخاب * از Win32_OperatingSystem که در آن نسخه مانند "5.1%" و ProductType = "1"

    بقیه مراحل برای ایجاد یک کار برنامه ریزی شده بی اهمیت است. تنها نکته، فراموش نکنید که اگر کار نیازی به راه اندازی مجدد ندارد، مورد "یک بار اعمال کنید و دوباره درخواست نکنید" را علامت بزنید.



    وظیفه فوری را فقط یک بار اجرا کنید.


    با این وظایف برنامه ریزی شده، به محض دریافت به روز رسانی Group Policy، برنامه شروع به کار می کند. این راحت است: شما نیازی به بررسی در دسترس بودن رایانه ها در مورد Psexec و wmic ندارید و کاربران را مجبور می کنید که دستگاه های خود را راه اندازی مجدد کنند، مانند اسکریپت های Group Policy. در صورت لزوم، می توانید فایل اسکریپت را به صورت محلی در قسمت "تنظیمات - پیکربندی ویندوز - فایل ها" کپی کنید.


    وظایف برنامه ریزی شده به شما امکان می دهد نام کاربری را برای شروع برنامه، از جمله برای SYSTEM، به صراحت تنظیم کنید.

    از طریق ثبت نام

    تغییر رجیستری در ماشین های کاربر یک گزینه عجیب است، فقط در مواقع اضطراری. می توانید از شاخه های Run یا RunOnce استفاده کنید. اطلاعات بیشتر در مورد آنها را در اسناد بخوانید. اصلاح رجیستری را می توان از طریق خط مشی های گروه یا از خط فرمان - به عنوان مثال، با دستور زیر انجام داد:


    reg add \\ COMPUTER \ HKLM \ Software \ Microsoft \ Windows \ CurrentVersion \ RunOnce / v script / t Reg_SZ / d "script.cmd"

    بسته به شعبه رجیستری، این فرآیند یا توسط کاربری که به سیستم وارد شده است یا در حساب SYSTEM اجرا می شود.


    راه های دیگری مانند ویرایش میانبرها در پوشه Startup یا افزودن میانبر به یک برنامه محبوب وجود دارد. &&script.cmd، اما این روش ها قبلاً از سری "ممکن است اما لازم نیست" هستند.


    حالا بیایید به سراغ ابزارهای جدید برویم.

    روش های جدید یا جایی که بدون PowerShell

    PowerShell، درست به نام خود، می تواند با استفاده از WMI، RPC و WS-Management (WSMan) به رایانه های راه دور متصل شود. استفاده از روش دوم نیاز به پیکربندی قبلی دارد.


    Cmdlet هایی که نیازی به تنظیمات اولیه ندارند معمولا دارای پارامتر ComputerName هستند، اما پارامتر Session ندارند. می توانید لیستی از این cmdlet ها را با دستور زیر مشاهده کنید:


    دریافت فرمان | جایی که ($ _. parameters.keys - حاوی "ComputerName" - و $ _. parameters.keys - بدون "Session")

    برای پیکربندی WSMan، به طور کلی، کافی است دستور را اجرا کنید Enable-PSRemoting-Force.سرویس مدیریت از راه دور WinRM را راه اندازی می کند و استثناها را در فایروال ثبت می کند - در اصل، این کار را می توان برای کل دامنه با استفاده از سیاست های گروه انجام داد. پیکربندی با جزئیات بیشتر در مستندات توضیح داده شده است.


    پس از آماده شدن همه رایانه ها برای پذیرش درخواست ها، می توانیم با استفاده از cmdlet های PowerShell مناسب متصل شویم. برای تست اتصال، از cmdlet استفاده کنید تست-WSMan.



    بررسی اتصال


    برای اجرای یک دستور یا اسکریپت خاص، از cmdlet استفاده کنید فراخوانی-فرمانبا نحو زیر:


    Invoke-Command -ComputerName COMPUTER -ScriptBlock (COMMAND) -Credential USERNAME

    در جایی که COMPUTER نام رایانه است، COMMAND - نام فرمان و USERNAME نام کاربری است، در صورت وجود.



    ما به محتویات دیسک از یک کامپیوتر راه دور نگاه می کنیم.


    اگر ما نیاز به دریافت یک کنسول کامل داریم - نه به خاطر اتوماسیون، بلکه به خاطر کنترل یک رایانه خاص، می توانیم از cmdlet استفاده کنیم. Enter-PSSession.



    ما در کنسول یک کامپیوتر از راه دور کار می کنیم.


    اجازه دهید به شما یادآوری کنم که با کمک می توانید cmdlet های موجود را به چنین جلسه ای محدود کنید یا به مواردی که نیاز دارید بدون حقوق سرپرست دسترسی دهید.


    البته در کنار ابزارهای داخلی و ابزارهای کوچک، برنامه های زیادی برای مدیریت ساختار وجود دارد. علاوه بر راه حل های بالغ، ابزارهای نظارتی مانند Zabbix و حتی کنسول کنترل آنتی ویروس کسپرسکی می توانند برای مدیریت پیکربندی هایی مانند Chef، Ansible و MS SCCM استفاده شوند.


    در دوره ای از ساختارهای ناهمگون، خوب است که بتوانیم ویندوز و لینوکس را به صورت یکپارچه مدیریت کنیم. این را می توان با استفاده از PowerShell انجام داد، که به خودی خود ارزش یک مقاله جداگانه را دارد - آیا ارزش آن را دارد یا بیش از حد است؟


    برچسب ها:

    • راه اندازی از راه دور
    • wmi
    • پاورشل
    افزودن برچسب

    امروزه حتی برای سگ ها با کنترل از راه دور آمد .


    با بازگشت به چرخه "خلاصه مدیر"، می خواهم در مورد گزینه های راه اندازی برنامه های اجرایی در رایانه های راه دور صحبت کنم. این مقاله برای کسانی جالب خواهد بود که هنوز سیستم های مدیریت متمرکز ندارند، اما قبلاً درک خسته کننده ای از دور زدن ایستگاه های کاری و سرورها به صورت دستی دارند. یا کسانی که علاقه ای به راه حل های "کلید در دست" ندارند، زیرا آنها غیرورزشی هستند.


    در مورد اینکه چرا به چنین راه اندازی برنامه ها نیاز است، می توان به هیستری اخیر با Petya \ Not-Petya اشاره کرد، زمانی که همه عجله داشتند SMBv1 را بررسی / غیرفعال کنند و به روز رسانی ها را دانلود کنند. بله، و همچنین می توان با استفاده از این روش، یک موجودی انجام داد یا یک پچ فوری نصب کرد.


    روزی روزگاری در جریان همه گیری Kido \ Conficker در یک سازمان کار پیدا کردم. ساده ترین راه برای فهمیدن اینکه آیا همه چیز در IP این شرکت خوب است، یک ابزار باشکوه از Kaspersky به نام Kido Killer بود که وجود یک ویروس را بررسی می کرد و آن را از بین می برد. اجرای برنامه روی صدها دستگاه با دست جالب نبود، بنابراین مجبور شدم با اتوماسیون آشنا شوم.

    اگر در سیستم عامل * nix SSH معمولاً برای راه اندازی از راه دور استفاده می شود، روش های ویندوز برای راه اندازی برنامه ها و اسکریپت ها واقعاً مانند شن و ماسه در بیابان است. من گزینه های اصلی را، هم شناخته شده و هم عجیب و غریب، تجزیه و تحلیل خواهم کرد. من به چیزهای واضحی مانند سرور تلنت دست نخواهم داد، به خصوص که مایکروسافت قبلاً آن را از سیستم عامل های مدرن حذف کرده است.

    روش‌ها قدیمی و آزمایش‌شده هستند

    Psexec

    شاید این اولین چیزی است که هنگام اجرای برنامه ها از راه دور به ذهن می رسد. ابزار Mark Russinovich از زمان ویندوز NT استفاده شده است و هنوز هم در حال استفاده است. علاوه بر عملکرد اصلی، می توانید از آن هم به عنوان Runas و هم برای راه اندازی برنامه ها در جلسه کاربر یک سرور ترمینال استفاده کنید. Psexecهمچنین به شما اجازه می دهد تا هسته های پردازنده ای را که برنامه روی آنها اجرا می شود و اولویت آن در سیستم را تنظیم کنید.


    به عنوان مثال، بیایید ببینیم آیا به‌روزرسانی نصب شده است که آسیب‌پذیری بدنام SMB را در لیست رایانه‌ها برطرف کند:


    psexec @ computers.txt / u USER / p PASS cmd.exe / v / c "" systeminfo | "KB4012212" را پیدا کنید || نام کامپیوتر! >> \\ سرور \ اشتراک \ log.txt "" "

    فایل computers.txt حاوی لیستی از کامپیوترها است. می توانید از \\ * برای اجرا در کل دامنه استفاده کنید. فایل \\ server \ share \ log.txt حاوی نام ایستگاه های کاری یا سرورها بدون به روز رسانی است. اگر رایانه هایی با * nix در دامنه موجود باشد یا به منبع شبکه مدیریتی دسترسی نداشته باشید ادمین $- فرمان روی این ماشین اجرا نمی شود، اما پردازش ادامه می یابد. برای جلوگیری از یخ زدن اسکریپت هر بار که سعی می‌کنید وصل شوید، می‌توانید با استفاده از کلید یک بازه زمانی تعیین کنید -n.


    اگر کامپیوتر خاموش باشد، ما از آن خبر نخواهیم داشت. بنابراین، بهتر است از قبل در دسترس بودن ماشین ها را بررسی کنید یا اطلاعات موفقیت یا شکست را در یک فایل جمع آوری کنید.


    با معایب Psexecمی توان آن را به این واقعیت نسبت داد که به دلیل راحتی و محبوبیت آن اغلب توسط ویروس نویسان استفاده می شود. بنابراین، سیستم های ضد ویروس می توانند ابزار را به عنوان یک تهدید مدیریت از راه دور شناسایی کنند.


    به‌طور پیش‌فرض، فرآیند روی دستگاه راه دور به‌عنوان کاربری اجرا می‌شود که Psexec را راه‌اندازی کرده است. در صورت لزوم، نام کاربری و رمز عبور را می توان به صراحت تنظیم کرد یا می توانید از حساب SYSTEM استفاده کنید.

    Wmic

    WMI (Windows Management Instrumentation)، پیاده سازی استاندارد مدیریت شی گرا WBEM، اغلب برای مدیریت سیستم های ویندوز با استفاده از ابزارهای گرافیکی مختلف استفاده می شود. می توانید از wbemtest.exe به عنوان یک ابزار رابط کاربری گرافیکی برای کار با WMI استفاده کنید.


    برای کار با WMI از کنسول ایجاد شده wmic.exe... به عنوان مثال، برای بررسی به‌روزرسانی‌های نصب‌شده، به‌جای ساختار creepy از مثال قبلی، می‌توانید از یک دستور ساده استفاده کنید:


    wmic / node: "نام سرور" qfe get hotfixid | "KB4012212" را پیدا کنید

    همچنین می‌توانید از فهرست رایانه‌ها با دستور /node:"@computers.txt" استفاده کنید.


    شما همچنین می توانید برنامه ها را با استفاده از WMI اجرا کنید - نحو بسیار ساده است:


    wmic / node: فراخوانی فرآیند "نام سرور" ایجاد "cmd / c somecommands"

    متأسفانه، برخلاف Psexec، نمی‌توانید خروجی را در کنسول دریافت کنید - باید نتایج فرمان را در یک فایل خروجی بگیرید.


    به‌طور پیش‌فرض، فرآیند روی دستگاه راه دور به‌عنوان کاربری که wmic را شروع کرده است اجرا می‌شود. در صورت لزوم، نام کاربری و رمز عبور را می توان به صراحت تنظیم کرد.

    خط مشی ها و اسکریپت های گروه

    اگر گزینه های قبلی به محیط دامنه نیاز نداشتند، در این حالت یک دامنه مورد نیاز است. اسکریپت ها زمانی که کاربر وارد سیستم می شود و از آن خارج می شود و همچنین زمانی که سیستم روشن و خاموش می شود پشتیبانی می شود. از آنجایی که هر مدیر ویندوز با آنها برخورد کرده است، نحوه استفاده از آنها را با جزئیات توضیح نمی دهم - فقط به شما یادآوری می کنم که کجا آنها را جستجو کنید.



    اسکریپت هایی که هنگام راه اندازی و خاموش شدن سیستم اجرا می شوند.



    اسکریپت هایی که هنگام ورود و خروج کاربر اجرا می شوند.


    اسکریپت های پیکربندی شده در بخش کاربر از طرف کاربر و در بخش کامپیوتر - تحت حساب SYSTEM اجرا می شوند.

    وظایف زمانبندی شده

    روشی کاملاً جالب که مستحق حق زندگی است. کارهای برنامه ریزی شده را می توان از خط فرمان با استفاده از ابزار ایجاد کرد schtasks.exe، آنها را اجرا کنید، سپس حذف کنید. جزئیات بیشتر در مورد نحو را می توان در مستندات یافت، اما من نمونه ای از استفاده از وظایف زمان بندی شده در یک محیط دامنه را تجزیه و تحلیل خواهم کرد. فرض کنید باید دستوری را در سریع ترین زمان ممکن اجرا کنیم، صرف نظر از اینکه کامپیوتر خاموش است یا خیر. برای این کار، به اصطلاح Group Policy Preferences استفاده می شود.


    به دنبال نصب وظایف برنامه ریزی شده در پیکربندی رایانه یا کاربر باشید - "تنظیمات - تنظیمات پنل کنترل - وظایف برنامه ریزی شده".



    ایجاد یک کار برنامه ریزی شده جدید.


    برای اجرای یک دستور یا اسکریپت ASAP، باید یک "وظیفه فوری (ویندوز 7 و بالاتر)" ایجاد کنید. اگر ناگهان ماشین‌هایی در زیرساخت وجود داشته باشند که ویندوز XP را اجرا می‌کنند، «کار بعدی (ویندوز XP)» انجام می‌شود.


    ارزش دارد چندین خط مشی با فیلترهای WMI مناسب ایجاد کنید یا دو وظیفه برنامه ریزی شده مختلف را در یک خط مشی هدف گذاری ایجاد کنید - به عنوان مثال، با استفاده از فیلتر WMI یکسان. این به جلوگیری از درگیری در یک محیط ناهمگن با ویندوزهای قدیمی و جدید کمک می کند.


    نمونه ای از فیلتر WMI برای اعمال این خط مشی فقط برای رایانه های دارای ویندوز XP:


    انتخاب * از Win32_OperatingSystem که در آن نسخه مانند "5.1%" و ProductType = "1"

    بقیه مراحل برای ایجاد یک کار برنامه ریزی شده بی اهمیت است. تنها نکته، فراموش نکنید که اگر کار نیازی به راه اندازی مجدد ندارد، مورد "یک بار اعمال کنید و دوباره درخواست نکنید" را علامت بزنید.



    وظیفه فوری را فقط یک بار اجرا کنید.


    با این وظایف برنامه ریزی شده، به محض دریافت به روز رسانی Group Policy، برنامه شروع به کار می کند. این راحت است: شما نیازی به بررسی در دسترس بودن رایانه ها در مورد Psexec و wmic ندارید و کاربران را مجبور می کنید که دستگاه های خود را راه اندازی مجدد کنند، مانند اسکریپت های Group Policy. در صورت لزوم، می توانید فایل اسکریپت را به صورت محلی در قسمت "تنظیمات - پیکربندی ویندوز - فایل ها" کپی کنید.


    وظایف برنامه ریزی شده به شما امکان می دهد نام کاربری را برای شروع برنامه، از جمله برای SYSTEM، به صراحت تنظیم کنید.

    از طریق ثبت نام

    تغییر رجیستری در ماشین های کاربر یک گزینه عجیب است، فقط در مواقع اضطراری. می توانید از شاخه های Run یا RunOnce استفاده کنید. اطلاعات بیشتر در مورد آنها را در اسناد بخوانید. اصلاح رجیستری را می توان از طریق خط مشی های گروه یا از خط فرمان - به عنوان مثال، با دستور زیر انجام داد:


    reg add \\ COMPUTER \ HKLM \ Software \ Microsoft \ Windows \ CurrentVersion \ RunOnce / v script / t Reg_SZ / d "script.cmd"

    بسته به شعبه رجیستری، این فرآیند یا توسط کاربری که به سیستم وارد شده است یا در حساب SYSTEM اجرا می شود.


    راه های دیگری مانند ویرایش میانبرها در پوشه Startup یا افزودن میانبر به یک برنامه محبوب وجود دارد. &&script.cmd، اما این روش ها قبلاً از سری "ممکن است اما لازم نیست" هستند.


    حالا بیایید به سراغ ابزارهای جدید برویم.

    روش های جدید یا جایی که بدون PowerShell

    PowerShell، درست به نام خود، می تواند با استفاده از WMI، RPC و WS-Management (WSMan) به رایانه های راه دور متصل شود. استفاده از روش دوم نیاز به پیکربندی قبلی دارد.


    Cmdlet هایی که نیازی به تنظیمات اولیه ندارند معمولا دارای پارامتر ComputerName هستند، اما پارامتر Session ندارند. می توانید لیستی از این cmdlet ها را با دستور زیر مشاهده کنید:


    دریافت فرمان | جایی که ($ _. parameters.keys - حاوی "ComputerName" - و $ _. parameters.keys - بدون "Session")

    برای پیکربندی WSMan، به طور کلی، کافی است دستور را اجرا کنید Enable-PSRemoting-Force.سرویس مدیریت از راه دور WinRM را راه اندازی می کند و استثناها را در فایروال ثبت می کند - در اصل، این کار را می توان برای کل دامنه با استفاده از سیاست های گروه انجام داد. پیکربندی با جزئیات بیشتر در مستندات توضیح داده شده است.


    پس از آماده شدن همه رایانه ها برای پذیرش درخواست ها، می توانیم با استفاده از cmdlet های PowerShell مناسب متصل شویم. برای تست اتصال، از cmdlet استفاده کنید تست-WSMan.



    بررسی اتصال


    برای اجرای یک دستور یا اسکریپت خاص، از cmdlet استفاده کنید فراخوانی-فرمانبا نحو زیر:


    Invoke-Command -ComputerName COMPUTER -ScriptBlock (COMMAND) -Credential USERNAME

    در جایی که COMPUTER نام رایانه است، COMMAND - نام فرمان و USERNAME نام کاربری است، در صورت وجود.



    ما به محتویات دیسک از یک کامپیوتر راه دور نگاه می کنیم.


    اگر ما نیاز به دریافت یک کنسول کامل داریم - نه به خاطر اتوماسیون، بلکه به خاطر کنترل یک رایانه خاص، می توانیم از cmdlet استفاده کنیم. Enter-PSSession.



    ما در کنسول یک کامپیوتر از راه دور کار می کنیم.


    اجازه دهید به شما یادآوری کنم که با استفاده از JEA، می‌توانید cmdlet‌های موجود را به چنین جلسه‌ای محدود کنید یا به آنهایی که نیاز دارید بدون حقوق سرپرست دسترسی بدهید.


    البته در کنار ابزارهای داخلی و ابزارهای کوچک، برنامه های زیادی برای مدیریت ساختار وجود دارد. علاوه بر راه حل های بالغ، ابزارهای نظارتی مانند Zabbix و حتی کنسول کنترل آنتی ویروس کسپرسکی می توانند برای مدیریت پیکربندی هایی مانند Chef، Ansible و MS SCCM استفاده شوند.


    در دوره ای از ساختارهای ناهمگون، خوب است که بتوانیم ویندوز و لینوکس را به صورت یکپارچه مدیریت کنیم. این را می توان با استفاده از PowerShell انجام داد، که به خودی خود ارزش یک مقاله جداگانه را دارد - آیا ارزش آن را دارد یا بیش از حد است؟


    برچسب‌ها: افزودن برچسب

    مقالات مرتبط برتر