امنیت در لینوکس(امنیت SSH)

در مرکز محتوای سرور دات آی آر

 

در این قسمت امنیت در لینوکس می خواهیم در مورد امنیت در OpenSSH صحبت کنیم و 10 روش و تکنیک هایی که می توان SSH  را در حملات مختلف امن کرد مثل : جلوی حمله Brute Force Attack  را با استفاده از نرم افزار هایی که با SSH کار می کنند و یا دسترسی ها را به سیستم کنترل کرد.

OpenSSH از پروتکل SSH  استفاده می کند که برای ورود به سیستم های مختلف از راه دور (مثل در اینترنت) استفاده می شود. یک پروتکل دیگری که قبل از پروتکل SSH وجود داشت که به اسم Telnet  می شناسند. Telnet  هم مثل SSH برای دسترسی از راه دور به سیستم است ولی در عوض Command  ها و یا Password هایی که برای ورود به سیستم  وارد می شود و یا هر دستورات دیگری را رمز نمی کند و به راحتی می توان Sniff کرده و  Password  ها را به دست آورد، ولی در SSH با استفاده از الگوریتم های مثل DES,3DES,AES,RSA و … کل ارتباط را رمز کرده و یک تونل امن بین شما و سیستم برقرار می کند.

با توجه به این که SSH رمزنگاری انجام می دهد ولی باز هم با ترفند های مختلف سیستم را می توانند از کار بندازند (مثل باگی که چند وقت پیش برای OpenSSH پیدا شد به نام HeartBleed)

10 تکنیک و روش هایی که می توان OpenSSH و پروتکل SSH را در سیستم های GNU/Linux امن کرد.

1.فقط از پروتکل 2  SSH  استفاده کنید:

در Version یک (SSH-1) می توان حمله های (Man-In-The-Middle)  انجام داد و البته حفره های امنیتی زیادی دارد و برای همین بهترین کار استفاده از نسخه 2 پروتکل SSH  است. مراحل زیر را انجام دهید:

-باز کردن فایل زیر و edit آن:(مسیر این فایل ها در لینوکس CentOS می باشد، شاید در توضیع های دیگر لینوکس مسیر فرق کند ولی اسم فایل یکسان است)

#vi /etc/ssh/sshd_config 

– با پیدا کردن  Protocol آن را به 2 تغییر دهید و در آخر OpenSSH را restart کنید:

امنیت در لینوکس

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

پیش فرض  وقتی OpenSSH  نصب می کنید همه User هایی که در سیستم تعریف شده اند می توانند با User  و Password  وارد سیستم شوند. مثل User  هایی که برای FTP  و یا Email  می سازید دسترسی SSH  نیازی ندارند ولی اگر پیش فرض را تغییر ندهید این User  ها هم می تونند با Password  خود وارد سیستم شوند و با برنامه نویسی در محیط های لینوکسی مثل زبان های Perl.Python می توانند به راحتی دسترسی Root سیستم را بدست بگیرند برای جلوگیری از این حملات و پیشگیری آن می توانید با تغییراتی در فایل های زیر به راحتی دسترسی ها را تعریف کرد.

AllowUsers root admin DenyUsers x y z

 3.تنظیم idle برای محدودیت زمانی متصل به سرور

با استفاده از idle زمانی برای محدود  کردن user ها برای استفاده از سرور است که به صورت ثانیه می توان آن را تنظیم کرد.

ClientAliveInterval 300  

idle

 4.غیر فعال کردن فایل rhosts.

یوزر ها نباید  به  دو فایل rhosts./~  و shosts./~  دسترسی داشته باشند.

IgnoreRhosts yes 

 5.جلوگیری از حمله Brute-Force در SSH:

در بالا در مورد حمله Brute-Force صحبت شد. در اینجا می خواهیم چند تا از برنامه ها یی که با استفاه از Log  های SSH می توانند جلوی Brute-Force بگیرنند معرفی کنیم (همه برنامه ها تقریبا  مثل هم کار می کنند و فقط در موارد جزئی با هم اختلاف دارند و در اینجا فقط معرفی می شوند ولی در مورد چند تا از آنها دانشنامه ای تهیه شده است که با کلیک بر روی آنها می توانید از  مطالب آنها  استفاده کنید)

– DenyHosts

Fail2ban

Snort

– sshguard

–  BlockHosts

5 روش دیگر برای امن کردن SSH را می توانید در دانشنامه “امنیت SSH” مطالعه کنید.

اشتراک گذاری در linkedin

به تیم متخصص ما اعتماد کنید!

کد تخفیف مخاطبین مرکز محتوا:

Blog01

از این کد می‌تونید برای خرید اشتراک خدمات سرور مجازی و هاست استفاده کنید و از %10 تخفیف تو سفارش این خدمات بهره‌مند بشید!

محتوای پیشنهادی شما

0 0 رای ها
این مقاله چطور بود؟
اشتراک در
اطلاع از
0 دیدگاه
بازخوردهای آنلاین
مشاهده همه دیدگاه ها