8-5. پیکربندی سرویس IPSec

IPsec که مخفف عبارت Internet Protocol Security است، یک مجموعه پروتکل برای ایمن کردن ارتباطات پروتکل اینترنت (IP) می‌باشد که برای این منظور از احراز هویت و همچنین رمزنگاری بسته‌هایIP مربوط به یک نشست استفاده می‌کند.

این سرویس شامل تعدادی پروتکل برای احراز هویت دو طرفه بین سیستم‌ ها در زمان شروع ارتباط، و انتقال کلیدهای رمزنگاری که در طی ارتباط استفاده می‌شوند، می‌باشد.

برای راه‌اندازیVPN بین دو سیستم از IPsec استفاده می‌کنیم.

برای ایجاد ارتباط امن در یک شبکه می‌توان از ابزارهای مختلفی نظیرSSL ، TLS  و یاSSH استفاده نمود، ولی از آنجاییکه این ابزارها در مدل TCP/IP در لایه بالاتر عمل می‌کنند، لازم است نرم ‌افزاری که می‌خواهد از این ابزارها استفاده کند، برای این منظور طراحی شده باشد. بر خلاف این موارد، IPsec از تمام ترافیک عبوری بر روی شبکه IP محافظت می‌کند و نیازی نیست که برنامه کاربردی که نیاز به ارتباط ایمن دارد، برای این منظور طراحی مجدد شود.

 

IPsec برای انجام عملیات مختلف از پروتکل‌های زیر استفاده می‌کند:

  • AHAuthentication Headers : وظیفه این پروتکل تضمین درستی داده‌ها در یک اتصال بدون ارتباط (Connectionless) و احراز هویت منبع داده برای IP datagram و همچنین محافظت در برابر pمله Replay می‌باشد.
  • ESPEncapsulating Security Payloads : وظیفه این پروتکل تضمین محرمانه بودن، احراز هویت منبع داده، درستی اتصال در حالت بدون ارتباط (connectionless) و سرویسanti-replay می‌باشد.
  • SASecurity Associations : وظیفه این پروتکل تدارک مجموعه ای از الگوریتم‌ ها و داده است که پارامتر های مورد نیاز برای انجام عملیات AH و ESP را شامل می‌شود. این پروتکل از ISAKMP – Internet Security Association and Key Management Protocol که شامل یک چارچوب برای تصدیق هویت و تبادل کلید است استفاده می‌کند.

1-8-5. راه اندازی سرویس IPSec بین دو مسیریاب

برای راه اندازی سرویس IPsec بین دو مسیریاب، باید در هر کدام از این دو مسیریاب، تنظیماتی اعمال شود. تنظیم پارامترهای ارتباطی IPsec در سطح پیکربندی سراسری انجام میشود.

در زیر دستورات مربوط به راه اندازی سرویس IPsec توضیح داده شده است.

 

تعریف ISAKMP Policy :

در این دستور شماره ای که درج میشود در واقع مقدار اولویت protection suite است که میتواند عددی بین 1 تا 10000 باشد

با اعمال این دستور روتر وارد سطح پیکربندی isakmp policy شده و آماده دریافت دستورات کاربر می‌باشد

دستورات مهم در سطح پیکربندی  isakmp Policy:

  • authentication

با استفاده از این دستور می توان نوع احراز هویت IPSec را  تعیین کرد. در حال حاضر مسیریاب ژرف فقط از یک روش پشتیبانی می کند.

  • Encryption

الگوریتم رمزنگاری در فاز اول IPsec یا همان تبادل اطلاعات کلیدها مشخص می نماید.

  • group

تنظیم گروه Diffie-Hellman برای policy مورد نظر

  • hash

الگوریتم احراز هویت را در فاز اول IPsec یا همان تبادل اطلاعات کلیدها مشخص می نماید.

  • lifetime

تعیین زمان بر حسب ثانیه انقضا برای ISAKMP-SA

تعریف ISAKMP key

با استفاده از این دستور می‌توانیم pre-share key مورد نظر را برای مسیریاب راه دور مشخص کرد

