درخواست های ارتباط
جستجو تنظیمات
لیست دوستان من
صندوق پیام
همه را دیدم تنظیمات
  • در حال دریافت لیست پیام ها
صندوق پیام
  • در حال دریافت لیست رویدادها
همه رویدادهای من

آموزش گام به گام راه اندازی HTTPS Inspection در فایروال TMG - قسمت اول

11 نظرات
آموزش راه اندازی HTTPS Inspection


HTTPS چیست ؟


HTTPS یا HTTP ای که به وسیله SSL امن شده است یکی از معمولترین پروتکل هایی است که امروزه در اینترنت استفاده می شود. با استفاده از HTTPS کلاینت و وب سرور می توانند ارتباطات و تبادلاتی که در بین هم دارند را بصورت کاملا خصوصی و رمزنگاری شده انجام دهند. زمانیکه شما از HTTPS استفاده می کنید نام کاربری و رمزعبور شما بصورت رمزنگاری شده و کاملا حفاظت شده از سمت کلاینت به سمت سرور ارسال می شود و همین امر باعث عدم افشای اطلاعات هویتی شما در بین راه می شود. در اینکه ارتباط end to end ای که بین کلاینت و سرور در HTTPS برقرار می شود و اطلاعات امنیتی مهم و حریم خصوصی افراد حفظ می شود شکی نیست اما برخی اوقات از قابلیت های این پروتکل سوء استفاده هایی هم می شود. همیشه به دانشجوهای عزیز در کلاسهای شبکه یا امنیت می گویم سعی کنید قبل از انجام یک کار یا وارد کردن یک تکنولوژی در مدار فرهنگ استفاده از آن را هم جا بیندازید ، خدا را شاکریم که در خصوص انجمن تخصصی فناوری اطلاعات ایران فرهنگ ایجاد محتوای با کیفیت را جا انداخته ایم ، همه اینها را گفتیم تا یک مسئله را باز کنیم ، در فرهنگ و یا بهتر بگوییم در حوزه تخصصی فایروال ها و تجهیزات امنیتی شبکه پروتکل HTTPS به عنوان Universal Firewall Bypass Protocol یا در لفظ خودمانی پروتکل جامع دور زدن فایروال شناخته می شود و دلیل این موضوع هم کاملا مشخص است ، بیشتر فایروال ها نمی توانند ارتباطاتی که از طریق پروتکل HTTP در لایه هفتم که لایه Application است و به کمک SSL رمزنگاری شده است را تفتیش ( Inspect ) کنند. از همین نقطه ضعف موجود در فایروال ها هکر ها می توانند با استفاده از تکنیک های خاص ارتباطای که از جانب کلاینت های شبکه به بیرون با استفاده از HTTPS انجام می شوند را کنترل کنند و فایروال در این میان هیچ غلطی نمی تواند بکند. البته درست است در اینجا لفظ هکر و مهاجم را بکار می بریم اما فراموش نکنیم که بزرگترین مهاجمین شبکه کاربران داخلی آن هستند ، آنها نیز از این موضوع سوء استفاده می کنند ، آنها با استفاده از HTTPS و سیستم Tunneling ای که در آن ایجاد می شود سیستم های کنترل دسترسی به اینترنت را دور می زنند و مشکلات زیادی را برای شبکه ایجاد می کنند ، برای مثال به وب سایت هایی که جیز ( Jizz ) هستند از نظر سازمان و نباید به آنها دسترسی پیدا شود دسترسی پیدا می کنند.

معرفی قابلیت HTTP Inspection در TMG 2010


