PDA

View Full Version : امنیت در NTFS



sarami
جمعه 10 شهریور 1385, 18:19 عصر
نسل جدید فایل سیستم ویندوز یعنی NTFS برای از بین بردن مشکلا‌ت امنیتی سیستم‌های قبلی، همراه با ویندوز NT عرضه شد. با وجود NTFS، سازوکار امنیتی فایل‌ها، دایرکتوری‌ها و ویندوز، مستقل شده‌است و این امر انعطاف‌پذیری زیادی را هنگام برپا کردن یک شبکه به ارمغان می‌آورد. مایکروسافت پیشنهاد می‌کند که تمام به اشتراک‌گذاری‌های تحت شبکه با استفاده از سیستم فایل ‌NTFS اجرا شود. در این مقاله به دو موضوع پرداخته شده است: ابتدا مقایسه فایل سیستم‌های FAT و NTFS و پس از آن، یک بررسی شخصی از دید نویسنده، در مورد NTFS را می‌خوانید.




نسل جدید سیستم فایل‌
خانواده سیستم فایل‌FAT که شامل FAT 12 ،FAT 16 و FAT 32 می‌شود، سیستم فایلی است که در اوایل دهه هشتاد میلا‌دی، سیستم‌عامل‌های مایکروسافت براساس آن ساخته می‌شدند. به‌طور کلی، این نوع سیستم‌فایلی به اندازه کافی برای مدیریت فایل‌ها و حتی پی‌سی‌ها، به‌ویژه آن‌هایی که برای مقاصد خاص استفاده نمی‌شدند، قدرتمند بود. برای کامپیوترهای خانگی و کامپیوترهایی که در مشاغل کوچ استفاده‌می‌شدند،FAT به اندازه کافی خوب بود. اما هنگامی که امنیت و قابلیت اطمینان بالا‌ اهمیت پیدا می‌کرد،FAT حرفی برای گفتن نداشت.

به هرحال با وجود آن‌که FAT در بسیاری از موارد قابل قبول بود، خیلی قدیمی، محدود و سیستم فایلی ساده‌ای بود. این فایل سیستم برای کاربران پیشرفته، به‌ویژه سرورها و ایستگاه‌های کاری در محیط شبکه شرکت‌های بسیاربزرگ، از امنیت قابلیت و اطمینان بالا‌ برخوردار نبود. به همین دلا‌یل مایکروسافت نسل جدیدی از سیستم‌های فایلی، موسوم به New Technology File System) NTFS) را ایجاد کرد. در واقع بزرگ‌ترین ایراد این سیستم‌عامل‌ها تا آن زمان آن بود که براساس FAT ساخته شده بودند. FAT کمترین امکانات را برای مدیریت و ذخیره‌سازی داده‌ها در محیط شبکه در اختیار داشت. برای جلوگیری از زمینگیر شدن ویندوز NT، مایکروسافت نیاز به ایجاد سیستم فایلی جدیدی داشت که براساس FAT نباشد. نتیجه آن ایجاد NTFS بود. NTFS برای برآوردن اهداف خاصی طراحی شده بود که برخی از آن‌ها عبارتند از:

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

● امنیت و کنترل دسترسی: یکی از بزرگ‌ترین مشکلا‌ت FAT آن بود که هیچ‌گونه ابزار توکاری برای کنترل دسترسی به فایل‌ها و فولدرها روی دیسک سخت را دارا نبود. بدون این نوع کنترل، نصب برنامه‌ها و شبکه که نیاز به امنیت و امکان مدیریت دسترسی به فایل‌ها، خواندن و نوشتن داده‌ها داشت، تقریباً غیرممکن بود.

● استفاده از هارددیسک‌های با حجم بیشتر: در اوایل دهه نود میلا‌دی،FAT فقط محدود به FAT 16 بود که امکان ایجاد پارتیشن‌هایی با حداکثر اندازه چهارگیگابایت را داشت. با وجود رشد روزافزون حجم دیسک‌های سخت و همچنین استفاده رو به رشد RAID ،NTFS برای استفاده از پارتیشن‌های بسیار بزرگ طراحی شد.

● امکانات ذخیره‌سازی: هنگامی که NTFS در حال توسعه بود، اغلب پی‌سی‌ها در آن زمان از FAT 16 استفاده‌می‌کردند که موجب از دست رفتن قسمت قابل توجهی از فضای دیسک می‌شد. NTFS با تغییر روش اختصاص‌دادن فضا به فایل، از بروز این مشکل جلوگیری کرد.

