بررسی قابلیتهای راهکار NSX-T Data Center – بخش سوم
در مبحث اول و دوم بررسی راهکار NSX-T Data Center موضوع طراحی این راهکار و آخرین قابلیتهای مدیریتی آن در نسخه NSX-T 3.1.3 به بحث گرفته شد و در ادامه این موضوع نتایج دست یافته در خصوص قابلیتهای امنیتی این راهکار مطرح میگردد. شواهد حاکی از آن است که در راهکار NSX-T معماری امنیت در کلاس Next-Generation Firewall بکار گرفته شده است و این راهکار ضمن ارائه پوشش امنیتی در تمامی لایههای شبکه (از لایه 2،لایه 3 تا لایه 7) با افزودن قابلیتهای شناسایی و جلوگیری از نفوذ (IDS/IPS) به میزان بالایی توانسته است مخاطرات سرویسهای فناوری را با بکارگیری آخرین شیوههای کنترل هوشمند امنیت تامین نماید. همانطور که خواهید دید متوجه میشوید که موضوع امنیت در سطح مفهوم "شبکه مبتنی بر نرمافزار" یا Software-Defined Network (SDN) که در NSX-T به ظهور رسیده است فراتر از استقرار یک فایروال امنیتی در مرکز داده است. کنترل جریانداده از سطح کارت شبکه مبدا تا مقصد، اعمال کنترلرهای امنیتی در درون هسته هایپروایزر، ارتباط امن تمامی بخشهای راهکار، پشتیبانی از کلاسترینگ، پشتیبانی از شیوههای رمزگذاری مدرن جریان دادهها، عملکرد توزیع پذیر قوانین امنیتی، پشتیبانی از شیوههای مختلف تانلینگ براساس IPsec، تسهیل مسائل امنیتی شبکه در بخش DevOps، و بکارگیری طیف گستردهای از سازوکارهای امنیتی نظیر MAC Spoofing، IP Spoofing، VLAN Spoofing، BPDU Filter، Rate Limit، و DHCP Filter براساس پروفایل امنیتی هر شبکه مجموعهای از قابلیتها را ارائه میدهد که تنها در سطح SDN دسترس پذیر است و نه یک فایروال یا UTM مستقر در رک مرکزداده. با عرضه این قابلیتها و بسیاری دیگر NSX-T معماری Zero Trust Network را تحقق بخشیده است و در عین حال توانسته است به سادهترین شیوه مدیریت امنیت جامه عمل بپوشد.
قابلیتهای امنیتی
در کنکاش اول اجازه دهید تا چند و چون موضوع فایروال یا نحوه کنترل دسترسیها در NSX-T Data Center را به کنکاش بگیریم. فایروال این راهکار که با نام Distributed Firewall (DFW) شناخته میشود قوانین امنیت اتخاذ شده را در لایه 2 و لایه 3 بخوبی پشتیبانی میکند و به طور همزمان به نودهای انتقال (Host Transport Node) ارسال میکند. قابلیتهایی نظیر شناسایی مبدا، شناسایی مقصد، شناسایی و تاییدهویت کاربر، تخصیص دسترسی زمانبندی شده، شناسایی نوع سرویس همگی از عواملی میباشند که از طریق نوشتن یک قانون دسترسی (ACL) میتوان بر مبنای آن هدایت جریان داده را مدیریت نمود. حتی این امکان وجود دارد تا شناسایی مبدا و مقصد جریان داده با توجه به نوع بارکاری ماشینمجازی، کانتینر، و یا سرور فیزیکی (براساس کارت شبکه، آدرس IP، آدرس MAC) مشخص گردد و از آنجایی که این قوانین به صورت توزیع پذیر در کل یک مرکزداده اعمال میگردد تمامی سرویسهای مستقر قادر به دریافت یک نسخه از این سیاستها میباشند.
در هنگام نوشته شدن یا بهروزرسانی یک قانون امنیتی جدید و یا ایجاد یک شبکه جدید آنچه در لایههای زیرین NSX-T اتفاق میافتد تماما براساس "سیاست" یا Policy هدایت و انجام میشود. به تعبیری NSX-T تماما Policy driven است. بگذارید موضوع را بیشتر بشکافیم. همانطور که پیشتر توضیح داده شد NSX-T از Management Plane، Control Plane، و Data Plane تشکیل شده است که به ترتیب میتوان از آن با عنوان لایه مدیریت، لایه کنترل، و لایه عملیات نام برد. فرض کنید یک قانون دسترسی جدید بایستی ایجاد گردد و در تمامی سرویس های مرکزداده اعمال گردد. برای این کار این قانون با استفاده از رابط کاربری NSX-T ثبت میگردد. پیکربندی درج شده فایروال حال بایستی به سطح کنترلر و بعد از آن عملیات منتقل شود. به این منظور در معماری NSX-T کامپوننتی وجود دارد به نام Central Control Plane یا CCP. وظایف آن برعهده بخشی با نام Application Proxy Hub یا APH است و این بخش به گونهای برنامهریزی شده است تا اطلاعات پیکربندی دریافتی را در یک پایگاه داده با نام Corfu Database ذخیره کند. نسخه ذخیره شده از طریق فرآیند مشخصی به سایر Management Appliance های حاضر در کلاستر انتقال داده میشود تا در صورت بروز وقفه در عملکرد یکی از اجزا مدیریت NSX-T قابل دسترس باشد.
بعد از ذخیره این اطلاعات Application Proxy Hub (َAPH) انتقال پیکربندی به لایه داده را پیش میبرد. این کار از طریق برقراری ارتباط لایه کنترل با لایه داده شکل میگیرد. بدین ترتیب در ابتدا نود های مستقر در Data Plane بایستی فرآیند Host Transport Preparation را با موفقیت پشت سر گذارند، فرآیندی که NSX-Proxy یا آنچه از آن Transport Node Proxy یا TN-Proxy نامیده میشود بر روی هایپروایزر/سرور فیزیکی نصب گردد و با این کار آن نود آماده دریافت دستورات NSX-T از لایه بالا شود. بهطور مشخص در معماری NSX-T در سطح عملیات کامپوننت Local Controller Plane یا LCP ایجاد شده است که به گونهای Tn-Proxy وظایف آن را در عمل اجرا مینماید. با برقراری ارتباط میان APH و Tn-Proxy دستورات و پیکربندی قوانین به این بخش رسیده و Tn-Proxy آنها را در یک پایگاه داده از نوع Non-Persistence با نام NestDB ذخیره مینماید. اطلاعات این پایگاه داده در حافظه سیستم ثبت، اجرا و ذخیره میگردد و تنظیمات ماژول Data Path شکل میگیرد. این ماژول در هایپروایزر vSphere ESXi وجود دارد و شامل دو زیر ماژول VMware Internetworking Service Insertion Platform (VSIP) و VMware Deep Packet Inspection (VDIP) میباشد. در اینجا ابتدا قوانین لایه 2، لایه 3 و همچنین لایه 7 دریافت میشود و براساس آن VSIP برنامهریزی میشود. VSIP با دریافت قوانین آنها را بر روی کارت شبکه ماشین مجازی بارگذاری میکند جریان دادهها از همان بدو ورود و خروج کنترل میگردد. سپس قوانین لایه 7 به ماژول VDIP انتقال داده میشود تا در آنجا از بستههای شبکه اطلاعات استخراج گردد و به ماژول VSIP انتقال داده شوند.
در معماری NSX-T دو موضوع ابتدایی مورد اشاره شده یعنی مورد اول رابط مدیریتی NSX-T NSX-T Management UI)) و مورد دوم مفهوم Central Control Plane به لحاظ فیزیکی در NSX-T Management Appliance روی میدهد، اما موضوع سوم یعنی مفهوم Local Control Plane در لایه Data Plane اتفاق میافتد که بایستی فرآیند آن در هایپروایزر/سرور فیزیکی اجرا گردد. طبق این طرح ارتباط میان لایه Control و لایه Data با تخصیص گواهینامه امنیت و براساس پروتکل NSX-RPC با پورت 1234 و 1235 انجام میپذیرد. این ارتباط از APH در لایه Control نشات میگیرد تا به TnProxy لایه داده در لایه Data برسد. در طی همین فرآیندها آمار جریان داده و بستههای منتقل شده به لایه کنترل انتقال داده میشود.
سازوکار فایروال NSX-T به ترتیبی است که پیکربندی به صورت توزیع شده انجام میپذیرد و همزمان میشود، تصمیمگیری در خصوص عبور یا مسدود سازی جریان داده از بدو شکلگیری جریانداده از کارت شبکه ماشینمجازی محقق میگردد و این دو فرآیند کلیدی سبب میشود سرعت عملکرد ارتباط سرویسها با یکدیگر و به بیرون از مرکزداده فوق العاده تسریع گردد و امنیت سرویسها در شیوهای که به آن Micro-Segmentation یا "شبکهبندی ریز" میگویند انجام پذیرد.
بسیار خوب، در کنکاش دوم به بررسی موضوع نحوه مواجه راهکار NSX-T به مخاطرات خروج از دسترسی لایه مدیریت میپردازیم. نودهای مدیریتی NSX-T یا NSX-T Management Appliance وظیفه مدیریت تمامی بخشهای SDN را برعهده دارند و این کار از طریق ایجاد NSX-T Management Cluster انجام میشود. رابط کاربری موجود در vSphere تنها قابلیت مشاهده تنظیمات نود های مدیریتی را فراهم میسازد و دسترسی به تنظیمات NSX-T بزودی از طریق یک NSX-T Extension تسهیل خواهد شد. تعداد و منابع این نودها براساس محیط قابل برنامهزیزی است و به طور متداول 3 نود استقرار مییابد. با توجه به نقش کلیدی این لایه معماری استقرار آن در 2 شیوه امکان پذیر است تا مخاطراتی مانند هدف گرفتن و خروج از دسترسی این رابط مدیریت، باعث بروز قطع ارتباط یا از دست رفتن مدیریت شبکه مرکزداده نگردد. سبک High Availability و سبک Load-Balancing. در سبک High Availability 3 اجرا از NSX-T Management Appliance مستقر میگردد و تنها یکی از Appliance ها بهعنوان Leader یا رهبر انتخاب میشود و مسئولیت هدایت جریان داده و همچنین پیکربندی را برعهده میگیرد. این اجرا جریان داده را به یک Virtual IP Address (VIP) اختصاصی ارسال میکند و مدیریت هدایت جریان دادهها با ارتباط با این آدرس محقق میشود. درصورت بروز هرگونه مخاطره و وقفه در عملکرد اجرای اصلی (Leader) یکی دیگر از اجراها با اندکی وقفه وارد مدار خواهد شد و بستههای فوروارد شده از VIP را دریافت میکند و جایگزین خواهد نمود. در ساختار NSX-T Manager یک کامپوننت اصلی تعبیه شده است با نام Proton Component و عملکردهایی همچون سوئیچینگ توزیع شده، مسیریابی توزیع شده، فایروال توزیع شده و بسیاری دیگر از امور را انجام میدهد. از آنجایی که این کامپوننت تمامی پیکربندی را از پایگاه داده CorfuDB میخواند با از دست رفتن نود اصلی، دادهها محفوظ مانده و بدون از دست رفتن اطلاعاتی حفاظت از سرویسها ادامه مییابد.
اما در سبک Load-Balancing هر اجرا به صورت مجزا عمل میکند و هدایت جریان داده از طریق هر یک از Appliance ها امکانپذیر است. در این حالت با تهدید و خروج از سرویس یکی از اجزای مدیریت راهکار تنها بخشی از شبکه دچار مخاطره خواهد شد و سایر بارهای کاری در وضعیت فعال به کار ادامه خواهند داد. در این حالت توزیع بار شبکه میان سرویس به صورت Active/Active انجام میشود و جریان داده های Stateless بخوبی میتوانند از آن بهره ببرند.
علاوه بر موارد بیان شده که در دو سبک معماری لحاظ شده است در طراحی NSX-T Data Center سازوکاری وجود دارد با نام Sharding و در این سازوکار ارتباط میان کامپوننت های CCP با LCP توزیع پذیر شکل گرفته است. به عبارتی هر CCP مسئول کنترل تعدادی از LCP ها میباشد و در صورت بروز حادثه در بخشی از مرکزداده و از دست رفتن یک Manager Node ارتباط CCP در سطح دو نود دیگر برقرار میگردد.
جمعبندی
در اینجا سعی گردید با بیان معماری امنیت در سطح فایروال توزیع یافته (DFW) و همچنین معماری High Available راهکار NSX-T Data Center مختصری توانمندیهای این راهکار در جهت مقابله با تهدیدات و حفظ امنیت رویکرد شبکه مبتنی بر نرمافزار تاکید گردد. مدیریت امنیت در لایه های مختلف و آن هم با سازکارهای امنیتی متفاوت و گوناگون خدمتی است که تنها از رده راهکارهای SDN قابل انتظار و تحقق است. واضح است که بیان تمامی قابلیتهای امنیتی فرصت مناسبی را میطلبد و بایستی در زیر عنوان امنیت به سایر موضوعات پرداخت و در زمان مناسب جهت تحقق این موضوع اقدام می گیرد. دور از تصور نیست که در سایر سازوکارهای امنیتی NSX-T با نمونه مشابه دو مورد بالا روبرو شوید، طرح هایی با اصول درست که خود ضامن پایداری، امنیت، و چابکی در مدیریت ارتباطات در سطح مرکزداده است.