DesignPatterns:data link and network layer trust boundary isolation

از OCCC Wiki
پرش به ناوبری پرش به جستجو

جداسازی قابل اعتماد مرز بین پیوند داده ها و لایه شبکه


مشکل

دستگاه های مختلف دارای محدوده آدرس IP مشابه هستند یا به سوییچ مشابه متصلند. جداسازی ترافیک شان برای جلوگیری از همپوشانی مزز قابل اعتماد بین آنها، تبدیل به یک اولویت شده است.

راه حل

ایجاد VLAN های کمکی (VLAN خصوصی هم نامیده می شوند) برای جداسازی ترافیک روش ایده آلی برای رسیدن به هدف است. (یک LAN یا شبکه محلی، شبکه ای شامل یکسری دستگاه هایی است که اگر پیامی از یک دستگاه یا وسیله ای که به این شبکه متصل است ارسال شود، تمام دستگاه های عضو شبکه ، آن را دریافت می کنند.

VLAN کوتاه شده عبارت Virtual LAN ( Virtual Local Area Network ) است. شبکه های محلی مجازی، یعنی LAN هایی که به صورت مجازی پیاده سازی می شوند. در واقع در VLAN ،یک LAN بزرگ با یک محدوده پوششی به همان اندازه بزرگ را به VLAN های کوچکتر با محدوده پوششی کوچکتر تقسیم می شود و در حقیقت این عمل باعث صرفه جویی در پهنای باند، امنیت بیشتر، جلوگیری از صرف هزینه زیادی برای خریدن سوییچ و برخوداری از یک طراحی منعطف برای شبکه می شود.)


کاربرد

با توجه به مدل طراحی، VLAN های کمکی هم روی سوییچ فیزیکی یا مجازی پیکربندی خواهند شد. این پیکربندی به جداسازی ترافیک در لایه دو مدل OSI کمک می کند. در نتیجه، از اشتراک مرز و تجاوز لایه دو هم جلوگیری می شود. (مدل OSI يا(Open System Interconnection) يك مدل مرجع براي شبکه ها می باشد كه در سال 1980 طراحي گرديده است. اين مدل بر اساس لايه بندي قراردادهاي برقراري ارتباط كه همزمان روي دو سيستم مرتبط اجرا شده اند پايه ريزي شده است كه اين امر موجب افزایش سرعت و دقت ارتباط می شود و اين قراردادها بصورت طبقه طبقه در هفت لايه تنظيم شده اند كه در شکل1 نشان داده شده است.)

OSI layers.PNG

شکل1- هفت لایه مدل OSI


مشکل

این مشکل را می توان از زوایای مختلف در محیط های مجازی و فیزیکی توصیف کرد. گرچه تمام طبقه بندی های مختلف دارای یک هدف روشن: مرزهای قابل اعتماد مشترک هستند. مشکل به کمک دو مثال مختلف- مشکل در محیط فیزیکی و مشکل در محیط مجازی، توضیح داده می شود.

محیط فیزیکی- ارائه دهنده ابر به یک مصرف کننده ابری با شعبه ها و بخش های مختلف، خدمات ارائه می دهد. هر بخش، از یک یا چند سرور اختصاص داده شده به واحد کسب و کارشان استفاده می کنند؛ براساس طراحی، ارائه دهنده ابر، سرور ها را به سوییچ یکسان متصل می کند. با اینکه سرورها در سوییچ های یکسان هستند و محدوده آدرس IP یکسانی به آن ها اختصاص داده شده است، مصرف کننده ابر تقاضای جداسازی کامل ترافیک بین سرور هایی که به واحد های کسب و کار مختلف سرویس می دهند، دارد.