● شبکه سازی: به‌رغم آن‌که برخی از امکانات NT که امکان شبکه‌سازی را فراهم می‌کند مربوط به ‌فایل سیستم نبود، برخی از مهم‌ترین امکانات شبکه‌سازی براساس NTFS بود. هنگامی که ویندوز NT در حال توسعه بود، دنیای کسب‌وکار به‌ تازگی اهمیت شبکه‌سازی را درک می‌کرد، و ویندوز NT امکانات فراوانی برای امکان شبکه‌سازی در سطح وسیع را فراهم می‌کرد.

● نام فایل‌های طولا‌نی‌تر: NTFS اجازه ایجاد نام فایل‌های طولا‌نی تا 255 کاراکتر را می‌دهد واین مسئله در مقابل 3+8 کاراکتر محدود FAT، بسیار خوب بود. البته علا‌وه بر نکات مثبت بالا‌، NTFS کاستی‌هایی نیز داشت. این مشکلا‌ت که در حال از بین رفتن هستند، شامل مشکلا‌ت فایل سیستم‌، اضافه‌کردن پشتیبانی از سخت‌افزار جدید و اضافه کردن قابلیت‌های جدید سیستم‌عامل می‌شود.

بزرگ‌ترین تغییر در NTFS همراه با معرفی ویندوز 2000 ایجاد شد. این تغییرات مهم‌ترین امکانات سیستم‌عامل را شامل می‌شد. دو نسخه‌ای که در پی‌سی‌ها استفاده می‌شود. NTFS 1.1 معروف به NTFS 4.0 (به دلیل آن‌که به‌طور وسیعی در ویندوز NT 4.0 استفاده می‌شد) و نسخه جدیدتر آن، NTFS 5.0 است که جزء یکپارچه‌ای از ویندوز 2000 است.

مفاهیم عمومی امنیت در NTFS
امنیت تحت ویندوز NT و 2000،‌به طور عمومی یکی از مهم‌ترین ویژگی‌های این سیستم‌های عامل است. امنیت که شامل کنترل دسترسی به سیستم و منابع مختلف آن می‌شود، موضوعی است که توجه بسیار زیادی را در ویندوزهای NT و 2000 به خود معطوف نموده است. مدیریت مقوله‌های امنیتی برای مثال، حساب کاربران و گروه‌ها، بخش اعظمی از فعالیت‌های یک مدیر شبکه تحت ویندوزهای NT و 2000 را تشکیل می‌دهد. امنیت در NTFS حول مفهوم کلیدی اختصاص مجوز به کاربران خاص یا گروهی از کاربران خاص می‌گردد.

مثلا‌ً یک شبکه‌ تحت ویندوز NT یا 2000 را در نظر بگیرید که از سرورها و کلا‌ینت‌های مختلفی تشکیل شده است. هر کاربری که پشت یکی از کلا‌ینت‌ها بنشیند، به‌راحتی می‌تواند به سرورها متصل شود. اما برای دسترسی به منابع مختلف آن، حتماً لا‌زم است که به سرور Login کند. این مسئله برای شخصی که مستقیماً از سرور استفاده می‌کند نیز صادق است. با توجه به این‌که اگر سرور به درستی تنظیم شده باشد، مدیر شبکه برای هر کسی که می‌خواهد از شبکه استفاده کند حساب کاربری ویژه‌ای را ایجاد می‌کند.

هر شخصی که در شبکه حسابی نداشته باشد، می‌تواند از حساب مهمان (guest) استفاده کند. اما در این حساب اجازه‌های دسترسی به دلا‌یل واضحی بسیار است. اگر کسی حتی رمزعبور حساب مهمان را نداشته‌باشد، نمی‌تواند هیچ کاری روی سرور انجام دهد. کنترل‌های دسترسی برای فایل‌ها و دایرکتوری‌ها براساس همین حساب‌های کاربری و گروه‌ها اجرا می‌شود.

ویژگی دیگر امنیت NTFS، موضوع مجوزها است. برای مثال شرکتی را تصور کنید که دارای بیست کارمند و یک سرور است. روی سرور درایوی به نام D: وجود دارد که اطلا‌عات محرمانه بودجه دارد که باید فقط مدیرعامل و معاون او از آن‌ها اطلا‌ع داشته باشند و دیگر کارکنان شرکت اجازه دسترسی به آن را نداشته باشند. تحت NTFS برپا کردن چنین مجوزهایی بسیار ساده است. فقط کافی است اجازه دسترسی را به گروه مربوط به آن بدهید. این کار موجب عدم دسترسی سایر کارکنان و افراد به فایل‌ها می‌شود.

