آموزش دایرکت ادمین، سی پنل، وب سایت پنل

خانه / فایروال

فایروال

آشنایی کامل با فایروال Iptables

Iptables and Netfilter Architecture

فایروال ها ابزار مهمی هستند که می توانند به منظور حفاظت از سرورها و زیرساخت ها پیکربندی شوند. در اکوسیستم لینوکس، ابزار iptables  به عنوان فایروال به طور گسترده ای استفاده می شود که با چارچوب فیلترینگ بسته netfilter هسته (kernel) سیستم عامل در ارتباط است.

در این مقاله  ما در مورد چگونگی استفاده از iptables و تعامل آن با netfilter و چگونگی ارتباط اجزای مختلف فیلترینگ و سیستم mangling در کنار یکدیگر صحبت خواهیم کرد.

Netfilter Hooks

۵ قلاب یاhook  برای netfilter  تعریف شده است که برنامه میتواند با آن ها کار کند. هر پکتی که وارد فرایند پردازش میشود با یکی از hook  ها در kernel  قلاب (hook) میشود. بسته به نوع هر پکت input, output و یا  forward قلابی به آن اختصاص داده میشود.

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

ادامه ی مطلب

افزایش امنیت سرورهای لینوکسی به زبان ساده (بخش دوم)

در ادامه بخش اول افزایش امنیت سرور های لینوکسی به موارد دیگری در این زمینه آشنا خواهیم شد.

  • سرویس ها و پکیج های غیرضروری را نصب نکنید. تنها ماژول هایی را نصب کنید که به آن ها نیاز دارید.
  • اتصال SSH از طریق root را محدود نمایید، راهکار مناسب استفاده از ورود دو مرحله ای ۲-Factor می باشد. حتما root login  را در سرویس ssh به حالت disable  قرار دهید. میتوانید از SSH-Key Logins استفاده کنید.
    امن سازی ssh
  • از پورت های پیش فرض استفاده نکنید. برای سرویس هایی مانند ssh پورت پیش فرض ۲۲ را به پورت دیگری تغییر دهید.
  • فایروال سرور را تنظیم نمایید. پورت ها و دسترسی های اضافی را بلاک کنید. تنها پورت های مورد نظر را باز کنید.
    تنظیمات فایروال csf
  • دسترسی ها و پرمیژن ها را بدرستی تنظیم کنید و از دادن دسترسی هایی بیشتر از نیاز واقعی به فایل ها و مسیر ها بپرهیزید.
  • از هر سیستمی و هر جایی به سرور خود متصل نشوید! رمزها را بروی مرورگر یا نرم افزارها ذخیره نکنید.
  • از نرم افزارهای مدیریت و ذخیره پسورد مانند keepass استفاده کنید.
  • در صورتی که سرور شما بصورت نصب و راه اندازی شده به شما تحویل داده شد تمام پسورد های مربوط به سرور مانند root و SQL  را تغییر دهید.

افزایش امنیت سرورهای لینوکسی به زبان ساده (بخش اول)

افزایش امنیت سرورهای لینوکسی 
این روزها همه نگران امنیت سرور هستند اما واقعا با وجود تمام مشکلات، اراده ای برای استفاده از راهکارهای مناسب و یادگیری آن مشاهده نمیشود. در این مقاله سعی داریم نکات کلیدی که گاها بسیار ساده هستند اما در اغلب اوقات به آن ها توجه نمیشود را بررسی کنیم.
+ اتصال، ارتباط و انتقال رمزنگاری شده و امن
این موضوع از اهمیت بالایی برخوردار است اما همچنان نادیده گرفته میشود. هنوز هم اکثر مدیران سرور به علت راحتی کار از اتصال ها و ارتباطات غیر امن استفاده میکنند.
پیشنهادها:
– استفاده از ssh، scp، rsync و SFTP برای انتقال اطلاعات. یا با استفاده از ابزارهای sshfs و  fuse می توانید فایل سیستم را در مکان مورد نظر map کنید.
– استفاده از VPN برای ایجا کانال رمزنگاری شده برای ارتباط ها
– استفاده از SSL برای وب سرور جهت ارتباط امن بین سرور و کلاینت
– تا جای ممکن است FTP، Telnet و RSH استفاده نکنید. با توجه به اینکه اطلاعات در این حالت clear Text هستند امکان sniff کردن اطلاعات وجود دارد.
– بسته ها، پکیچ ها و نرم افزارهای اضافی و بلااستفاده را نصب نکنید.
– سعی کنید سرویس های مختلف را بروی سرورها مجزا با آدرس های متفاوت ایجاد کنید. برای این کار میتوانید از مجازی سازی کمک بگیرید.
– kernel و تمام نرمافزارهای سرور را بروز نگه دارید.
– از اکستنشن های امنیتی سیستم عامل استفاده کنید. Selinux توانایی زیادی در کنترل امنیت سرور دارد اما از جایی که پیکربندی و تنظیمات آن دشوار است اغلب این ویژگی را غیرفعال میکنند! برای استفاده از این ابزارها باید مهارت لازم را داشته باشید.
استفاده از Selinux پیشنهاد میشود. کنترل دسترسی ها و مجوزها در سطوح مختلف را پیاده سازی میکند.

