آموزش استفاده از ssh در پاورشل ویندوز

برای متصل شددن به لینوکس از طریق پاورشل 2 راه مختلف وجود دارد.
1- نصب و استفاده از ماژول Posh-SSH
2- دانلود اسکریپت SSH و استفاده از آن در پاورشل
در این مطلب ما به نصب و استفاده از ماژول Push-SSH پرداخته و در مطالب آتی به نحوه استفاده از اسکریپت SSH در پاورشل خواهیم پرداخت.
برای استفاده از ماژول Posh-SSH ، ابتدا شما باید این ماژول را نصب کرده و سپس از آن استفاده نمایید.
برای نصب ماژول Posh-SSH ابتدا ، پاورشل را با دسترسی Administrator باز کنید.
سپس دستور زیر را وارد کنید تا ماژول شروع به نصب کند.
Install-Module -Name Posh-SSH
دقت داشته باشید در هنگام وارد کردن دستور بالا ، ویندوز شما باید به اینترنت دسترسی داشته باشید.
پس از وارد کردن دستور بالا از شما دو سؤال مبنی بر تأیید نصب و دانلود پکیج پرسیده خواهد شد که هر دو را با وارد کردن Y به معنی تأیید بگذرانید.
پس از نصب شما میتوانید از این ماژول استفاده کنید ؛ اما بدلیل Restricted بودن اسکریپتها استفاده از آن امکان پذیر نیست. برای این امر و مجوز دسترسی وارد شدن این ماژول ، دستور زیر را وارد کنید تا دسترسی اجرای اسکریپتها داده شود.
Set-ExecutionPolicy RemoteSigned
حال پس از تغییر مجوز اجرای اسکریپتها در پاورشل ، به نحوه استفاده از این ماژول میپردازیم.
آموزش استفاده از ماژول Posh-SSH در پاورشل
با دستور زیر ماژول Posh-SSH را Import کنید.
Import-Module Posh-SSH
سپس برای ارتباط با سرور لینوکس خود دستور زیر را وارد نمایید.
New-SSHSession -IpAddress 192.168.1.10
به جای آدرس IP نوشته شده ، شما باید آدرس IP سرور لینوکس خود را وارد نمایید.
سپس نام کاربری و پسورد لینوکس خود را در کادری که باز شده وارد کنید ( همانند تصویر زیر )
بعد برقراری ارتباط شما ، نام و سایر اطلاعات اتصال مانند Session ID و … را به شما نمایش خواهد داد.
پس از چند ثانیه شما به سرور لینوکسی خود متصل شدهاید.
حال برای وارد کردن دستورات مختلف میبایست از دستور Invoke-SSHCommand استفاده نمایید.
ساختار دستور به شکل زیر میباشد.
Invoke SSHCommand -Index [Session ID] -Command [“linux Command]
دستورات در لینوکس به شکل بالا وارد میشوند ، و شما باید به جای Session ID و Linux Command موارد مورد نظر خود را وارد کنید.
برای مثال ، دستور زیر را برای دریافت نام هاست لینوکس وارد مینماییم.
Invoke-SSHCommand -Index 0 -Command “hostname”
پس از وارد کردن دستور بالا ، نام هاست شما به نمایش درخواهد آمد.
نکته قابل توجه در استفاده از ماژول Posh-SSH این است که این ماژول با متد Push دستورات را ارسال کرده و نتیجه دستور وارد شده را در پاورشل نمایش میدهد.
نکته مهم : Session ایجاد شده بین پاورشل شما و لینوکس باز خواهد ماند تا زمانی که شما با دستور زیر Session را ببندید.
Remove-SSHSession -Index 0
دقت داشته باشید به جای عدد صفر در مقابل Index باید مقدار عددی Session خود را وارد کنید.
استفاده از این متد کاری بس زمان بر است و شاید مدیران شبکه با محدودیتهای که در این ماژول باشد ، ترجیح به استفاده از Putty بدهند. اما این یک راهی است برای دسترسی سریع به سرور در هنگامی که شما در نظر داشته باشید اسکریپتهایی را در ویندوز اجرا کنید و به صورت اتوماتیک چند دستور به سمت سرور لینوکسی خود ارسال نمایید.