فایروال Forefront Threat Management Gateway 2010 یا همان TMG قابلیت ها و امکانات بسیار زیاد و پیشرفته ای برای حفاظت از منابع شبکه های داخلی و مدیریت دسترسی به منابع عمومی موجود در اینترنت توسط کاربران دارد. تنها برخی از قابلیت های مهم TMG شامل فیلترنگ آدرس های URL ، موتور اسکن برای پیدا کردن ویروس ها و کدهای مخرب موجود در ارتباطات ، سیستم تشخیص نفوذ یا IDS و همچنین قابلیت های جلوگیری از نفوذ یا IPS می باشند. یکی از جالبترین و البته مهمترین تکنولوژی های حفاظتی که TMG ارائه می دهد به نام HTTPS Inspection شناخته می شود. قابلیت HTTPS Inspection این اجازه را به فایروال TMG می دهد که بتواند Session های خروجی از شبکه که از پروتکل HTTPS استفاده می کنند را در خود فایروال پایان بدهند یا در اصطلاح فنی Terminate کنند. خوب تا اینجا که کار شاخی انجام نشده است در واقع کار ساده ای است که پورت 443 را در فایروال بلوکه می کنیم !!! خیر سیستم کاری HTTPS Inspection بصورت کامل Session مربوط به HTTPS را پایان نمی دهد در واقع این سیستم خود را به عنوان یک واسط برای HTTPS یا بهتر بگوییم یک Proxy برای HTTPS معرفی می کند و دیگر اجازه برقراری ارتباط مستقیم بدون مدیریت به خارج از شبکه توسط HTTPS را نمی دهد. تکنیکی که در HTTPS Inspection استفاده می شود در واقع مدیون یک تکنیک هک به نام Man In The Middle یا MITM است. TMG در بین Session کلاینت و وب سرور قرار می گیرد و خود را به عنوان یک MITM مورد اعتماد معرفی می کند.زمانیکه کلاینت درخواست اتصال به یک سرور HTTPS خارج شبکه را می کند ابتدا TMG ارتباط وی را با وب سایت مقصد قطع کرده ، یک ارتباط جدید با سرور HTTPS از طریق مبدا خود یعنی فایروال TMG برقرار می کند و SSL Certificate مقصد را دریافت می کند. پس از این حالت TMG اطلاعات موجود در Certificate وب سرور را کپی کرده و با استفاده از این اطلاعات یک Certificate جدید تولید و به کلاینت ارائه می دهد. اگر کلاینت به Certificate هایی که از طریق TMG ایجاد می شوند اعتماد داشته باشد و TMG جزو Trusted Authorities باشد کلاینت حتی متوجه انجام شدن چنین موردی در شبکه نخواهد شد. خوب چه اتفاقی افتاد ؟ الان اگر کلاینتی درخواست اتصال به وب سایت امنی مثل https://www.tosinso.com را داشته باشد ، ابتدا TMG ارتباط Session خود را با این وب سرور برقرار می کند ، Certificate وب سایت مورد نظر را گرفته و Certificate خود را جایگزین آن می کند و ارتباطات دیگر از طریق TMG برقرار می شوند و TMG می تواند محتویات موجود در HTTPS را نیز مشاهده و بر حسب نیاز Policy های امنیتی خود را اعمال کند.

آموزش راه اندازی HTTPS Inspection در فایروال TMG 2010


برای اینکه بتوانید از قابلیت HTTPS Inspection برای ترافیک های خروجی HTTPS استفاده کنید وارد کنسول مدیریتی TMG شوید و به قسمت Web Access Policy بروید و بر روی Configure HTTPS Inspection در قسمت Task کلیک کنید. تصویر زیر مشابه چیزی است که در کنسول مدیریتی TMG مشاهده خواهید کرد.

تصویر اول : پیکربندی قابلیت HTTP Inspection در TMG


بعد از کلیک کردن بر روی گزینه بالا با تنظیمات HTTPS Outbound Inspection مشابه آنچه در پایین می بینید مواجه خواهید شد ، در اولین تب بر روی قسمت Enable HTTPS Inspection تیک بزنید ، این دقیقا یعنی می خواهید قابلیت HTTPS Inspection را فعال کنید.

تصویر دوم : فعال کردن HTTPS Outbound Inspection در TMG