مجوزها
یکی از مهم‌ترین منافع انتخاب سیستم‌فایلی NTFS آن است که با انتخاب آن نظارت دقیقی بر عملکرد فایل‌ها امکان‌پذیر است. FAT در دوره پی‌سی‌های تک کاربره به وجود آمد. به همین دلیل هیچ‌گونه امنیت و مدیریت دسترسی توکاری را شامل نمی‌شود. NTFS محیط امنی را فراهم می‌نماید و نظارت انعطاف‌پذیری برای چگونگی دسترسی و کاربری که می‌خواهد به منابع موردنظر دسترسی داشته باشد، ارائه‌ می‌کند. امنیت و مجوزهای NTFS، به ویژگی‌های سیستم‌عامل یکپارچه شده است.

در اینجا از توضیح کامل دامنه‌های ویندوز 2000 و NT، سرویس‌های دایرکتوری، گروه‌ها و مراحل Login و نظایر آن خودداری می‌کنیم و این مسئله را به زمان دیگری موکول می‌نماییم. (جدول‌های 1 و 2)

همچنان که مشاهده می‌کنید، در جدول 1 و2 دسته‌ای از گروه‌های دسترسی که به‌طور استاندارد در ویندوز NT و 2000 وجود دارند، فراهم شده‌است. ویندوز NT شش اجازه دسترسی به فایل‌ها و فولدرهای مجزا را فراهم‌کرده است. ویندوز 2000 پا را از این هم فراتر نهاد و حدود دوازده مجوز مختلف را دربرمی‌گیرد.

در ویندوز 2000، سیزده کامپوننت مختلف مجوز وجود دارد که تحت شش گروه استاندارد مختلف طبقه‌بندی شده‌اند. List Folder Contents و Read‌ِ‌Exewte مجوز یکسانی دارند که تا حدودی گیج‌کننده است. تفاوت میان آن‌ها از نحوه توارث NTFS نشأت می‌گیرد. List Folder Contents فقط برای فولدرها استفاده می‌شود و فایل‌های داخل آن فولدر از آن تأثیر می‌پذیرند. Read‌ِ‌Exewte هم برای فایل‌ها و هم برای فولدرها استفاده شده و هر دو آن‌ها از آن تأثیر می‌پذیرند. شاید به این نکته توجه کرده باشید که گروه NoAccess در ویندوز 2000 حذف شده است. در ویندوز NT تمام گروه‌ها به جز No Access دسترسی مثبت را فراهم می‌کند. یعنی شما اجازه دسترسی ندارید. No Access تنها گروهی است که می‌گوید: اجازه دسترسی دارید. در واقع می‌گوید شما نمی‌توانید هیچ کاری انجام دهید. این عدم انعطاف‌پذیری با قابلیت اجازه دادن یا ندادن به صورت گروه‌های مجوز یا مجوز‌های مجزا، در ویندوز 2000 تصحیح شده است.

تملک شی‌ها
هر شی‌ در سیستم‌فایل NTFS دارای صاحب است که به عنوان کنترل‌کننده آن شی شناخته می‌شود. به طور پیش‌فرض هر کاربری که فایل و یا فولدری را ایجاد می‌کند، صاحب آن شناخته می‌شود. مهم‌ترین ویژگی صاحب یک فایل یا فولدر بودن آن است که به کاربر امکان ایجاد مجوزهای دسترسی را می‌دهد. صاحب فایل می‌تواند تصمیم بگیرد که مجوزی را برای آن ایجاد کند و چگونگی دسترسی دیگران به آن فایل‌ها و فولدرها را مشخص‌نماید. به بیان دیگر، مجوزها به همراه مفهوم دیگری که تملک نامیده می‌شود، کار می‌کند.

دو مجوز ویژه‌ای که به تملک و مجوزها مربوط می‌شوند، عبارتند از: change permission) p) و Take wonership) o) اگر کاربری مجوز change permission را داشته باشد، می‌تواند تنظیمات مربوط به آن مجوز را تغییر دهد؛ حتی اگر صاحب آن نباشد. اگر کاربری مجوز Take ownship را داشته باشد، توانایی تملک آن را نیز دارد.

تصمیم در مورد نحوه اختصاص مجوزها به فایل‌ها و فولدرهای مختلف، از مهم‌ترین فعالیت‌های مدیریت شبکه‌ها است. برای ایجاد گروه‌ها و اختصاص مجوزها برای شی‌های مختلف محاسبه دقیقی موردنیاز است. یکی از معمول‌ترین اشتباهات مدیران شبکه، استفاده نادرست از مجوز No Access در ویندوز NT است. اگر این مجوز به نادرستی استفاده شود، می‌تواند موجب قفل شدن کاربران در ویندوز NT شود.

