IPsec
در اصطلاح Ipsec چیست؟
این کلمه ، یک کلمه مخفف شده از Internet Protocol Security است.
اولین بار توسط Defense Advanced Research Projects Agencyو زیر نظر وزارت دفاع آمریکا توسعه یافته شد و مورد استفاده قرار گرفت.
IPsec برای اولین بار در دهه 1990 کدگذاری شد، و با درک اولیه این که ترافیک اینترنت باید محافظت شود، تدوین شد.
کاربرد های ipsec?
- بین دو روتر برای ایجاد یک VPN سایت به سایت که دو شبکه محلی را با هم
“پل”( bridges) می کند. - بین فایروال و ویندوز هاست برای دسترسی از راه دور VPN.
- بین دو سرور لینوکس برای محافظت از یک پروتکل ناامن مانند telnet.
- این پروتکل برای ایجاد پروتکل رمزنگاری شده بین دو رایانه است .
- ipSec کمک میکند داده های ارسال شده از طریق اینترنت ایمن باشند .
- IPsec بسیار پیچیده است و راه های مختلفی برای پیاده سازی آن وجود دارد.
پروتکل ipSec بیشتر در VPN ها استفاده میشود:
کلمه VPN چیست ؟ و Ipsec چگونه در VPN مورد استفاده قرار میگیرد؟
Vpn یا virtual private network یک اتصال رمزنگاری شده بین دو یا چند رایانه است.
اتصال وی پی ان از طریق اینترنت (شبکه های عمومی) ایجاد میشود ولی داده های مبادله شده خصوصی میباشند زیرا رمزنگاری شده اند.
وی پی ان ها استفاده فراوانی در شرکت ها برای دور کاری دارند ، زیرا امنیت شبکه داخلی شرکت با اینترنت به خطر نمی افتد.
بسیاری از VPN ها از مجموعه پروتکل IPsec برای ایجاد و اجرای این اتصالات رمزگذاری شده استفاده می کنند.
چرا به Ipsec نیاز داریم؟
امروزه، TLS تقریباً در تمام مرورگرها و سایر برنامه های کاربردی متصل به اینترنت تعبیه شده است و برای استفاده روزمره از اینترنت بیش از حد کافی محافظت می کند. اما این کامل نیست، و اگر مهاجمی بتواند رمزگذاری TLS شما را بشکند یا بهطور دیگری از آن عبور کند، به دادههای بستههای شبکهای که شما از طریق اینترنت ارسال میکنید دسترسی خواهند داشت. به همین دلیل است که IPsec VPN میتواند یک لایه حفاظتی دیگر اضافه کند: این شامل ایمن کردن خود بستهها است.
مزایا و قابلیت های IpSec
- محرمانه بودن: با رمزگذاری داده های ما، هیچ کس به جز فرستنده و گیرنده قادر به خواندن داده های ما نخواهد بود.
- یکپارچگی: ما می خواهیم مطمئن شویم که هیچ کس داده های بسته های ما را تغییر نمی دهد. با محاسبه مقدار هش، فرستنده و گیرنده می توانند بررسی کنند که آیا تغییراتی در بسته ایجاد شده است یا خیر.
- احراز هویت: فرستنده و گیرنده یکدیگر را احراز هویت می کنند تا مطمئن شوند که واقعاً با دستگاهی که قصد داریم صحبت می کنیم.
- ضد بازپخش: حتی اگر بسته ای رمزگذاری شده و احراز هویت شود، مهاجم می تواند سعی کند این بسته ها را گرفته و دوباره ارسال کند. با استفاده از اعداد ترتیبی، IPsec هیچ بسته تکراری را ارسال نمی کند.
ipSec چگونه کار میکند؟
به طور کلی، ipsec شامل تبادل کلیدهای رمزنگاری است که به طرفین امکان می دهد ارتباطات خود را رمزگذاری و رمزگشایی کنند.
قبل از اینکه بتوانیم از هر packet IP محافظت کنیم، به دو همتای IPsec نیاز داریم که تونل IPsec را بسازند.
برای ایجاد یک تونل IPsec، از پروتکلی به نام IKE (Internet Key Exchange) استفاده می کنیم.
دو مرحله برای ساخت یک تونل IPsec وجود دارد:
- IKE phase 1
- IKE phase 2
در فاز 1 IKE، دو همتا درباره رمزگذاری، احراز هویت، هش و سایر پروتکلهایی که میخواهند استفاده کنند و برخی پارامترهای دیگر مورد نیاز مذاکره میکنند. در این مرحله، یک جلسه ISAKMP (Internet Security Association and Key Management Protocol) برقرار می شود. به این تونل ISAKMP یا تونل فاز 1 IKE نیز می گویند.
مجموعه پارامترهایی که دو دستگاه استفاده خواهند کرد SA (Security Association)نامیده می شود. در پایین نمونه ای از دو روتر است که تونل فاز 1 IKE را ایجاد کرده اند:
تونل فاز 1 IKE فقط برای مدیریت ترافیک استفاده می شود. ما از تونل فاز1 IKE به عنوان یک روش امن برای ایجاد تونل دوم به نام تونل فاز 2 IKE یا تونل Ipsec استفاده میکنیم.
اینجا تصویری از تونل IKE فاز2 داریم:
حال داده ها ازطریق تونل فاز 2 با امنیت ، ارسال و دریافت میشوند.
احراز هویت و رمزگذاری:
IKE تونل ها را برای ما می سازد اما داده های کاربر را احراز هویت یا رمزگذاری نمی کند. برای این کار از دو پروتکل دیگر استفاده می کنیم:
- AH (Authentication Header)
- ESP (Encapsulating Security Payload)
AH و ESP هر دو احراز هویت و یکپارچگی را ارائه می دهند اما فقط ESP است که رمزگذاری میتواند کند، به همین دلیل است که امروزه بیشتر از ESP استفاده میشود.
هر دو پروتکل از دو حالت مختلف پشتیبانی میکنند:
- Transport mode
- Tunnel mode
تفاوت اصلی میان این دو این است که در حالت transport از header IP اصلی استفاده می کنیم و در حالت tunnel علاوه بر ipheader قبلی از یک header IP جدید نیز استفاده می کنیم.
در اینجا یک مثال برای کمک به تجسم این موضوع آورده شده است:
تمام فرآیند IPsec شامل پنج مرحله است:
- شروع: چیزی باید باعث ایجاد تونل های ما شود. برای مثال، وقتی IPsec را روی روتر پیکربندی میکنید، از یک لیست دسترسی استفاده میکنید تا به روتر بگویید از چه دادههایی محافظت کند. هنگامی که روتر چیزی را دریافت می کند که با لیست دسترسی مطابقت دارد، فرآیند IKE را شروع می کند. همچنین امکان راه اندازی دستی تونل نیز وجود دارد.
- فاز 1 IKE: ما با یک انجمن امنیتی برای ساخت تونل فاز 1 IKE (تونل ISAKMP) مذاکره می کنیم.
- فاز 2 IKE: در داخل تونل فاز 1 IKE، تونل فاز 2 IKE (تونل IPsec) را می سازیم.
- انتقال داده: ما از داده های کاربر با ارسال آن از طریق تونل فاز 2 IKE محافظت می کنیم.
- خاتمه: زمانی که اطلاعات کاربر برای محافظت وجود نداشته باشد، تونل IPsec پس از مدتی خاتمه می یابد.
نتیجه
IPsec بسیار پیچیده است ; اکنون مشاهده کرده اید که چگونه IKE برای ساخت تونل IPsec استفاده می شود و چگونه می توانیم از AH و یا ESP برای محافظت از ترافیک خود استفاده کنیم.
امیدوارم این مقاله مفید بوده باشه.
نویسنده : عارف سلیمانی
منابع:
Networklessons
csoonline
Cloudflare
Setakit
https://de.wikipedia.org/wiki/IPsec