توجه کنید که فایروال TMGبرای اینکه بتواند Certificate های وب سایت ها را از طرف خودش به کاربر نمایش دهد نیاز دارد که بتواند آنها را با یک Certificate از خودش یا یک CA داخلی Sign کند. شما می توانید به TMG بگویید که خودش یک Certificate ایجاد کند که در این حالت به آن Self-Signed Certificate گفته می شود و یا اینکه می توانید از یک ساختار Public Key Infrastructure ای که قبلا در مجموعه داشته اید استفاده کند ، در اینجا شما می توانید Certificate بدست آمده از CA داخلی را Import کنید. فعلا در اینجا ما از حالت Self-Signed استفاده می کنیم اما الزامی برای اینکار نیست ، بنابراین بر روی گزینه Use Forefront TMG to generate a certificate کلیک کنید و بر روی دکمه Generate کلیک کنید تا Certificate خودی TMG ایجاد شود ، اگر اطلاعات چندانی در خصوص ساختار CA و PKI و چگونگی راه اندازی آنها ندارید بنده قبلا یک سری مقاله کامل در خصوص این موضوع نوشته ام که می توانید از طریق لینک های زیر به آنها دسترسی پیدا کنید ، این دقیق وجه تمایز وب سایت انجمن تخصصی فناوری اطلاعات ایران با سایر وب سایت ها است :

  1. طراحی و معماری زیرساخت کلید عمومی یا PKI قسمت اول – شناسایی نیازمندیهای PKI
  2. طراحی و معماری زیرساخت کلید عمومی یا PKI قسمت دوم – طراحی ساختار سلسله مراتبی CA ها یا CA Hierarchy
  3. طراحی و معماری زیرساخت کلید عمومی یا PKI قسمت سوم – ایجاد یک طرح مدیریت Certificate
  4. راه اندازی Offline Root CA به همراه یک Subordinate Issuing CA در سرور 2008 - قسمت اول
  5. راه اندازی Offline Root CA به همراه یک Subordinate Issuing CA در سرور 2008 – قسمت دوم

تصویر سوم : ایجاد Certificate برای TMG جهت استفاده در HTTP Inspection


شما می توانید بعد از انتخاب گزینه Generate یک اسم یا Issuer name برای Certificate خود ایجاد کنید ، الزامی برای اینکار نیست شما می توانید این اسم را به حالت پیشفرض به نام Microsoft Forefront TMG HTTPS Inspection Certification Authority قرار دهید و یا اینکه مثل بنده اسم Certificate را به شکل Unity TMG HTTPS Inspection Scenario for www.tosinso.com training قرار دهید . یک تاریخ انقضاء یا Expiration Date و همچنین در صورت علاقه یک توضیح کوچک یا Issuer Statement اگر لازم بود در تصویر پایین وارد کنید و بر روی دکمه Generate Certificate Now کلیک کنید. بعد از کلیک کردن بر روی گزینه Generate Certificate Now شما می توانید Certificate ایجاد شده را مشابه تصویر زیر ببینید. زمانیکه ریز اطلاعات موجود در Certificate را مشاهده می کنید به این نکته توجه کنید که اگر حتی در قسمت قبلی گزینه Never Expire را کلیک کرده باشید در این قسمت یک تاریخ انقضاء یا expiration برای شما در نظر گرفته شده است که قسمت Valid From دقیقا همین مسئله را بیان می کند. این موضوع کاملا طبیعی است زیرا همه Certificate ها بالاخره باید روزی اعتبارشان به پایان برسد. هر Certificate ای که ایجاد می شود قطعا برای خود یک Private Key دارد که شما در اینجا در آخرین قسمت مشاهده می کنید که یک کلید طلایی با عنوان You have a private key that corresponds to this certificate را مشاهده می کنید این دقیقا همان چیزی است که HTTPS Inspection با آن کار دارد ، بر روی OK کلیک کنید تا ادامه ماجرا را پیش ببریم.

شکل چهارم : نامگذاری و ایجاد Self Signed Certificate برای TMG


خوب تا اینجای کار مشکلی نیست اما اگر یک سری عملیات ها را برای این Self Signed Certificate انجام ندهید HTTPS Inspection شما برای ارتباطات خروجی HTTPS برای کلاینت ها مشکلاتی را ایجاد خواهد کرد. با توجه به اینکه کلاینت های شما به Certificate ای که توسط TMG ایجاد شده است Trust یا اعتماد ندارند به محض اینکه به یک وب سایت اینترنتی HTTPS متصل شوند خطای قرمز رنگی برای HTTPS دریافت خواهند کرد که به خاطر عدم اعتماد به Certificate Authority ای است که توسط TMG ایجاد شده است. برای اینکه این مشکل حل شود این Certificate بایستی در لیست Trusted Root Certificate Authorities کلاینت های شبکه قرار بگیرد. برای اینکار می توانید از سرویس های Publishing موجود در اکتیودایرکتوری استفاده کنید ، بر روی HTTPS Inspection Trusted Root CA Certificate Options کلیک کنید و گزینه Automatically Through Active Directory را انتخاب کنید. با کلیک کردن بر روی این گزینه از شما نام کاربری و رمز عبور معتبر مدیر اکتیودایرکتوری درخواست می شود که با گزینه Domain Administrator Credentials این قسمت قابل دسترس می باشد. نام کاربری و رمز عبور را به شکل domain\user وارد کنید برای مثال در دامینی به نام itpro.local شما باید کاربر را به شکل itpro\administrator استفاده کنید. دقیقا مشابه تصویری که در زیر مشاهده می کنید.

