IP security یا به اختصار IPSec مجموعه ای از چندین پروتکل است که جهت تنظیم ارتباطات رمزگذاری شده بین دستگاه های شبکه مورد استفاده قرار می گیرد. وظیفه اصلی این پروتکل، ایمن نگه داشتن داده های ارسالی از طریق شبکه های عمومی می باشد.
IPSec غالبا برای راه اندازی V*P*N استفاده می شود و با رمزگذاری بسته های IP همراه با تاییدیه منبع ارسال پیام، کار می کند. پروتکل IPSec یکی از بخش های مهم امنیت شبکه به شمار می رود.
جهت تشریح بیشتر این واژه باید گفت IP مخفف Internet Protocol است و Sec نیز مخفف security. در ضمن IP اصلی ترین پروتکل مسیر یابی است که در بستر اینترنت مورد استفاده قرار می گیرد.
این پروتکل مشخص می کند که داده ها، چه مسیری را باید طی کنند و به کدام مقصد برسند. در ایمن بودن IPSec باید گفت، رمزگذاری و احراز هویت را نیز به این فرایند اضافه می کند.
موارد استفاده از IPSec
برای انجام موارد زیر می توان از IPSec استفاده کرد:
- جهت رمزگذاری داده های application layer
- ایجاد امنیت برای روترهایی که داده های مربوط به مسیریابی را از طریق اینترنت عمومی ارسال می کند.
- ایجاد احراز هویت بدون رمزگذاری، مانند تاییدیه مربوط به ارسال داده ها از منبع نامشخص
- محافظت از داده های شبکه با استفاده از تنظیم مدارهایی با کمک IPSec که تمامی داده ها بین دو نقطه ارسال می شود، مانند ارتباط V*P-N
IPsec V.P-N چیست؟
شبکه خصوصی مجازی یا V-P.N، یک ارتباط رمزگذاری شده بین دو یا چند سیستم می باشد. ارتباطات وی. پی. ان از طریق شبکه عمومی صورت می گیرد، اما تبادل داده از طریق V.P*N به دلیل این که رمزگذاری می شود، به صورت خصوصی است.
وی پی. ان ها دسترسی ایمن و تبادل داده ها محرمانه از طریق زیرساخت های اشتراکی شبکه مانند اینترنت عمومی را میسر می سازند. به عنوان مثال، زمانی که کارمندان به جای این که در دفتر کار کنند، از راه دور کار می کنند، جهت دسترسی به فایل ها و پرونده های شرکت از V-P.N استفاده می کنند.
بسیاری از وی -پی.ان ها جهت ایجاد و اجرای ارتباطات رمزگذاری شده، از IPSec استفاده می کنند. البته تمام v-p.n ها این کار را انجام نمی دهند. پروتکل دیگری که وی پی-ان ها از آن استفاده می کنند، SSL/TLS است که در یک لایه محتلف در مدل OSI نسبت به IPSec عمل می کند. (مدل OSI ارائه ای انتزاعی از فرایند کارهای اینترنتی است)
کاربران چگونه می توانند به IPSec V.P-N متصل شوند؟
برای این کار می بایست به یک برنامه V-P.N وارد شوند. معمولا این امر نیاز به نصب برنامه ی مربوطه دارد. به طور معمول، ورود به v_p.n از طریق پسورد اتفاق می افتد. با توجه به این که داده های ارسالی از طریق وی -پی.ان رمزگذاری می شوند، در صورت به خطر افتادن رمزهای عبور کاربر، مهاجمان می توانند وارد وی-پی_ان شده و داده های رمزگذاری شده را به سرقت ببرند.
قابل ذکر است استفاده از احراز هویت دو عاملی (۲FA) می تواند امنیت IPSec V.P-N را بهینه کند، زیرا در اختیار داشتن پسورد به تنهایی، امکان دسترسی مهاجمان را فراهم نمی کند.
نحوه عملکرد IPsec چگونه است؟
اتصالات IPSec شامل مراحل زیر می باشد:
Key exchange: برای رمزگذاری، وجود کلیدها ضروری می باشد. کلید، رشته ای از کارکترهای تصادفی است که می تواند جهت قفل کردن (رمزگذاری) و بازکردن قفل (رمزگشایی) پیام ها استفاده نماید.
IPSec کلیدهایی را با key exchange بین دستگاه های مرتبط به هم تنظیم می کند، به طوری که هر دستگاه می تواند پیام های دستگاه دیگر را رمزگشایی نماید.
Packet headers and trailers: هر داده ای که از طریق شبکه ارسال می شود، به قسمت های کوچک تر به نام بسته (packet) تقسیم می شود. هر کدام از این پکت ها، دارای payload (داده های واقعی ارسال شده) و header (اطلاعاتی مربوط به داده ها می باشد تا سیستم های دریافت کننده ی بسته ها، بدانند با آن ها چه کنند) می باشند.
کاری که IPSec انجام می دهد این است که چندین header به بسته های (پکت ها) حاوی اطلاعات رمزگذاری و احراز هویت می افزاید. در ضمن، IPSec چندین trailer نیز اضافه می کند تا به جای این که قبل از هر payload قرار گیرد، بعد از آن قرار گیرد.
Authentication: هر پکت یا بسته، موفق به دریافت تاییدیه اعتبار، توسط IPSec می شود، مانند مهر اصالت روی کالا. این امر تضمین می کند که هر پکت از یک منبع قابل اعتماد ارسال شده است نه از طرف یک مهاجم.
Encryption: گفتنی است IPSec، داده های مربوط به هر پکت و همچنین header مربوط به آی پی های پکت ها را رمزگذاری می کند. (مگر این که به جای حالت transport از حالت tunnel استفاده شود). این امر منجر می شود، داده های ارسالی از طریق IPSec، ایمن و خصوصی باقی بمانند.
Transmission: پکت های رمزگذاری شده ی IPSec از طریق یک یا چند شبکه و با استفاده از پروتکل transport به مقصد خود می رسند. در این مرحله، ترافیک IPSec با ترافیک معمولی IP متفاوت است، زیرا اغلب از UDP به عنوان پروتکل transport خود به جای TCP استفاده می کند.
TCP یا Transmission Control Protocol، ارتباط اختصاصی بین دستگاه ها را تنظیم نموده و همچنین رسیدن تمامی بسته ها را ضمانت می کند. UDP یا User Datagram Protocol، چنین ارتباطات اختصاصی را تنظیم نمی کند. IPSec به این دلیل که اجازه می دهد پکت ها از طریق فایروال عبور کنند، از UDP استفاده می کند.
Decryption: سمت دیگر این ارتباط، پکت ها رمزگشایی می شوند و برنامه هایی مانند مرورگرها می توانند از داده های تحویل داده شده، استفاده نمایند.
اجزا تشکیل دهنده ی IPSec
به عنوان تعریف پروتکل در شبکه می توان گفت روشی مشخص جهت قالب بندی داده ها است، به طوری که هر شبکه کامپیوتری قادر به تفسیر آن داده ها باشد. اما IPSec یگ پروتگل نست، بلکه مجموعه ای از پروتکل هاست. قابل ذکر است پروتکل های زیر، IPSec را تشکیل می دهند.
- Authentication Header یا AH: پروتکل AH ضمانت می کند پکت های داده از یک منبع معتبر ارسال شده و دستکاری نشده اند. از آن جا که این header ها هبچ رمزگذاری را ارائه نمی کنند، بدیهی است که داده ها را نمی توانند از دسترس مهاجمان پنهان نمایند
- Encapsulating Security Protocol یا ESP: این پروتکل، headerهای آی پی و payloadهای هر پکت را رمزگذاری می نماید، مگر این که از حالت transport استفاده شود. در آن صورت، تنها payloadها را رمزگذاری می کند. کاری که ESP انجام می دهد این است که هدر و تریلر مخصوص به خود را به هر پکت داده، می افزاید.
- Security Association یا SA: به تعدادی از پروتکل هایی که برای مذاکره ی کلیدهای رمزگذاری و الگوریتم ها اشاره دارد. Internet Key Exchange یا IKE، یکی از رایج ترین پروتکل های SA است.
در نهایت می توان گفت، در حالی که Internet Protocol یا IP، بخشی از مجموعه IPSec نیست، اما در عین حال IPSec مستقیما تحت نظر IP اجرا می شود.
تفاوت IPSec tunnel و IPSec transport
به طور معمول IP Sec tunnel بین دو روتر اختصاصی مورد استفاده قرار می گیرد، که هر روتر به عنوان بک تانل مجازی از طریق شبکه عمومی عمل می کند.
هدر اصلی آی پی در حالت IP Sec tunnel که حاوی مقصد نهایی پکت ها می باشد، علاوه بر packet payload، رمزگذاری نیز می شود. IP Sec به منظور مشخص کردن مسیر پکت ها برای روترها، یک IP header جدید می افزاید. علاوه بر این، روترها در دو سر انتهایی تانل، IP header را رمزگشایی می نماید تا پکت ها به مقصد نهایی نحویل داده شوند.
در حالت transport، فقط داده های (payload) مربوط به هر پکت، رمزگذاری می شود، اما این اتفاق برای IP header اصلی نمی افتد. بنابراین، روترهای واسطه قادر به مشاهده مقصد نهایی هر پکت هستند؛ مگر این که از پروتکل tunneling جداگانه مانند GRE استفاده شود.
کلام آخر
IP Sec از چه پورتی استفاده می کند؟
یک پورت شبکه، محلی مجازی است که داده ها از طریق آن وارد کامپیوتر شوند. می توان گفت از پورت ها برای بررسی مسیر فرایندها و اتصالات مختلف استفاده می شود. در صورتی که داده ها به یک پورت خاصی وارد شوند، از نظر سیستم عامل کامپیوتر، مشخص است که به کدام فرایند، تعلق دارد. به طور معمول، IPSec از ۵۰۰ پورت استفاده می کند.