چند وقت پیش یک مطلب کوتاه در خصوص معرفی IPSec نوشتم و گفتم شاید بد نباشه اینجا به اشتراک بزارم. فکر میکنم آشنایی کلی با این طور مفاهیم اولیه برای هر کسی که توی حوزه آیتی فعالیت میکنه لازم خواهد بود:
امنیت چیست:
قبل از شروع بحث در مورد IPSec باید شناختی کلی از امنیت در دنیای اینترنت و شبکه داشته باشیم و اینکه چه انتظاری از امنیت داریم.
امنیت را میتوان به روشهای گوناگون تعریف کرد و هر کس مورد خاصی را از شبکه در نظر دارد اما به طور کلی میتوان گفت امنیت از نظر ما در دنیای شبکه یعنی : رازداری: جلوگیری از دسترسی غیر مجاز به اطلاعات احراز هویت: اصالت سنجی و تصدیق جهت دسترسی جامعیت : تمامیت بخشیدن به داده جهت حفظ صحت
IPSec چیست:
با توجه به اینکه امنیت در زمان پیادهسازی IPv4 آنقدرها اهمیت نداشت ساختاری برای تعامل امن به صورت توساخت برروی خود IP وجود نداشت در نتیجه پس از مدتی جهت تأمین امنیت ارتباطات روی اینترنت، IPSec توسعه داده شد. در IPv4 به صورت پیشفرض از IPSec استفاده نشده ولی میتوان آن را اضافه کرد ولی در IPv6 به صورت پیشفرض در نظر گرفته شده است. وجود IPSec میتواند ارتباط امنی بین یک سرویسگیرنده و سرویسدهنده و یا بین دو سرویسدهنده و یا حتی بین دو شبکه با هم را فراهم نماید. در اصل میتوان گفت IPSec ترکیبی از چندین پروتکل و الگوریتم است که تلاش میکند تونلی امن بین مبدأ و مقصد ایجاد میکند که این تونل اصولاً بر روی پروتکل نا امن اینترنت پیادهسازی میشود. با توجه به مطالب فوق و همچنین اهمیت امنیت در این روزها، دانستن مفاهیم اولیهای در خصوص IPSec میتواند مفید باشد.
IPSec چگونه امنیت را تأمین میکند:
IPSec با به کارگیری الگوریتمهای رمزنگاری متنوع از دسترسی نفوذگران به اطلاعات جلوگیری مینماید در اصل با کمک گرفتن از روشهایی از جمله بررسیhash sum و الگوریتمهای هشینگ از صحت محتوای بستههای داخل شبکه را تأیید میکند. یکی از قابلیتهای دیگر IPSec پروتکلهای تصدیق هویت و یا اصالت سنجی است که به طور معمول با ایجاد کلید عمومی و خصوصی به تصدیق دسترسی میپردازد. IPSec چگونه کار میکند
مرحله اول پیکربندی ساختار میباشد و پس از پیکربندی، گیرنده و فرستنده تلاش میکنند تا بین هم یک تونل امن ایجاد کنند که این امر به عهده پروتکلی به نام IKE میباشد. خود IKE از پروتکلی با نام ISAKMP برای انتفال اطلاعات داخل تونل استفاده مینماید. وظیفه دیگر IKE اصالت سنحی و تولید و جابجایی کلیدهای عمومی در مرجله بعد میباشد. زمان ساخته شدن تونل فرستنده و گیرنده روش رمزنگاری را تأیید و از آن استفاده مینمایند
تعامل بین دو عضو
حالت اول ( main mode ): در این مرحله تجهیزات مرتبط با IPSec به توافق میرسند که از چه روشهایی برای انتقال اطلاعات امن استفاده نمایند. و یک ارتباط امن برای پیکربندی حالت بعدی ایجاد مینماید
حالت دوم(quick mode): در این حالت کلیه پارامترهای مورد نیاز برای یکپارچگی دادهها و رمزنگاری آنها تعامل میشود. خود این ارتباط نیز در تونلی رمزنگاری شده که در مرحله قبلی آماده شده. به طور معمول AH در Main mode کاربرد دارد و ESP در Quick mode.
مبنای انتقال اطلاعات در IPSec
AH (سرایند تصدیق) و ESP ( کپسوله سازی بار مفید امنیت) دو پروتکل اصلی هستند که در IPSec به کار میروند و قبلتر به آن اشارها ی شد. باید توجه داشت که پروتکل AH از NAT پشتیبانی نمیکند
AH به منظور تصدیق هویت به کار میرود که این امر معمولاً با محاسبه و بررسی یک HASH (یک رشته شامل عدد و متن) بر روی بستههای آیپی انجام میشود.
ESP نیز مشابه AH میباشد و علاوه بر قابلیتهای آن قابلیت رمزنگاری اطلاعات و رمزنگاری را نیز دارد.
برای اطلاعات بیشتر میتوانید به استانداردهای مرتبط IPSec مراجعه کنید:
RFC 4301 : معماری امنیت آیپی- معماری IPSec و AH و ESP را تعریف میکند.
RFC 4302: به تعریف AH میپردازد.
RFC4303: به تعریف ESP میپردازد.
RFC2408: در خصوص ISAKMP میباشد
RFC5996: نسخه دوم IKE را ارائه مینماید.
RFC 4835: الگوریتم رمزنگاری برای ESP و AH
منابع
APNIC eLearning: IPSec Basics 19 March 2014
Internet Protocol Security (IPSec) – Swapnill & Adit Deshpande
Configuring IPSec – ITFreeTraining.com