زمانی که سرور شما ip public دارد ممکن است مورد حملات brute force تعداد زیادی از بات ها روی اینترنت قرار بگیرد که به سرور تان حمله میکنند تا پسوردتان را حدس بزنند و بهترین راه برای چنین حملاتی همیشه بستن دسترسی ssh برای همه و باز گذاشتن دسترسی فقط برای لیست آی پی های مجاز ( مثلا ip آدرس VPN شرکت تان) می باشد.
و اما راه نسبتا مستقیم و سریع استفاده از فایلهای hosts.allow و hosts.deny میباشد.
مرحله 1 :
فایل زیر را با ادیتور vim باز میکنیم :
و سپس لیست ip های مجاز را در آن وارد میکنیم و با یک کاما (,) از هم فاصله میدهیم. همچنین می توانیم به جز تعریف تک ip، یک رنج network تعریف کنیم:
مرحله ی 2 :
سپس فایل زیر را برای بستن دسترسی سایر ip و network ها باز میکنیم :
و سپس خط زیر را به آن اضافه میکنیم :
این خط همه دسترسی های به ssh را مسدود میکند.
همچنین توصیه میشود مطالعه کنید :
Block کردن حملات Brute Force به سرور لینوکس با استفاده از DenyHosts
نتیجه : با این شیوه شما از حملات brute force و پیام هایی مانند : “There was 9999 failed login attempt since the last successful login. “ جلوگیری میکند.
و اما راه نسبتا مستقیم و سریع استفاده از فایلهای hosts.allow و hosts.deny میباشد.
مرحله 1 :
فایل زیر را با ادیتور vim باز میکنیم :
کد PHP:
vim /etc/hosts.allow
و سپس لیست ip های مجاز را در آن وارد میکنیم و با یک کاما (,) از هم فاصله میدهیم. همچنین می توانیم به جز تعریف تک ip، یک رنج network تعریف کنیم:
کد PHP:
sshd: 10.83.33.77/32, 10.63.152.9/32, 10.12.100.11/28, 10.82.192.0/28
مرحله ی 2 :
سپس فایل زیر را برای بستن دسترسی سایر ip و network ها باز میکنیم :
کد PHP:
vim /etc/hosts.deny
و سپس خط زیر را به آن اضافه میکنیم :
کد PHP:
sshd: ALL
این خط همه دسترسی های به ssh را مسدود میکند.
همچنین توصیه میشود مطالعه کنید :
Block کردن حملات Brute Force به سرور لینوکس با استفاده از DenyHosts
نتیجه : با این شیوه شما از حملات brute force و پیام هایی مانند : “There was 9999 failed login attempt since the last successful login. “ جلوگیری میکند.