0
0

SSH چیست ؟ چگونه از ویندوز به لینوکس SSH بزنیم ؟ ویدئویی

6258 بازدید
SSH چیست ؟

.:: SSH چیست ؟ چگونه از ویندوز به لینوکس SSH بزنیم ؟ ::.

 

آموزش مقدماتی لینوکس : بحث آموزش SSH چیست ؟ فعال سازی SSH در لينوكس و اتصال از ويندوز به لينوكس به صورت ویدئویی با ما همراه باشید. پیشنهاد میکنیم قبل از تماشای ویدئویی ابتدا مطالب زیر رو مطالعه فرمایید.

 

SSH چیست ؟

SSH یا Secure Shell یک پروتکل ارتباطی شبکه است که دو کامپیوتر را قادر به برقراری ارتباط می کند
(c.f HTTP یا Hypertext Transfer Protocol ، که پروتکل مورد استفاده برای انتقال Hypertext مانند صفحات وب است) و به اشتراک گذاری داده ها. یک ویژگی ذاتی SSH این است که ارتباط بین دو کامپیوتر رمزگذاری شده است به این معنی که برای استفاده در شبکه های ناامن مناسب است.

  • SSH اغلب برای “ورود به سیستم” و انجام عملیات بر روی رایانه های از راه دور استفاده می شود اما ممکن است برای انتقال دیتا نیز استفاده شود.

 

در تعریفی دیگر و بهتر (SSH چیست) ؟

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

 

کاربرد SSH چیست ؟

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

 

اصطلاحات SSH چیست ؟

  • SSH: با حروف بزرگ به‌طور کلی به معنی پروتکل اینترنتی SSH است.
  • ssh: با حروف کوچک به نرم‌افزار کلاینت سمت کاربر گفته می‌شود.
  • SSHD: در واقع Daemon سرویس SSH در لینوکس است.
  • SSH1: در واقع اولین ویرایش SSH است.
  • SSH2: نسخه تجاری و غیر رایگان محصول شرکت Tectia است.
  • Open SSH: نسخه متن‌باز Open-source یا رایگان SSH

 

SSH چیست ؟

 

درک تکنیک های مختلف رمزگذاری

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

 

رمزگذاری متقارن

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

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

 

در ادامه..

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

  • انواع رمزهای رمزگذاری متقارن از جمله AES (Advanced Encryption Standard) ، CAST128 ، Blowfish و غیره وجود دارد ، قبل از برقراری اتصال امن ، مشتری و یک میزبان با انتشار لیستی از به ترتیب اولویت از سایفر پشتیبانی می کند. ترجیحی ترین رمزنگاری از رمزهای پشتیبانی شده مشتری که در لیست میزبان وجود دارد ، به عنوان رمز رمزگذاری دو طرفه استفاده می شود.

به عنوان مثال اگر دو دستگاه Ubuntu 14.04 LTS با یکدیگر از طریق SSH ارتباط برقرار کنند ، از aes128-ctr به عنوان رمز پیش فرض خود استفاده می کنند.

 

رمزگذاری نامتقارن

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

  • همانطور که از نام آن پیداست کلید عمومی به طور آشکار توزیع و با همه طرفین به اشتراک گذاشته می شود. گرچه از نظر عملکردی با کلید خصوصی بسیار نزدیک است، اما نمی توان از طریق کلید عمومی از نظر ریاضی کلید خصوصی را محاسبه کرد. رابطه بین دو کلید بسیار پیچیده است : پیامی که توسط کلید عمومی دستگاه رمزگذاری شده باشد، فقط با کلید خصوصی همان دستگاه قابل رمزگشایی است. این رابطه یک طرفه به این معنی است که کلید عمومی نمی تواند پیام های خود را رمزگشایی کند و همچنین نمی تواند هر چیزی را که توسط کلید خصوصی رمزگذاری شده رمزگشایی کند.

 

در ادامه..