همچنین اگر کاربران به‌طور مداوم تملک فایل‌ها را تغییر دهند، می‌توانند مشکلا‌ت فراوانی را برای سیستم به وجود آورند. به همین دلیل اهمیت مجوزهایی مانند Full Control نسبت به مجوزهای محدودتری مانند change یا Modify مشخص می‌شود. هنگام دادن مجوزی مانند Full Control دقت بسیارزیادی لا‌زم است تا سیستم‌ دچار مشکل نشود. توجه کنید که به‌طور پیش‌فرض اعضای گروه Administrators امکان تملک تمام فایل‌ها و فولدرها، تغییر مجوزهای تمام فایل و فولدرها را دارند. این ویژگی‌ها امکان رفع مشکلا‌ت به‌وجود آمده در مورد مجوزها را به مدیر شبکه می‌دهد.

در این مقاله نمی‌خواهیم جزئیات اعطای مجوزها را شرح دهیم. با این‌حال لا‌زم است به این نکته اشاره کنیم که مجوزها در ویندوز NT و 2000 به‌طور متفاوتی عمل می‌کنند. در ویندوزNT فقط یک نوع اعطای مجوز امکانپذیر است. به‌طور عمومی شما می‌توانید اجازه دهید که کاربری کاری را انجام دهد. برای مثال می‌توانید اجازه دهید که کاربری مجوزهای یک فولدر را ببیند. با اعطا نکردن مجوز نوشتن، سیستم از نوشتن هرگونه فایلی در داخل فولدر جلوگیری می‌کند. اما به هرحال هیچ‌گونه مجوز واضحی بدین مفهوم که "هیچ مجوز نوشتنی برای کاربر خاصی" وجود ندارد. تفاوت بسیار مهم است. زیرا این کار تأثیر بسیاری بر فرم‌ سلسله مراتبی فولدرها دارد. تنها راه جلوگیری از دسترسی به یک چیز در ویندوز NT، اعطای مجوز No Access است. ویندوز 2000 پیشرفت فراوانی در مورد اعطای مجوزهای NTFS، به وسیله واضح نمودن تنظیمات برای هر مجوز نموده است.

توارث مجوزها
قبل از ویندوز 2000، با توارث مجوز ایستا روبه‌رو بودیم. اما پس از آن توارث مجوزها به دو بخش تقسیم شد: توارث مجوز ایستا و پویا. ولی سوال این است که واقعا توارث مجوز چیست؟ وقتی که شما از ویندوز NT استفاده می‌کردید و فولدری را در درون فولدر دیگری ایجاد می‌کردید، شی جدید دسته‌ای از مجوزهای پیش‌فرض را با توجه به فولدر والدآن شی برای آن کپی می‌کرد. به این عمل توارث مجوز گفته می‌شود، یا در برخی مواقع "انتقال مجوز" نیز گفته می‌شود.

در مورد مدل توارثی ویندوز NT این عمل فقط یک‌بار اتفاق می‌افتد؛ یعنی هنگامی که شی ایجاد می‌شود. به همین دلیل، به توارث ویندوز همگرا در ویندوز NT توارث مجوز ایستا نیز گفته می‌شود. این عبارت در مقابل توارث پویا در ویندوز 2000 به کار می‌رود. توارث ایستا دشواری‌های فراوانی را برای مدیران شبکه‌هایی که نیاز به مدیریت ساختار عظیم دایرکتوری دارند به وجود می‌آورد. ساختار درختی بزرگی از فولدرها را تصور کنید.در توارث ایستا، پس از ایجاد یک زیرفولدر جدید، مجوزهای آن دیگر از شی والدآن به ارث نمی‌رسد. مشکلا‌ت هنگامی به وجود میآید که از گروه مجوز Full Control استفاده شود.

این بدان‌معناست که کاربران آزادانه می‌توانند با این مجوز در قسمت‌های مختلف ساختار درختی حرکت کنند. به‌علا‌وه، توارث ایستا افزودن یک مجوز جدید به ساختار موجود را بسیار سخت می‌کند. فرض کنید که یک گروه کاربری جدید را ایجاد می‌کنید و می‌خواهید هر کسی در آن گروه به دایرکتوری‌های موجود دسترسی داشته باشد. این کار را چگونه انجام می‌دهید؟