تصویر ششم : Publish کردن Certificate از TMG به اکتیودایرکتوری


تصویر ششم : Publish کردن Certificate از TMG به اکتیودایرکتوری


Publish کردن Certificate در اکتیودایرکتوری


همچنین همانطور که در تصویر پایین مشاهده می کنید شما می توانید با انتخاب گزینه Manually on each client computer و دکمه Export to file فایل Certificate ایجاد شده را Export گرفته و بصورت دستی بر روی کلاینت های شبکه نصب کنید که اصلا اینکار توصیه نمی شود . البته اگر جان دارید و جان شیرین خوش دارید می توانید این فایل را بر روی تمامی کلاینت های شبک که از اینترنت TMG استفاده می کنند بصورت دستی نصب کنید ، اشکالی نداره فقط یه خورده زمانگیره D: .

تصویر هفتم : خروجی گرفتن از Certificate مربوط به TMG برای استفاده در HTTPS Inspection


اگر طبق مراحل بالا عمل کرده باشید الان Certificate مورد نظر شما توسط سرویس Active Directory در شبکه Publish شده است. حالا اگر یک کلاینت به یک وب سایت HTTPS متصل شود ، برای مثال در تصویر زیر همانطور که مشاهده می کنید به وب سایت گوگل به آدرس https://www.google.com وارد شده ایم ، فایروال TMG از طرف وب سایت و در قالب Certificate خودش یک Certificate ایجاد می کند و در اختیار کلاینت قرار می دهد. همانطور که در تصویر زیر مشاهده می کنید به وضوع مشخص است که Certificate گوگل از طرف TMG ایجاد شده است.

شکل هشتم : مشاهده Certificate ایجاد شده توسط TMG بر روی کامپیوتر کلاینت


اگر بر روی گزینه View Certificates کلیک کنید همانطور که در تصویر زیر نیز مشاهده می کنید Certificate برای بانک سامان صادر شده است اما این Certificate در شبکه شما توسط TMG صادر شده است که دقیقا نام Certificate صادر شده را می توانید به وضوح مشاهده کنید.

تصویر نهم : مشخصات Certificate مربوط به HTTPS Inspection


با کلیک کردن بر روی تب Certification Path می توانید مسیر و سلسله مراتب صدور certificate را مشاهده کنید که در اینجا همانطور که مشاهده می کنید به نام Certificate ای است که توسط TMG ایجاد شده است و خدمات بانکداری در واقع زیر مجموعه این سرویس و این گواهینامه محسوب می شوند. حتما به قسمت Certificate Status در پایین تصویر دقت کنید ، این قسمت در حالت OK قرار دارد به معنی اینکه کار به درستی در حال انجام شدن است.

شکل دهم : مشاهده سلسله مراتب صدور Certificate توسط HTTPS Inspection


تبریک می گویم ، شما توانستید سرویس HTTPS Inspection را در شبکه خود راه اندازی کنید فقط چند نکته در خصوص تنظیمات و پیکربندی های مهم این سرویس باقی می ماند که به امید خدا در مقاله بعدی به آنها خواهیم پرداخت ، راه اندازی این سرویس به همین سادگی بود که گفتیم اما ترفند ها و نکات بسیار مهم و ریزی در خصوص راه اندازی این سرویس در شبکه وجود دارد که همیشه باید مورد توجه قرار بگیرد ، اگر عمری باقی باشد در مقالات بعدی به آنها خواهیم پرداخت ، ITPRO باشید.