فعال سازی ایمیل هشدار برای port scan و login faild در CSF

طیف زیادی از تنظیمات در CSF در فایل های پیکیربندی وجود دارد. بحث در مورد راه اندازی ایمیل هشدار برای ورود به سیستم ناموفق غیر مجاز و اسکن پورت است. ایمیل های از پیش تعریف شده برای موارد مختلف در مسیر زیر وجود دارد.

/usr/local/csf/tpl/

برای فعال کردن هشدار Login Failur از طریق ایمیل باید در فایل csf.conf مقدار زیر را تنظیم کنید.

LF_EMAIL_ALERT = 1

برای فعال کردن هشدار Port Scanning از طریق ایمیل باید در فایل csf.conf مقدار زیر را تنظیم کنید.

PS_EMAIL_ALERT = 1

IPtables چیست؟ وچگونه کار میکند؟

Iptables یک فایروال وابزار شبکه است که در تمام نسخه های لینوکس وجود دارد و به تجزیه و تحلیل بست ها در سطح kernel می پردازد. هر جدول از تعدادی زنجیره و هر زنجیره از تعدادی قانون تشکیل شده است. سه زنجیر پیش فرض ، INPUT ، OUTPUT و Forward هستند . یک زنجیر فهرستی ساده از قوانین است و مشخص می کند با هر پکت چطور رفتار شود .

برای مشاهده rule های iptable :

iptables --list

Policies:

Accept :

هیچ قانونی روی این نوع اعمال نخواهد شد. امکان دسترسی به برنامه کاربردی را پیدا می کند.

Reject :

همانند DROP عمل می کند با این تفاوت که بعد از، از بین بردن پکت پیامی به فرستنده آن مبنی بر نابودی پکت ارسال می کند.

DROP :

پکت بدون ارسال پیام برای فرستنده آن نابود می شود .

برای allow کردن ssh :

ادامه ی مطلب

تنظیمات پیشرفته CSF

تنظیمات مربوط به فایل csf.conf  را بصورت زیر تنظیم نمایید:

حفاظت از سیل حملات DOS وSYN

CT_LIMIT = "80"
CT_INTERVAL = "50"
CT_PERMANENT = "1"
CT_BLOCK_TIME = "1800"
CT_INTERVAL = "60"
CT_SKIP_TIME_WAIT = "1"
SYNFLOOD = "1"

در حال حاضر سرور شما از DOS و حملات SYN محافظت می شود، و از طریق ایمیل زمانی که یک IP مسدود شده است، مطلع خواهید شد.  همچنین:

CONNLIMIT = "22;5,80;20"

تعداد کانکشن های همزمان مجاز برای پورت ۲۲  مقدار ۵  وبرای پورت ۸۰  مقدار ۲۰ کانکشن

PORTFLOOD = "80;tcp;20;300"

این تنظیم به این معنا می باشد که تمام درخواست به پورت ۸۰  از نوع TCP   از ۲۰  درخواست درثانیه را
در بازه زمانی ۳۰۰  ثانیه را قبل از آزاد شدن کانکشن محدود میکند.

حفاظت از SPAM  هرزنامه

LF_DSHIELD = "86400"
LF_SPAMHAUS = "86400"
LF_BOGON = "86400"

 

این تنظیم اختیاری است و پیشنهاد نمی شود زیرا سرور شما از یک لیست بزرگ از IP های بد شناخته شده محافظت می شود،

که همیشه در حال رشد است.  سایر تنظیمات مفید  شما می توانید دسترسی IP  کشورهای مخصوصی را ببندید

CC_DENY = "GB,CN"

شما می توانید lfd  را برای تشخیص دایرکتوری های مشکوک تنظیم نمایید:

LF_DIRWATCH = "300"

 

 

 

 

بررسی Log آخرین ورودها به Linux

در سیستم عامل Linux تمام ورود ها به سیستم ثبت می شود. اکثرا این گزارشات در مسیر زیر قرار دارد.

/var/log

تمام جزئیات ورود و خروج و همچنین دسترسی ها از راه دور در فایل هایی با نام های utmp، wtmp و btmp قرار دارد.

ادامه ی مطلب

open-source در دنیای web

نفش open-source در دنیای امروز web قابل انگار و چشم پوشی نیست. هرروزه شرکت ها و محصولات جدید به open-source  پیوند می خورند. امروز بصورت تصویری وضعیت open-source  و دنیای web را در سال ۲۰۱۴ با هم تماشا خواهیم کرد.

opensourceweb