میزبانی آنلاین رایگان برای ایستگاه های کاری

<قبلی | فهرست | بعدی>

SSH

برای رفع این مشکل، پروتکل جدیدی به نام SSH (Secure Shell) ایجاد شد. SSH دو مشکل اساسی ارتباط امن با یک میزبان راه دور را حل می کند. اول، تأیید می کند که میزبان راه دور همان چیزی است که می گوید (در نتیجه از حملات به اصطلاح «مرد در وسط» جلوگیری می کند)، و دوم، تمام ارتباطات بین میزبان های محلی و راه دور را رمزگذاری می کند.

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

اکثر توزیع‌های لینوکس پیاده‌سازی SSH به نام OpenSSH را از پروژه OpenBSD ارسال می‌کنند. برخی از توزیع‌ها به طور پیش‌فرض شامل بسته‌های کلاینت و سرور هستند (مثلاً Red Hat)، در حالی که برخی دیگر (مانند اوبونتو) فقط مشتری را تأمین می‌کنند. به


یک سیستم را قادر می سازد تا اتصالات از راه دور را دریافت کند، باید O را داشته باشدpenSSH-سرور بسته نصب شده، پیکربندی شده و در حال اجرا است و (اگر سیستم در حال اجرا است یا پشت فایروال قرار دارد) باید به اتصالات شبکه ورودی در پورت TCP 22 اجازه دهد.


نوک: اگر سیستم راه دور برای اتصال ندارید اما می خواهید این مثال ها را امتحان کنید، مطمئن شوید که OpenSSH-سرور بسته بر روی سیستم شما نصب شده و استفاده کنید localhost را به عنوان نام میزبان راه دور. به این ترتیب، دستگاه شما اتصالات شبکه ای را با خود ایجاد می کند.


برنامه کلاینت SSH که برای اتصال به سرورهای SSH راه دور استفاده می شود، به اندازه کافی نامیده می شود. SSH. برای اتصال به یک میزبان راه دور به نام ریموت سیستم، ما استفاده می کنیم SSH برنامه مشتری مانند این است:



[me@linuxbox ~]$ ssh remote-sys

اعتبار میزبان "remote-sys (192.168.1.4)" نمی تواند ثابت شود.

RSA key fingerprint is 41:ed:7a:df:23:19:bf:3c:a5:17:bc:61:b3:7f:d9:bb.

آیا مطمئن هستید که میخواهید اتصال را ادامه دهید (بله / خیر)؟

[me@linuxbox ~]$ ssh remote-sys

اعتبار میزبان "remote-sys (192.168.1.4)" نمی تواند ثابت شود.

RSA key fingerprint is 41:ed:7a:df:23:19:bf:3c:a5:17:bc:61:b3:7f:d9:bb.

آیا مطمئن هستید که میخواهید اتصال را ادامه دهید (بله / خیر)؟


اولین باری که اتصال برقرار می شود، پیامی نمایش داده می شود که نشان می دهد صحت میزبان راه دور نمی تواند ثابت شود. این به این دلیل است که برنامه مشتری قبلاً این میزبان راه دور را ندیده است. برای پذیرش اعتبار میزبان راه دور، در صورت درخواست، "بله" را وارد کنید. پس از برقراری ارتباط، از کاربر خواسته می شود تا رمز عبور خود را وارد کند:



هشدار: Remote-sys,192.168.1.4 (RSA) برای همیشه به لیست میزبان های شناخته شده اضافه شد.

رمز عبور me@remote-sys:

هشدار: Remote-sys,192.168.1.4 (RSA) برای همیشه به لیست میزبان های شناخته شده اضافه شد.

رمز عبور me@remote-sys:


پس از اینکه رمز عبور با موفقیت وارد شد، درخواست پوسته را از سیستم راه دور دریافت می کنیم:



آخرین ورود: شنبه 30 اوت 13:00:48 2016 [me@remote-sys ~]$

آخرین ورود: شنبه 30 اوت 13:00:48 2016 [me@remote-sys ~]$


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


از سر گرفته می شود و درخواست پوسته محلی دوباره ظاهر می شود.