نویسنده : محمد نصیری
منبع : انجمن تخصصی فناوری اطلاعات ایران
هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد

برچسب ها
ردیف عنوان قیمت
1 آموزش گام به گام راه اندازی HTTPS Inspection در فایروال TMG - قسمت اول رایگان
2 آموزش گام به گام راه اندازی HTTPS Inspection در فایروال TMG - قسمت دوم رایگان
مطالب مرتبط
نظرات
  • سلام دوست عزیز
    خسته نباشید

    زمانیکه دکمه Generate Certificate Now را می زنم،خطای you do not have the necessary permissions to perform this action را می دهد.
  • با کاربر Administrator دومین وارد بشید و یا کنسول رو با استفاده از راست کلیک و انتخاب گزینه Run as Administrator باز کنید ، فراموش نکنید UAC رو هم غیرفعال کنید.
  • UNITY عزیز این کار رو کردم ولی بازم نشد
    البته اینو بگم که یک بار مجبور شدم IP مربوط به دست internal را عوض کنم.
  • از اونجاییکه Self Signed Certificate رو کاربر Local Administrator هم می تونه ایجاد کنه شما با Local Admin وارد بشید و Certificate رو ایجاد کنید و بعد برای Publish کردن نام کاربری و رمز عبور Domain Administrator رو بزنید و تست کنید.
  • tmg من اصلا عضو دامین نیست
  • سلام
    tmg server من تحت دامینه ... مراحل بالا رو انجام دادم اما وقتی به مرحله Domain Administrator Credentials می رسم و نام کاربری و کلمه عبور رو طبق ساختار مشخص شده وارد می کنم پیغام میده automatically certificate deployment failed.use the export to file ...

  • شما با چه کاربری روی TMG وارد شدید ؟ احتمالش هست شما با کاربر Local خود TMG وارد شده باشید ، حتما با Domain Admin یا Enterprise Admin وارد سیستم بشید و مجددا تست کنید.
  • سلام مهندس فکر نمی کردم اینقدر سریع جواب بدین ، ممنون از لطفتون ... من با domain administrator وارد شدم ... certificate رو Install هم کردم ... روی سرور نشون می ده ولی باز هم همون پیغام رو میده
  • یه نکته دیگه ای هم که هست اینه که من نتونستم enable ssl با پورت 8443 تو تنظیمات web proxy رو فعال کنم اون هم خطا میده میگه certificate server رو تعیین کن .. نمی دونم به این تیک ارتباطی داره یا نه؟
  • از راهنمای زیر استفاده کنید و Certificate رو روی کل Domain به عنوان Trusted معرفی کنید :
    http://technet.microsoft.com/en-us/library/dd441069.aspx
    
  • یه نکته ی بگم. وقتی ما یک SSL Web Server در TMG پابلیش کنیم TMG بصورت پیش فرض و بدون هیچگونه انجام تنظیماتی همین قابلیلت را (HTTPS Inspection( یا مشابه آن را برای کاربران اینترنت انجام می دهد.

    Because Forefront TMG terminates the SSL request from the client on the Internet and establishes a new SSL connection to the published webserver, Forefront TMG becomes an SSL client and must authenticate against the internal Webserver with an SSL client certificate.


    In the public TMG newsgroups or now in the Microsoft Technet forum, I often hear about TMG and UAG Administrators who get the error message "500 Internal Server Error – The target principal name is incorrect” when users try to access a published Webserver on the Internet. This message has nothing to do with the certificate bound on the Web Listener on the TMG Server. In an HTTP(S) to HTTPS bridging scenario, Forefront TMG terminates the SSL channel between the client on the Internet and the TMG Server and creates a new SSL channel from the TMG Server to the published web server. If the published web server has a certificate bound on the web server with a different CN as entered in the TMG publishing rule on the “To” tab, this error occurs. Forefront TMG/UAG Administrators must make sure that the name in the publishing rule matches the names in the certificate on the published web server. The following picture shows the TMG publishing rule.

    http://www.isaserver.org/articles-tutorials/general/certificate-requirements-forefront-tmg-and-uag.html
    
    ممنون مهندس آموزش خوبی بود.

برای ارسال نظر ابتدا به سایت وارد شوید

arrow