محیط مجازی- ارائه دهنده سرویس، سرویس پلت فرم به عنوان سرویس را به مشتری ابر A و B برای توسعه برنامه کاربردی ارائه می دهد. مشتری و سرویس دهنده هر کدام از پایگاه داده مختلفی که روی یک سرور پایگاه داده مشترک، استفاده می کنند. برای بهبود عملکرد و زمان پاسخ، ارائه دهنده سرویس از محدوده IP یکسان برای سرور های پایگاه داده و سرور های برنامه کاربردی استفاده می کند تا از مسیریابی و فیلتر شدن جلوگیری کند و موجب لایه ی سوم مرز قابل اطمینان می شود. مرزهای قابل اطمینان روی لایه دوم و سوم، به یک مهاجم فرصت حمله به لایه 2و3 را می دهد که چندین مشتری را تحت تاثیر قرار می دهد. همان طور که در شکل2 نشان داده شده است، تمام سرورها به یک سوییچ فیزیکی یا مجازی متصل هستند، در نتیجه، آن ها می توانند ترافیک ارسالی به سرور های دیگر را ازطریق اجرای برنامه های جاسوسی(sniffer) بدست بیاورند.

Because all servers are connected to the same switch, they share a trust boundary - causing a trust boundary overlap (1).png

شکل2-از آنجایی که همه سرورها به یک سوییچ متصل هستند، یک مرز قابل اعتماد را به اشتراک می گذارند- موجب مرز قابل اعتماد مشترک می شود.


راه حل

VLAN های خصوصی در حالی که امنیت را بهبود می بخشند، می توانند ترافیک و مرزهای امن را جداسازی کنند. VLAN های خصوصی، قسمت هایی از مرزهای محلی هستند که اجازه ی بخش کردن VLAN به دو یا چند بخش جدا یا متصل به هم را می دهد. این بخش بندی براساس پورت انجام می شود. برای مثال، پورت A، می تواند یک بخشی از VLAN خصوصی A باشد و پورت B، می تواند یک بخشی از VLAN خصوصی B باشد.


کاربرد

از مکانیزم VLAN خصوصی، برای حل هر دو مشکل محیط فیزیکی و مجازی استفاده می شود. مدل های مختلف VLAN خصوصی عبارتند از: VLAN خصوصی جدا(Isolated)، VLAN خصوصی ارتباطی (Community ) و VLAN خصوصی بی قاعده(Promiscuous) است.

  • VLAN خصوصی جدا- یک پورت جدا، به غیر از پورت های بی قاعده در دامنه VLAN خصوصی، با پورت های دیگر نمی تواند تبادل اطلاعات کند.
  • VLAN خصوصی ارتباطی- دستگاه ها یی که به پورت های ارتباطی یکسانی متصل هستند، می توانند با یکدیگر و یا دستگاه هایی که به پورت های بی قاعده متصل هستند، ارتباط برقرار کنند، اما با دستگاه هایی که به پورت های جدا یا پورت های ارتباطی دیگر متصل هستند، نمی توانند ارتباط برقرار کنند.
  • VLAN خصوصی بی قاعده- دستگاه هایی که به این پورت ها متصل هستند، می توانند با دستگاه هایی با انواع دیگر پورت های VLAN خصوصی ارتباط برقرار کنند.


Jadval ravabet.PNG


راجع به مشکل در محیط فیزیکی:

قبل از استفاده از الگو، مطابق شکل 3، همه سرورها می توانند با یکدیگر ارتباط برقرار کنند. تنها این مسئله باعث اشتراک مرز قابل اطمینان نمی شود، اما فرصت خوبی برای متجاوزان علاقه مند ایجاد می کند که به کمک یک ترافیک مشترک بین لایه دو و سه، می توانند حمله کنند. از آنجایی که سرور های مصرف کننده ابر از محدوده IP یکسانی استفاده می کند، باید در یک زیرشبکه باشند. بنابراین، باید عضو یک VLAN باشند. بنابراین، VLAN بهتر است در لایه فیزیکی، پیکربندی شود. که اجازه می دهد، ترافیک سرور های مصرف کننده ابر، از ترافیک دیگر مصرف کننده های ابر یا سرورهای دیگر در زیرشبکه های مختلف جدا شود، اما همچنان با یکدیگر در ارتباط هستند.


A new Vlan2.PNG

شکل3- یک VLAN جدید ایجاد شد، و سرور های یک مصرف کننده به آن VLAN اضافه شد(2). یک VLAN دیگر ایجاد شد و سرور های مصرف کننده دوم به این VLAN اضافه شد(3).