کلید خصوصی باید خصوصی بماند برای اینکه امنیت اتصال برقرار شود
هیچ شخص ثالثی هرگز نباید آن را بداند. قدرت کل اتصال در این واقعیت است که کلید خصوصی هرگز آشکار نمی شود
زیرا تنها Component Capable of Decrypting Messages است که قادر به رمزگشایی پیام هایی است که با استفاده از کلید عمومی خود رمزگذاری شده اند. بنابراین ، هر طرف با توانایی رمزگشایی پیام های امضا شده به صورت عمومی باید دارای کلید خصوصی مربوطه باشد.

برخلاف تصور عمومی ، از رمزگذاری نامتقارن برای رمزگذاری کل جلسه SSH استفاده نمی شود. در عوض ، فقط در هنگام الگوریتم تبادل کلید رمزگذاری متقارن استفاده می شود. قبل از شروع اتصال ایمن ، هر دو طرف جفت کلید عمومی-خصوصی موقت ایجاد می کنند و کلیدهای خصوصی مربوطه خود را برای تولید کلید مخفی مشترک به اشتراک می گذارند.

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

 

رمزنگاری هش (HASH)

هش یک طرفه شکل دیگری از رمزنگاری است که در Secure Shell Connections استفاده می شود.
توابع هش یک طرفه با دو شکل رمزگذاری فوق تفاوت دارند به این معنا که هرگز قرار نیست رمزگشایی شوند. آنها برای هر ورودی مقدار منحصر به فردی از یک طول ثابت ایجاد می کنند که روند مشخصی را نمی توان استفاده کرد. این عمل عقب بردن آنها را عملاً غیرممکن می کند.

  • تولید یک هش رمزنگاری از ورودی مشخص آسان است ، اما تولید ورودی از هش غیرممکن است.
    این بدان معناست که اگر مشتری ورودی صحیحی را در اختیار داشته باشد ، می تواند هش رمزنگاری شده را تولید کرده و مقدار آن را مقایسه کند تا بررسی کند که آیا ورودی درستی دارد. SSH از هش برای تأیید صحت پیام ها استفاده می کند. این کار با استفاده از HMAC یا کدهای تأیید پیام مبتنی بر Hash انجام می شود. این اطمینان می دهد که دستور دریافتی به هیچ وجه دستکاری نمی شود.
  • در حالی که الگوریتم رمزگذاری متقارن در حال انتخاب است یک الگوریتم تأیید صحت پیام نیز انتخاب می شود.
    همانطور که در بخش رمزگذاری متقارن توضیح داده شده است ، این روش به روش انتخاب رمزگذاری کار می کند. هر پیامی که ارسال می شود باید حاوی MAC باشد که با استفاده از کلید متقارن ، شماره توالی بسته و محتویات پیام محاسبه می شود. به عنوان بخش نهایی بسته ارتباطی ، به خارج از داده های رمزگذاری شده متقارن ارسال می شود.

 

آموزش فعال کردن SSH در لینوکس

در لینوکس به طور پیشفرض root برای SSH کردن غیر فعال است
برای فعال کردن ان ابتدا به مسیر زیر بروید و فایل زیر را در حالت ویرایش باز کنید.


# apt-get update
# apt-get install ssh

systemctl enable ssh

vi /etc/ssh/sshd_config

حال به دنبال خط زیر بگردید و این خط را مثل نمونه زیر کنید و # را بردارید.

شکل پیشفرض :


#PermitRootLogin prohibit-password

شکلی که باید تغییر کند


PermitRootLogin yes

و حال سرویس SSH را ری استارت کنید

service ssh restart 

 

حال کافیه که با استفاده از نرم افزار Putty به لینوکس خود SSH بزنیم !

 

اسنیف (Sniff) یا شنود چیست ؟ همه چیز درمورد آن کلیک کنید !

5 1 vote
امتیازدهی به مقاله
آیا این مطلب را می پسندید؟
https://blacksecurityteam.com/?p=24381
اشتراک گذاری:
واتساپتوییترفیسبوکپینترستلینکدین
مهرشاد محمدی
علاقه مند به شبکه و امنیت و تست و نفوذ و اشنا با زبان های برنامه نویسی php,java,python,javascript هستم و در اخر دوست دار شدید سیستم عامل لینوکس :-)
مطالب بیشتر
برچسب ها:
اشتراک در
اطلاع از
guest
0 نظرات
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x