ارزیابی وضیعت نقاط پایانی به کمک کلاینت Anyconnect در سیسکو ISE
در حال حاضر در اکثر شبکهها معمولا از راهکارهایی مانند اکتیودایرکتوری یا راهکارهای DLP و راهکارهای مشابه برای اعمال و کنترل سیاستهای کنترلی استفاده میشود. برای مثال ما میتوانیم از طریق اکتیو دایرکتوری اجازه استفاده از دیوایسهای ذخیره سازی را محدود یا مسدود نماییم. یا از طریق نرمافزارهای آنتیویروس سیاستهایی برای کنترل ارتباطات شبکه سیستمها تعیین و اعمال کنیم. ولی نکتهای که اینجا وجود دارد این است که در صورت نقض شدن سیاستها روشی برای کاهش دسترسی یا قرنطینه کردن نقطه پایانی وجود ندارد. علاوه براین ما نمیتوانیم در صورت تغییر وضعیت نقطه پایانی آن را مجددا ارزیابی و با توجه به شرایط جدید برای دسترسیهای آن تصمیمگیری کنیم. دقیقا اینجا همان نقطهایست که ما به راهکاری متمرکز برای کنترل و اعمال و مانیتور کردن سیاستهای شبکهای خود براساس وضعیت نقاط پایانی نیاز داریم.
ارزیابی وضعیت نقاط پایانی (Posture Assessment)
سیسکو در حال حاضر سعی کرده در راهکار ISE خود کلیه نیازمندیهای لازم برای احراز هویت، ارزیابی وضعیت نقاط پایانی و کنترل دسترسیها کاربران و نقاط پایانی در وضعیتها و شرایط مختلف را به صورت مجتمع ارائه دهد. علاوهبراین با استفاده از قابلیت Change of Authorization به صورت بلادرنگ کاربران و سیستمها را در صورت شناسایی هر نوع تغییری در وضعیت و نوع دسترسیشان، شناسایی و مجدد برای وضعیت جدید تصمیمگیری نماید.
قابلیت Posture Assessment به سیسکو ISE این اجازه را میدهد تا اگر نقاط پایانی که با سیاستهای سازمان از جمله داشتن آخرین ورژن آنتیویروس، نصب بودن آخرین Patch های ویندوز، به روز بودن دیتابیس آنتیویروس یا روشن بودن فایروال و سایر شرایط سازگار نباشند، اجازه اتصال به شبکه را نداشته باشد. بنابراین ISE میتواند متناسب با وضعیت نقاط پایانی، سیاستهای متناسب با آن ارائه دهد. بسیاری از کارشناسان امنیت مفهوم Posture Assessment را با فرآیند مربوط به استخراج هویت کاربر اشتباه در نظر میگیرند. در حالی که استخراج هویت کاربر وظیفه پروتکل 802.1x میباشد. به عبارتی پروتکل 802.1x پیشنیاز انجام Posture Assessment میباشد. در ادامه تنظیمات مورد نیاز برای Posture Assessmet را انجام خواهیم داد.
نیازمندیها سناریو
- راه اندازی سرور اکتیو دایرکتوری
- سیستم عضو دامین
- راه اندازی Enterprise root CA
- تنطیمات مورد نیاز برای فعال کردن Posture Assessment
وضعیتهای مورد انتظار برای نقاط پایانی
هر نقطه پایانی متصل به شبکه میتواند با توجه به شرایطی که دارد در یکی از وضعیتهای زیر قرار گیرد. در واقع براساس این وضعیتها نقاط پایانی دسترسیهای متفاوتی دریافت میکند.
Compliant
اگر یک نقطه پایانی کلیه شرایط سازگاری با سیاستهای تعریف شده را داشته باشد، در وضعیت Compilant قرار میگیرد.
None Compliant
در صورتی که برخی یا همه سیاستهای سازگاری بر روی نقطه پایانی نقض شده باشد، در حالت نقطه پایانی در وضعیت None Compliant قرار میگیرد. در این شرایط دسترسیهای محدودی برای این سیستم در نظر گرفته شده و در حالت قرطینه قرار میگیرد. معمولا در چنین مواقعی کاربران به سیستمهای Patch Management یا پورتال نصب نرمافزارهای مورد نیاز متصل یا هدایت میشوند. این سیستم میتواند مجددا در صورت رفع ناسازگاریها خود را مورد ارزیابی قرا داده و دسترسیهای خود را دریافت کند.
Unknown
در این حالت ISE هیچگونه اطلاعاتی در مورد وضعیت نقطه پایانی ندارد. اکثرا در چنین شرایطی نقطه پایانی به برای نصب ماژولهای لازم به پورتال Posture Assessment هدایت میشود.
تنطیمات مورد نیاز برای فعال کردن Posture Assessment
در دو پست قبلی در مورد نحوه فعالسازی دو متد احراز هویت PEAP و EAP-TLS صحبت شد. در اینجا از تنظیم مجدد آنها صرف نظر میکنیم و شما میتوانید در صورت نیاز به آنها مراجعه کنید. برای شروع ابتدا از داشبورد Central Work بر روی Posture کلیک میکنیم. قسمت Overview خلاصه از کلیه تنظیمات مورد نیاز را را به صورت مرحلهای نشان میدهد. با توجه به اینکه تنظیمات مربوط به Network Access Device را در مراحل قبلی انجام دادهایم در اینجا از تنظیم Client Provisioning Resources شروع میکنیم.
Cliecnt Provisioning Resoures
در این قسمت تنظیمات مربوط به پورتال، پروفایل و پک نرمافزاری مورد نیاز را انجام میدهیم.
ایجا پروفایل Anyconnect Posture Profile
ابتدا یک پروفایل از قسمت Resources برای Anyconnect Posture ایجاد میکنیم. تنها چیزهایی که برای آن نیاز داریم یک اسم و Server name rules که مقدار آن همان آدرس PSN میباشد. در صورتی که از چندین سرور PSN به صورت کلاستر استفاده میکنیم بهتر است آن را به صورت Wildcard وارد کنیم.
آپلود Anyconnect VPN Client
ماژول Anyconnect Compliance Module برای اجرا به کلاینت Anyconnect VPN Client نیاز دارد. بنابراین نسخه anyconnect-win-4.x-webdeploy-k9.pkg را از ساین سیسکو دانلود کرده و از قسمت Resources بر روی ISE آپلود میکنیم.
دانلود Agent مربوط به Posture Compliance Module
طبق تصویر زیر از قسمت Resouces گزینه Add را زده و با انتخاب گزینه Add Resources From Cisco Site ماژول Anyconnect Compliance Module را دانلود میکنیم.
ایجاد فایل تنظیمات Anyconnect
در ادامه از طریق Anyconnect Configuration همه تنظیمات بالا را برای استفاده در یکجا پک میکنیم.
Client Provisioning Policy
در این قسمت یک پالیسی Client Provisioning ایجاد و مشخص میکنیم که تنظیمات بالا بر روی چه سیستمهایی با چه شرایطی اعمال شود.
ایجاد پورتال Client Provisioning
در اینجا پورتالی که قرار است سیستم با وضعیت Unkown به آن هدایت شود را ایجاد میکنیم. میتوانیم این پورتال را متناسب با سازمان یا شرکتمان شخصیسازی کنیم.
ایجاد Access List ها و پروفایلهای Authorization
در این مرحله، Access لیستها و پروفایلهای Authorization مورد نیاز برای حالتهای مختلف نقاط پایانی را تعریف میکنیم. برای اینکار ابتدا از منو بخش Policy Element را انتخاب تنظیمات زیر را انجام میدهیم.
ایجاد Downloadable DACLs و Athorization Profile برای وضعیت Unknown Posture
در این پروفایل، کاربر را با استفاده از از یک Access لیست که بر روی دستگاه NAS که در اینجا سوئیچ شبکهمان میباشد، به پورتال Client Provisining هدایت میکنیم.
ایجاد Downloadable DACLs و Athorization Profile برای وضعیت Compliant Posture
ایجاد Downloadable DACLs و Athorization Profile برای وضعیت None Compliant Posture
ایجاد Condition ها، Remediation ها و مجتمع کردن آن در یک پروفایل Requirement
در این قسمت بایستی شرایطی که قرار است بر روی نقاط پایانی مانند وضعیت فایروال یا سایر موارد چک شود را تعریف میکنیم. در زیر یک Requirement با Condition فعال بودن فایروال ویندوز و Remediation برای فعال کردن آن تهریف کردهایم.
ایجاد Posture Policy
با استفاده از این سیاست کلیه نیازمندیهای امنیتی که قرار است بر روی نقاط امنیتی چک شود را به صورت یک سیاست Posturing تعریف میکنیم. در این سیاست شرایطی مانند نقاط و کاربرانی که قرار است این سیاست بر روی آنها اعمال شود هم چنین ماژول Compliance cheking به همراه نوع سیستم عاملها، نوع Posture و نیازمندیهای تعریف شده را مشخص میکنیم.
اضافه کردن Posture Status به Policy Set ها
برای اینکه بتوانیم کنترل دسترسی کاربران خود را براساس نتیجه پالیستی Posture انجام دهیم، نیاز داریم برای هر سه وضعیتی که کاربر قرار میگیرد طبق شکل زیر سیاست Authorization در Policy Set خود ایجاد نماییم.
در اینجا کار تنظیمات به اتما رسیده و میتوانیم تست خود را شروع کنیم.