در بخش اول اين مقاله، پيکربنديIIS و در بخش دوم ،نحوه تنظيم خصلت هاي متفاوت برنامه Internet Services Manager ، با رعايت مسائل امنيتي تشريح گرديد . در اين بخش به بررسي روش هاي کنترل دستيابي به سرويس دهنده که توسط تمامي سرويس ها ( www,FTP,SMTP,NNTP ) ، قابل استفاده خواهد بود ، پرداخته مي گردد.
روش هاي کنترل دستيابي
اولين سطح ايمني در مدل امنيتي IIS ، امکان دستيابي به سرويس دهنده وب بر اساس آدرس هاي IP و يا Internet Domain Name مربوط به درخواست هاي سرويس گيرندگان است. در اين راستا مي توان ، آدرس هاي IP و يا اسامي ماشين هائي خاص را مشخص ، تا زمينه دستيابي آنان به سرويس دهنده وب فراهم و يا امکان دستيابي از آنان سلب گردد. در زمان دريافت هر يک از بسته هاي اطلاعاتي ، آدرس IP و يا نام آنان با توجه به پيکربندي انجام شده در بخش "IP address and Domain name Restrictions " ، بررسي و بر اساس سياست هاي تعريف شده ، عکس العمل لازم ارائه خواهد شد . ( گزينه فوق در بخش Directory Security Tab مربوط به جعبه محاوره اي خصلت هاي سرويس www ، وجود دارد ). زمانيکه از آدرس هاي IP بمنظور کنترل دستيابي استفاده مي گردد ، برخي از سرويس گيرندگان وب ، ممکن است از طريق يک سرويس دهنده Proxy و يا فايروال ، به سرويس دهنده وب دستيابي پيدا مي نمايند، در چنين شرايطي آدرس هاي IP بسته هاي اطلاعاتي دريافتي براي سرويس دهنده Proxy و يا فايروال ، ارسال خواهند شد .
بمنظور پياده سازي برخي از روش هاي کنترل دستيابي به سرويس دهنده وب ، مي توان از تکنولوژي هائي نظير SSL)Secure Sockets Layer) و امضاء الکترونيکي ، نيز استفاده کرد . SSL ، يک کانال ارتباطي نقطه به نقطه خصوصي ، يکپارچه و معتبر را ايجاد مي نمايد . از امضاء الکترونيکي ، بمنظور بررسي هويت يک کاربر و يا يک سرويس دهنده و يا سرويس دهندگان وب و مرورگرها بمنظور معتبر سازي دوسويه ( متقابل ) ، تضمين صحت در ارسال صفحات و يکپارچگي اطلاعات موجود در آنها ، استفاده مي گردد .
شناسائي و تائيد
بمنظور شناسائي و تائيد کاربران ، مي توان از چهار گزينه موجود در IIS استفاده کرد .
• Anonymouse Access . روش فوق ، متداولترين گزينه براي دستيابي به يک سرويس دهنده وب است. IIS ، بدين منظور account هائي با نام IUSR_Computername و IWAM_Computername را بصورت پيش فرض، ايجاد مي نمايد. account فوق ، داراي مجوزهاي زير خواهد بود :
Log on locally , access this computer from network and log as a batch job
• کاربران در زمان دستيابي به منابع سرويس دهنده بر روي وب،بصورت اتوماتيک توسط account فوق ، به شبکه وارد خواهند شد. در ادامه کاربران با توجه به مجوزهاي تعريف شده در رابطه با account فوق ، قادر به دستيابي منابع موجود خواهند بود. نام account در نظر گرفته شده را مي توان با استفاده از گزينه Edit تغيير داد . پيشنهاد مي گردد ، مجوزهاي Log on as a batch job و access this computer from network ، در رابطه با account فوق حذف گردد ( در صورتيکه ضرورتي به استفاده از آنان وجود ندارد ) .
نکته : زمانيکه سرويس IIS ، متوقف و مجددا" راه اندازي و يا سيستم راه اندازي مجدد (Reboot ) مي گردد ، مجوزهاي Log on as a batch job و access this computer from the network ، براي accout هاي IUSR_Computername و IWAM_Computername ، مجددا" در نظر گرفته خواهد شد (Restore ) . در صورتيکه تاکيد بر حذف مجوزهاي فوق وجود داشته باشد ، مي توان يک Local user account جديد را ايجاد و آن را بعنوان account پيش فرض Anonymouse براي سرويس IIS در نظر گرفت .( بخش Anonymouse access and authentication control مربوط به Directory Security Tab سرويس www و يا Account Tab مربوط به سرويس FTP ) . پس از انجام عمليات فوق ، مي توان IUSR_Computername ، را حذف کرد.
• Basic Authentication ، تقريبا" تمامي مرورگرهاي وب موجود ، از روش فوق حمايت مي نمايند . در اين روش ، نام و رمز عبور کاربر بصورت متن (Clear text ) ، ارسال مي گردد . بديهي است در چنين مواردي امکان تشخيص و کشف اطلاعات ارسالي براي افراديکه ترافيک موجود در شبکه را مانيتور مي نمايند ، وجود خواهد داشت . در صورتيکه تاکيد بر استفاده از روش فوق وجود داشته باشد ، پيشنهاد مي گردد که بهمراه آن از SSL استفاده گردد . ترکيب SSL با روش Basic Authentication ، امکان رهگيري و کشف اطلاعات ارسالي را کاهش خواهد داد . بدين منظور لازم است مراحل زير دنبال گردد :
مرحله اول : استفاده از يک Server Certificate
مرحله دوم : استفاده از يک کانال ايمن در زمان دستيابي به منابع
مرحله سوم : فعال نمودن Basic authentication و غيرفعال نمودن Anonymouse و Integrated Windows authentication براي سايت مورد نظر.
• Digest Authentication ، روش فوق امکاناتي مشابه Basic Authentication را ارائه ولي از روش متفاوتي بمنظور ارسال اطلاعات حساس و معتبر ، استفاده مي نمايد . سرويس دهنده ، اطلاعاتي را شامل نام و رمز عبور کاربر بهمراه اطلاعات اضافه ديگر و يک Hash ( محاسبه مي گردد ) را براي سرويس گيرنده ارسال مي دارد . در ادامه Hash ، بهمراه ساير اطلاعات اضافه براي سرويس دهنده ارسال مي گردد . زمانيکه سرويس دهنده اطلاعات را دريافت مي نمايد ، آنان را با نام و رمز عبور ترکيب و يک Hash را بدست مي آورد . در صورتيکه hash هاي مربوطه با يکديگر مطابقت نمايند ، کاربر تائيد مي گردد. در صورتيکه روش فوق فعال و ساير روش ها غير فعال گردند ، يک pop up box ، نمايش و کاربر مي بايست نام و رمز عبور خود را جهت ورود به سايت مشخص نمايد . اطلاعات فوق ، بصورت رمزشده و وارونه ذخيره خواهند شد . بمنظور فعال نمودن ويژگي فوق ، مديران شبکه مي بايست يک password policy را در اين رابطه تعريف تا امکان استفاده از روش فوق ، فراهم گردد . در صورت عدم تعريف Password policy ، امکان استفاده از روش فوق، وجود نخواهد داشت . بمنظور فعال نمودن Password Policy مي بايست :
در ويندوز 2000 ، Computer Configuration|Windows Settings | Security Settings | Account Policies | Password policy را انتخاب و گزينه Store Passwords using reversible encryption for all users in the domain ، فعال گردد. ( گزينه فوق بصورت پيش فرض غير فعال است ) . پس از فعال شدن سياست فوق و زمانيکه کاربر رمز عبور و يا نام خود را تغيير و يا يک Account جديد ايجاد گردد ، رمز عبور بصورت رمز شده و وارونه ذخيره مي گردد .
• Integrated Windows Authentication ، روش فوق از رمزنگاري مبتني بر Hashing بمنظور تائيد رمز عبور استفاده مي نمايد . نام و رمز عبور واقعي هرگز در شبکه ارسال نخواهد شد ، بنابراين امکان کشف و تشخيص آن توسط يک منبع ناامن و تائيد نشده ، وجود نخواهد داشت . تائيد کاربران مي تواند با استفاده از پروتکل Kerberos V5 و پروتکل Challenge/response صورت پذيرد . روش فوق، گزينه اي مناسب براي استفاده در اکسترانت ها نخواهد بود ، (امکان فعاليت آن از طريق يک سرويس دهنده Proxy و يا ساير برنامه هاي فايروال وجود نخواهد داشت) . از روش فوق بمنظور برپاسازي اينترانت هاي ايمن ، استفاده مي گردد.
پيکربندي IIS مي تواند بگونه اي صورت پذيرد که امکان استفاده از ترکيب روش هاي تائيد اعتبار و Anonymouse در آن پيش بيني گردد . در چنين مواردي ، مي توان اين امکان را براي يک سايت فراهم آورد که داراي بخش هاي متفاوت ايمن و غيرحساس باشد . زمانيکه از يک مدل Authentication بهمراه Anonymouse استفاده مي گردد ، کاربران همواره و در حالت اوليه با استفاده از IUSR_Computername به سايت Log on خواهند نمود . زمانيکه درخواستي Fail گردد ( با توجه به عدم وجود مجوزهاي لازم بمنظور دستيابي به يک منبع ) ، پاسخي براي سرويس گيرنده ارسال که نشاندهنده عدم وجود مجوز لازم براي دستيابي به منبع مورد نظر است . همراه با اطلاعات فوق ، ليستي از مدل هاي متفاوت تائيد اعتبار که توسط سرويس دهنده حمايت مي گردد، نيز ارسال خواهد شد . مرورگر سرويس گيرنده در اين راستا به کاربر پيامي را نمايش و از وي درخواست نام و رمز عبور را خواهد کرد . در ادامه اطلاعات مورد نظر ( نام و رمز عبور کاربر ) براي سرويس دهنده ارسال خواهد شد ، در صورتيکه کاربر داراي مجوز لازم باشد ، امکان استفاده از منبع مورد نظر براي وي فراهم خواهد شد .
مديريت فهرست (Directory )
علاوه بر مجوزهاي مربوط به فايل و فهرست ها که در سطح سيستم عامل برقرار مي گردد ، IIS ، امکاني با نام Application level Permission را ارائه نموده است . در اين راستا ، امکان انتخاب گزينه هائي نظير : Read , Write , Directory Browsing ,Scripts only و Scripts and executables وجود داشته و مي توان از آنان بهمراه فهرست هاي شامل محتويات مربوط به سرويس هاي www و FTP استفاده کرد .
• Read . مجوز فوق ،امکان مشاهده و ارسال محتويات براي مرورگر سرويس گيرنده را فراهم مي نمايد .
• Write . مجوز فوق، به کاربراني که مرورگرآنان داراي ويژگي PUT ( مربوط به پروتکل استاندارد HTTP 1.1 ) است ، امکان Upload نمودن فايل هائي براي سرويس دهنده و يا تغيير محتويات يک فايل write-enabled را خواهد داد . گزينه فوق ، در اختيار کاربران قرار داده نمي شود و صرفا" مديريت مربوطه به نوع خاص و محدودي از مجوز فوق ، نياز خواهد داشت .
• Directory Browsing ، مجوز فوق ، به يک سرويس گيرنده امکان مشاهده تمامي فايل هاي موجود در يک فهرست را خواهد داد . از مجوز فوق صرفا" در رابطه با سرويس دهندگان عمومي FTP استفاده و در ساير موارد ، استفاده ازمجوز فوق ، توصيه نمي گردد .
• Scripts . مجوز فوق ، امکان اجراء را در سطح اسکريپت ها محدود خواهد کرد . در موارديکه از برنامه هاي CGI و يا ASP استفاده مي گردد ، استفاده از مجوز فوق ، لازم خواهد بود. انشعاب فايل هاي مربوط به اسکريپت ها مي بايست قبلا" به برنامه هاي Scripting مربوطه ، map شده باشد .
• Scripts and Executables . مجوز فوق ، امکان اجراي برنامه هاي EXE و يا DLL را فراهم خواهد کرد( علاوه بر امکان اجراي فايل هاي ASP و CGI ) . با توجه به حساس بودن مجوز فوق ، استفاده از آن بجزء در موارد خاص و کاملا" کنترل شده ، توصيه نمي گردد .
مجوزهاي فوق را مي توان همزمان با نمايش جعبه محاوره اي مربوط به خصلت هاي www و FTP ، تنظيم نمود .
اعمال محدوديت در رابطه با سرويس دهندگان و فهرست هاي مجازي
سرويس دهندگان مجازي ،اين امکان را فراهم مي آورند که کامپيوتري که بر روي آن IIS اجراء شده است، قادر به حمايت از چندين Domain Names ( وب سايت ) باشد.در زمان پيکربندي يک سرويس دهنده مجازي براي ايجادسرويس دهنده Primary و هر يک از سرويس دهندگان مجازي ، به اطلاعاتي نظير:
( Host Header Names(NHN و يا آدرس هاي IP ، نياز خواهد بود. بدين ترتيب ، يک سرويس دهنده که بر روي آن IIS نصب و شامل صرفا" يک کارت شبکه است ، قادر به مديريت سايت هاي متعدد خواهد بود.
IIS ، امکان تعريف يک نام مستعار براي فهرست هاي حاوي اطلاعات مورد نياز براي انتشار بر روي سايت را خواهد داد . نام فوق ، بعنوان يک دايرکتوري مجازي شناخته شده و در آدرس هاي URL مي توان از آنان استفاده کرد. دايرکتوري هاي مجازي از منظر ملاقات کننده سايت ، فهرست هائي هستند که از دايرکتوري اصلي wwwroot / ، انشعاب شده اند . در رابطه با دايرکتوري هاي مجازي نيز مي توان سياست هاي امنيتي خاصي را اعمال نمود. در اين راستا مي توان از مجوزهاي Read,Write,Directory Browsing,Script only و Scripts and executables ، استفاده کرد. مجوز Read ، اين امکان را به يک سرويس گيرنده خواهد داد تا فايل هاي ذخيره شده در يک دايرکتوري مجازي و يا زيرفهرست مربوطه را Download نمايد . صرفا" دايرکتوري هائي که شامل اطلاعات مورد نياز براي نشر و يا Download مي باشند ، مي بايست داراي مجوز Read باشند . بمنظور ممانعت از Download نمودن فايل ها ي اجرائي و يا اسکريپت ها ، توصيه مي گردد که آنان در دايرکتوري هاي مجزاء بدون در نظرگرفتن مجوز Read ، مستقر گردند، اين نوع دايرکتوري ها ي مجازي مي بايست داراي مجوز Scripts only و يا Scripts and executables بوده تا سرويس گيرندگان وب قادر به اجراي آنان گردند .
خلاصه
در زمان پيکربندي سرويس دهنده وب ، موارد زير پيشنهاد مي گردد :
• در رابطه با نوع دستيابي به سايت ، تصميم مناسب اتخاذ و متناسب با آن ، محدوديت هاي لازم بر اساس آدرس هاي IP و يا Internet Domains ، اعمال گردد .
• مشخص نمائيد که آيا ضرورتي به استفاده از SSL و Certificates در محيط مورد نظر، وجود دارد .
• يک روش موجود را براي " تائيد اعتبار " ، کاربران انتخاب نمائيد . روش Anonymouse متداولترين گزينه در اين زمينه است . در صورتي از Basic authentication استفاده گردد که سايت مورد نظر تکنولوژي SSL را حمايت مي نمايد .
• دايرکتوري هائي را با مجوز Read ( از مجموعه مجوزهاي NTFS ) ، براي گروه کاربران عمومي ( Webusers ) ايجاد نمائيد. اين دايرکتوري ها ، همچنين مي بايست داراي مجوز Read only مربوط به IIS در زمان تنظيم سايت هاي FTP و www باشند . دايرکتوري ها ي فوق ، شامل اطلاعات لازم براي سرويس گيرندگان بمنظور مشاهده و يا Download ، خواهند بود.
• يک دايرکتوري با مجوز Read&Execute ( از مجموعه مجوزهاي NTFS ) صرفا" در رابطه با گروه کاربران عمومي (Webusers ) ايجاد گردد . اين دايرکتوري همچنين مي بايست داراي مجوز Script only ( مربوط به مجوزهاي IIS ) در زمان پيکربندي سايت www گردد . دايرکتوري فوق ، شامل فايل هاي اجرائي نظير اسکريپت ها ، مي باشد .
در بخش چهارم اين مقاله به بررسي نحوه پيکربندي سرويس هاي www و FTP خواهيم پرداخت .