در این دستور مقدار کلید یا همان رمزعبور برای احراز هویت مسیریاب راه دور تعیین میشود. این کلید توسط هر دو مسیریاب در IPsec باید استفاده و تعریف شود. در ادامه دستور آدرس IP مسیریاب راه دور درج میشود

تعریف IPsec transform-set

name :نامی انتخابی برای transform-set تعریف شده

با استفاده از این دستور می  Transform set ها را برای IPSec مشخص میکنیم. همچنین در این مرحله الگوریتم رمز نگاری و الگوریتم احراز هویت در فاز دوم IPSec مشخص می شود

با اجرای این دستور خط فرمان وارد سطح پیکربندی جدید می شود:

دستوراتی که در این سطح قرار دارند عبارتند از:

mode: با استفاده از این دستور می توان نوع تبادل اطلاعات را مشخصی کرد.

تعریف IPsec Profile

با اجرای دستور بالا روتر وارد سطح پیکربندی  ipsec profile شده و آماده ثبت تعریف کاربر از ipsec profile می باشد.

 

دستوراتی که در این سطح پیکربندی وجود دارند عبارتند از:

set pfs :ثبت گروه Diffie-Hellman برای profile مورد نظر

set security-association : تعیین زمان انقضا برای IPsec-SA

set transform-set : به وسیله ی این دستور می توانید transform-set که قبلا پیکربندی شده است را به پروفایل جاری ضمیمه کنید.

و در نهایت با اعمال پروفایل IPsec ساخت شده در Tunnel،  ترافیک های Tunnel مورد نظر با استفاده از Ipsec محافظت و رمز نگاری می شود.

برای اینکار نیاز است وارد سطح پیکربندی اینترفیس tunnel شده و دستور زیر را اجرا کنید:

name :نام پروفایل IPSec

 

1-4-4. راه اندازی سرویس IPSec Site-to-Site بین دو مسیریاب

برای راه اندازی سرویس IPsec بین دو مسیریاب، باید در هر کدام از این دو مسیریاب، تنظیماتی اعمال شود.

برای تنظیم پارامترهای ارتباطی IPsec، از طریق سطح پیکربندی سراسری استفاده میشود.

در زیر دستورات مربوط به راه اندازی سرویس IPsec توضیح داده شده است.

 

تعریف ISAKMP Policy :

number:  شماره policy تعریف شده

با اجرای این دستور روتر وارد سطح پیکربندی isakmp policy شده و آماده دریافت دستورات کاربر می‌باشد

دستورات مهم در سطح پیکربندی  Isakmp Policy:

authentication : با استفاده از این دستور می توانیم نوع احراز هویت IPSec را  تعیین کنیم. در حال حاضر مسیریاب ژرف فقط از یک متد پشتیبانی می کند.

Encryption: الگوریتم رمزنگاری در فاز اول IPsec یا همان تبادل اطلاعات کلیدها را مشخص می نماید.

group: تنظیم گروه Diffie-Hellman برای policy مورد نظر

hash: الگوریتم Hash را در فاز اول IPsec یا همان تبادل اطلاعات کلیدها مشخص می نماید.

lifetime: تعیین زمان انقضا برای ISAKMP-SA

تعریف ISAKMP key

با استفاده از این دستور می‌توانیم pre-share key مورد نظر را برای مسیریاب راه دور مشخصی کرد

key : کلیدی که برای احراز هویت برای طرف مسیریاب راه دور، توسط هر یک از طرفین تبادل، ارائه می شود.

ip-address: آدرس IP مسیریاب راه دور

تعریف crypto map :

name : نامی انتخابی برای crypto map تعریف شده

<1-65535> : شماره خط crypto map تعریف شده برای اعمال دستورات

با اجرای این دستور ، مسیریاب وارد سطح config-crypto-map شده و آماده دریافت دستورات کاربر می‌باشد

دستوراتی که در این سطح قرار دارند عبارتند از:

ip-address: آدرس IP طرف مقابل برای برقراری IPsec

hostname:  Hostname طرف مقابل برای برقراری IPsec

name :نام انتخاب شده برای transform-set در تنظیمات قبلی

 

2-4-4. نمونه ای از پیکربندی سرویس IPSec

در زیر نمونه ای از تنظیمات سرویس IPSec در مسیریاب ژرف آورده شده است.

تنظیمات لازم روی  Router-1:

تنظیمات لازم روی  Router-2:

تنظیمات لازم بر روی سیستم های مجاور مسیریاب ها:

تنظیم مسیریابی ایستا (تنظیم default gateway) بر روی هر سیستم مجاور مسیریاب

پس از اعمال تنظیمات ذکر شده باید آدرس 10.0.0.2 از Router-1 قابل دسترس باشد (Ping برقرار باشد)

 

2-8-5. پیکربندی سرویس IPSec میان سیسکو و ژرف

یکی از ویژگی های مسیریاب ژرف ، توانایی برقراری ارتباط  IPsec با مسیریاب سیسکو می باشد. این ارتباط می تواند در حالت tunnel برقرار شود که در مثال زیر این موضوع نشان داده شده است

 

پیکربندی مسیریاب ژرف:

پیکربندی مسیریاب سیسکو :

برای اطمینان از صحت ارتباط IPsec و انتقال بسته ها با تگ esp  مراحل زیر انجام میشود:

  • فعال کردن ip protocol-discovery روی اینترفیس gbeth0 مسیریاب ژرف

  • بررسی در دسترس بودن آدرس 1.1.1 از مسیریاب سیسکو ( تعداد 100 بسته ارسال میکنیم)

  • اعمال دستور show ip protocoldiscovery در مسیریاب ژرف و مشاهده بسته های esp

 

3-8-5. پیکربندی سرویس IPSec میان سیسکو و ژرف (site-to-site)

 

تنظیمات روتر Zharf1

تنظیمات روتر Zharf2

تنظیمات سیسکو

تنظیمات لازم بر روی سیستم های مجاور مسیریاب ها:

تنظیم مسیریابی ایستا (تنظیم default gateway) بر روی هر سیستم مجاور مسیریاب

پس از اعمال تنظیمات ذکر شده باید آدرس 1.1.1.2 از pc(192.168.20.1) قابل دسترس باشد.

 

5-8-4. سرویس DPD

IPsec  دارای نوعی پیام های دوره ای Keep Alive به  نام DPD یا Dead Peer Detection است که از آن برای مطلع شدن از وضعیت مسیریاب های همسایه استفاده میکند

حالت های ارسال پیام های DPD:

پیام های DPD  به دو صورت قابل ارسال هستند .

  • Periodic : در این حالت مسیریاب به صورت منظم در فواصل زمانی تنظیم شده توسط تایمر، اقدام به ارسال DPD میکند که مزیت این روش کشف زودهنگام peer از دسترس خارج شده است
  • On-demand: ارسال آپدیت های DPD در این حالت منوط به ترافیک موجود در شبکه است و در صورتی که تقاضایی برای ارسال ایجاد شود، مسیریاب اقدام به ارسال DPD  مینماید و قبل از اینکه ترافیک را ارسال کند باید از صحت موجود بودن مسیریاب مقصد اطمینان حاصل کند. در صورتی که ترافیک برای ارسال وجود نداشته باشد DPD Hello  هم ارسال نمیشود

 

تنظیم سرویس DPD :

با اعمال دستور اول در سطح پیکربندی سراسری این سرویس فعال میگردد و با اعمال دستور دوم غیرفعال میگردد

انتخاب عددی در بازه 10 تا 3600 ثانیه جهت تعیین فواصل زمانی بین ارسال بسته های KeepAlive  است

انتخاب عددی در بازه 2 تا 60 ثانیه جهت تعیین زمانی است که بسته های KeepAlive  به مقصد نرسیده انده و باید مجددا ارسال شوند.

 

مثال :

دستور زیر تنظیم DPD در حالت On-Demand  است که در این حالت زمانی که نیاز به ارسال بسته DPD باشد مسیریاب در هر 10 ثانیه اقدام به ارسال آن میکند  (برای غیرفعالسازی از دستور دوم استفاده میشود)

مثال :

دستور زیر تنظیم DPD در حالت Periodic  است که در این حالت مادامی که ارتباط IPSec  بین دو مسیریاب برقرار است، مسیریاب در هر 10 ثانیه اقدام به ارسال بسته های DPD  میکند (برای غیرفعالسازی از دستور دوم استفاده میشود)