برای رفع این مشکلا‌ت، ویندوز NT ویژگی خاصی را در هنگام اعطای مجوزها ارائه کرده است. اگر شما گزینه‌هایReplace Permissions on Subdirectories و Replace Permissions on euistin files را هنگام تغییر مجوزهای یک فولدر انتخاب کنید، ویندوز NT تمام مجوزهای شی‌های فرزند را برای همسانی با شی والد تغییرمی‌دهد. بنابراین اگر شما یک گروه کاربری جدید را اضافه کنید و بخواهید اجازه دسترسی به ساختار کنونی به آن بدهید، می‌توانید از این امکانات استفاده کنید تا ویندوز NT را وادار به انتقال مجوزهای جدید به پایین ساختار درختی نمایید. با این کار امکان دسترسی گروه کاربری جدید به هر فایل و فولدری را می‌دهید.

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

فراتر از آن، مجوزهای والد به صورت جداگانه از هرگونه مجوز دیگری که به صورت دستی به شی فرزند اعطا شده است، ذخیره می‌شود. مدل اتصالی پویا دو مشکل اساسی موجود در مدل اتصالی ایستا را حل کرد. اولا‌ً هر تغییری که در فولدر والد به وجود آید، به صورت خودکار به اشیای فرزند به ارث می‌رسد. در ثانی هر تغییر که به شی فرزند به ارث می‌رسد، موجب خرابی این انتقال خودکار نمی‌گردد. تحت توارث پویا، مدیر یک شبکه یا کاربر به راحتی می‌تواند درخت سلسله مراتبی مجوزها که با درخت سلسله مراتبی دایرکتوری‌ها همسان است مدیریت کند. هنگامی که هر شی فرزند از والد خود مجوزها را به ارث می‌برد و شما یک سلسله مراتب متشکل از سه یا بیش از سه مرتبه از فولدرها را برپا می‌کنید، اشیایی که در عمق این ساختار قراردارند، مجوزها را از والدهای خود به ارث می‌برند. به این ویژگی‌ <بازگشت> گفته می‌شود.

پیگیری وقایع
بزرگ‌ترین بخش امنیت سیستم فایلی NTFS حول محور کنترل دسترسی به انواع مختلفی از اشیا می‌گردد. یعنی مدیریت کارهایی که کاربران انجام می‌دهند و اطمینان از سطح دسترسی مناسب برای انواع فایل‌ها و فولدرها.
به‌هرحال پاره‌ای ویژگی‌های دیگر امنیت نیز وجود دارند که قابل توجه هستند مثلا‌ً ثبت اطلا‌عات گذشته. در بسیاری از مواقع برای یک مدیر شبکه بسیار مهم است که نه ‌تنها به مدیریت شبکه و اتفاقات آن در حال حاضر بپردازد، بلکه از اطلا‌عات ثبت شده از چند روز گذشته نیز آگاه باشد. برای فراهم‌کردن این امکان برای مدیران شبکه، NTFS از ویژگی‌ای به نام پیگیری وقایع (lauditing) برخوردار است.

هنگامی که این ویژگی فعال باشد، سیستم امکان پیگیری وقایع خاصی را دارد. وقتی هریک از وقایع موردنظر اتفاق افتاد، سیستم یادداشتی را در فایل خاصی به نام Log می‌نویسد که مدیر شبکه و افراد با مجوزهای لا‌زم می‌توانند آن‌را بخوانند. هر ورودی، نوع واقعه، تاریخ و ساعت اتفاق و کاربری که موجب به وقوع پیوستن آن اتفاق شده و اطلا‌عات مربوط به آن ثبت می‌شود. این ویژگی در ویندوز NT و 2000 تنها بخش کوچکی از ویژگی‌هایی است که درNTFS ارائه می‌شود. این ویژگی‌ها امکان پیگیری همه چیز از Login در سیستم تا استفاده از چاپگرها و حتی اشکالا‌ت سیستم را به مدیر شبکه می‌دهد. در NTFS وقایع قابل پیگیری به‌طور عمومی دسترسی به انواع مختلف اشیا و انواع مختلف مجوزها را شامل می‌شود. این نوع پیگیری را برای انواع فایل‌ها و فولدرها می‌توان انتخاب نمود. همچنین این امکان برای اشیای مستقل و ساختار سلسله مراتبی فولدرها، همان‌طور که برای مجوزها نیز امکان‌پذیر است، قابل انتخاب است

منبع:http://www.shabakeh-mag.com
ترجمه: آرش مدنی علمداری