در سوییچ فیزیکی، پورت های ارتباطی VLAN خصوصی باید مشخص شوند. سپس، سرور های هر واحد کسب و کار باید در یکی از VLAN های ارتباطی قرار داده شوند. گرچه آن ها قسمتی از یک VLAN اصلی هستند و دارای محدوده IP یکسانی هستند، ولی چون متعلق به دو VLAN خصوصی مختلف هستند، برقراری ارتباط بین این دو ممنوع است.


Two community-private VLANs.PNG

شکل4-دو VLAN خصوصی-ارتباطی در سمت راست (3)VLAN ایجاد شدند. دو سرور به(4.1) VLAN زرد اضافه شدندف و سرور دیگری به (4.2) VLAN سبز اضافه شدند. گرچه هر سه سرور متعلق به یک VLAN است، ولی از آنجایی که متعلق به دو VLAN خصوصی مختلف هستند، برقراری ارتباط بین این دو ممنوع است.


همان طور که در شکل4 نشان داده می شود، همه ی سرور ها به سوییچ متصل اند، و عضو یک VLAN هستند. سرور های هر کسب و کار در یک بخشی از یک پورت ارتباطی VLAN خصوصی قرار داده شده اند. بین سرورها ی بسته های مختلف پورت های خصوصی ارتباطی، هیچ ارتباطی وجود ندارد. اما سرور های داخل هر بسته پورت ارتباطی، می توانند با یکدیگر در ارتباط باشند. این روش همچنین برای جداسازی مرزهای قابل اعتماد و ترافیک سرورهای مصرف کننده های ابری مختلف و سرویس ها، می تواند استفاده می شود. اگر سرورها در VLAN خصوصی 1، متعلق به مصرف کننده ابر A، باشند و سرورها در VLAN خصوصی 2، متعلق به مصرف کننده ابر B، باشند، این الگو مرزهای قابل اعتماد بین دو مشتری مختلف را جدا می کند. راجع به مشکل در محیط مجازی، قبل از اینکه الگو به کار گرفته شود، تمام سرور ها می توانند با یکدیگر ارتباط برقرار کنند. سرور های مصرف کننده های ابر از آدرس IP یکسانی برای سرور پایگاه داده استفاده می کنند؛ آن ها نیاز دارند تا با سرور های پایگاه داده ارتباط برقرار کنند اما نیازی به ارتباط با یکدیگر ندارند. همان طور که در شکل 5 نشان داده شده است، هر سرور مصرف کننده ابر، در VLAN های خصوصی ارتباطی مختلفی قرار داده شده است، و سرور پایگاه داده در VLAN خصوصی بی قاعده قرار داده شده است.



A promiscuous VLAN1.PNG

شکل5- VLAN بی قاعده با رنگ قرمز ایجاد شده است(5)؛ سرورهای VLAN های سبز و زرد با یکدیگر سرور ها نمی توانند ارتباط برقرار کنند(6) اما، با VLAN قرمز می توانند ارتباط برقرار کنند.


حالا تمام سرور های مصرف کننده قادر به ارتباط با سرور پایگاه داده هستند؛ همچنین می توانند با دیگر سرورهایی که با هم در یک گروه VLAN خصوصی- ارتباطی هستند ارتباط برفرار کنند، اما با سرورهایی که در VLAN خصوصی- ارتباطی دیگر هستند نمی توانند ارتباط برفرار کنند. در هر دو سناریوی فیزیکی و مجازی، VLAN های اولیه در سرورهای فیزیکی ابتدا باید مشخص و پیکربندی شوند، سپس VLAN های خصوصی یا کمکی در سوییچ های مجازی، ایجاد شوند.




منبع:

http://cloudpatterns.org/candidate_patterns/data_link_and_network_layer_trust_boundary_isolation

http://www.cyberlone.com/articles-blog/network-related-articles/vlan

http://www.asr-it.ir/index.php/component/content/category/78-network

http://icnd.ir/network/index.php?s=osi&searchbutton=Go%21