همچنین امکان اتصال به سیستم های راه دور با استفاده از نام کاربری متفاوت وجود دارد. به عنوان مثال، اگر کاربر محلی "me" یک حساب به نام "bob" در یک سیستم راه دور داشته باشد، کاربر me می تواند وارد حساب کاربری شود فریب در سیستم راه دور به شرح زیر است:


[me@linuxbox ~]$ ssh bob@remote-sys

رمز عبور bob@remote-sys:

آخرین ورود: شنبه 30 اوت 13:03:21 2016 [bob@remote-sys ~]$

[me@linuxbox ~]$ ssh bob@remote-sys

رمز عبور bob@remote-sys:

آخرین ورود: شنبه 30 اوت 13:03:21 2016 [bob@remote-sys ~]$


همانطور که قبلا گفته شد، SSH اصالت هاست راه دور را تایید می کند. اگر هاست راه دور با موفقیت احراز هویت نشود، پیام زیر ظاهر می شود:



[me@linuxbox ~]$ ssh remote-sys

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ @@@@@@@@@

@ اخطار: شناسایی میزبان از راه دور تغییر کرده است! @

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ @@@@@@@@@ این امکان وجود دارد که کسی کار زشتی انجام دهد!

ممکن است کسی در حال حاضر شما را استراق سمع کند (حمله مرد در وسط)!

همچنین ممکن است کلید میزبان RSA به تازگی تغییر کرده باشد. اثر انگشت کلید RSA ارسال شده توسط میزبان راه دور 41:ed:7a:df:23:19:bf:3c:a5:17:bc:61:b3:7f:d9:bb است.

لطفا با سرپرست سیستم خود تماس بگیرید.

کلید میزبان صحیح را در /home/me/.ssh/known_hosts اضافه کنید تا از شر این پیام خلاص شوید.

کلید توهین آمیز در /home/me/.ssh/known_hosts:1

کلید میزبان RSA برای remote-sys تغییر کرده است و شما درخواست بررسی دقیق کرده اید.

تأیید کلید میزبان ناموفق بود.

[me@linuxbox ~]$ ssh remote-sys

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ @@@@@@@@@

@ اخطار: شناسایی میزبان از راه دور تغییر کرده است! @

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ @@@@@@@@@ این امکان وجود دارد که کسی کار زشتی انجام دهد!

ممکن است کسی در حال حاضر شما را استراق سمع کند (حمله مرد در وسط)!

همچنین ممکن است کلید میزبان RSA به تازگی تغییر کرده باشد. اثر انگشت کلید RSA ارسال شده توسط میزبان راه دور 41:ed:7a:df:23:19:bf:3c:a5:17:bc:61:b3:7f:d9:bb است.

لطفا با سرپرست سیستم خود تماس بگیرید.

کلید میزبان صحیح را در /home/me/.ssh/known_hosts اضافه کنید تا از شر این پیام خلاص شوید.

کلید توهین آمیز در /home/me/.ssh/known_hosts:1

کلید میزبان RSA برای remote-sys تغییر کرده است و شما درخواست بررسی دقیق کرده اید.

تأیید کلید میزبان ناموفق بود.


این پیام توسط یکی از دو موقعیت ممکن ایجاد می شود. اول، یک مهاجم ممکن است در حال تلاش برای حمله "مرد در وسط" باشد. این نادر است، زیرا همه آن را می دانند SSH این موضوع را به کاربر هشدار می دهد. مقصر محتمل تر این است که سیستم راه دور به نحوی تغییر کرده است. به عنوان مثال، سیستم عامل یا سرور SSH آن دوباره نصب شده است. با این حال، به نفع امنیت و ایمنی، اولین احتمال را نباید از دست داد. در صورت بروز این پیام، همیشه با مدیر سیستم راه دور چک کنید.

پس از اینکه مشخص شد پیام به دلیل یک علت خوش خیم است، می توان مشکل را در سمت مشتری اصلاح کرد. این کار با استفاده از یک ویرایشگر متن (نیرو شاید) برای حذف کلید منسوخ شده از ~/.ssh/known_hosts فایل. در پیام مثال بالا، این را می بینیم:


کلید توهین آمیز در /home/me/.ssh/known_hosts:1

کلید توهین آمیز در /home/me/.ssh/known_hosts:1


این بدان معنی است که خط یکی از شناخته شده_میزبان فایل حاوی کلید متخلف است. این خط را از فایل حذف کنید و SSH برنامه قادر خواهد بود اعتبار احراز هویت جدید را از سیستم راه دور بپذیرد.

علاوه بر باز کردن یک جلسه پوسته در یک سیستم راه دور، SSH همچنین به ما اجازه می دهد تا یک فرمان را روی یک سیستم راه دور اجرا کنیم. به عنوان مثال، برای اجرای رایگان دستور روی یک میزبان راه دور به نام ریموت سیستم و نتایج را در سیستم محلی نمایش دهید:


[me@linuxbox ~]$ ssh remote-sys رایگان

رمز عبور me@twin4:

مجموع استفاده رایگان

به اشتراک گذاشته شده

بافر

ذخیره شده

[me@linuxbox ~]$ ssh remote-sys رایگان

رمز عبور me@twin4:

مجموع استفاده رایگان


مم:

775536 507184 268352

0

110068

154596

مم:


-/+ بافر/کش:

تعویض:

242520 533016

0 1572856

-/+ بافر/کش:

تعویض:


[me@linuxbox ~]$

[me@linuxbox ~]$


1572856

1572856

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



[me@linuxbox ~]$ ssh remote-sys 'ls *' > dirlist.txt

رمز عبور me@twin4: [me@linuxbox ~]$

[me@linuxbox ~]$ ssh remote-sys 'ls *' > dirlist.txt

رمز عبور me@twin4: [me@linuxbox ~]$


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



[me@linuxbox ~]$ ssh remote-sys 'ls * > dirlist.txt'

[me@linuxbox ~]$ ssh remote-sys 'ls * > dirlist.txt'


تونل زنی با SSH

بخشی از اتفاقی که هنگام برقراری ارتباط با یک میزبان راه دور از طریق SSH رخ می دهد این است که یک تونل رمزگذاری شده بین سیستم های محلی و راه دور ایجاد می شود. به طور معمول، از این تونل برای اجازه دادن به دستورات تایپ شده در سیستم محلی استفاده می شود تا به طور ایمن به سیستم راه دور منتقل شوند و نتایج به طور ایمن به عقب منتقل شوند. علاوه بر این عملکرد اساسی، پروتکل SSH به اکثر انواع ترافیک شبکه اجازه می دهد تا از طریق تونل رمزگذاری شده ارسال شوند و نوعی از VPN (شبکه خصوصی مجازی) بین سیستم های محلی و راه دور.

شاید رایج ترین استفاده از این ویژگی این باشد که اجازه می دهد تا ترافیک سیستم X Window منتقل شود. در سیستمی که یک سرور X را اجرا می کند (یعنی ماشینی که یک رابط کاربری گرافیکی را نمایش می دهد)، می توان یک برنامه مشتری X (یک برنامه گرافیکی) را روی یک سیستم راه دور راه اندازی و اجرا کرد و نمایشگر آن در سیستم محلی ظاهر شود. انجام آن آسان است؛ این یک مثال است: فرض کنید در یک سیستم لینوکس به نام نشسته ایم lin-uxbox که یک سرور X را اجرا می کند، و ما می خواهیم آن را اجرا کنیم xload برنامه روی یک سیستم راه دور به نام ریموت سیستم و خروجی گرافیکی برنامه را در سیستم محلی ما ببینید. ما می توانستیم این کار را انجام دهیم:

[me@linuxbox ~]$ ssh -X remote-sys

رمز عبور me@remote-sys:

آخرین ورود: دوشنبه 08 سپتامبر 13:23:11 2016 [me@remote-sys ~]$ xload

بعد از xload دستور بر روی سیستم از راه دور اجرا می شود، پنجره آن در سیستم محلی ظاهر می شود. در برخی از سیستم ها، ممکن است برای انجام این کار نیاز به استفاده از گزینه "-Y" به جای "-X" داشته باشید.


برترین سیستم عامل Cloud Computing در OnWorks: