اجازه جستجو در هر پوشه پیش از کلید
کلید میتواند 0600 باشد و باز هم از باز شدن سر باز زند، وقتی پوشه والد عبور را مسدود میکند. کل مسیر را بهعنوان حساب سرویس بپیمایید، پیش از تغییر هر حالت.
حالت 0600 و مالک درست تضمین نمیکنند که سرویس بتواند کلید را باز کند. اجازه گمشده معمولاً روی پوشهای بالاتر است. لینوکس مسیر را یک جزء در هر بار حل میکند، و هر گام پیش از تلاش بعدی به اجازه جستجو نیاز دارد. کل مسیر را بخوانید، نه آخرین سطر فهرست.
اجازه خواندن آخرین گام است، نه تنها گام
باز کردن یک فایل مستلزم آن است که هسته از ریشه یا پوشه کار از تکتک اجزای مسیر بگذرد. پوشهای بدون اجازه جستجو این عبور را با خطای اجازه متوقف میکند. حالت خود فایل هرگز بررسی نمیشود، بنابراین کلیدی کاملاً خواندنی غیرقابل خواندن به نظر میرسد. خطا غالباً در زمان باز کردن و بدون نام بردن پوشه میرسد، از این رو فایل نهایی سرزنش میشود.
برای یک پوشه، بیت اجرا به معنای جستجو است، نه اجرای محتوا. کلید داده میماند، و هیچ بخشی از این تعمیر نیازمند علامت زدن آن بهعنوان اجرایی نیست.
مسیر را بهعنوان حساب سرویس بپیمایید
هر جزء را با مالک و حالتش فهرست کنید، سپس خواندن را بهعنوان هویت واقعی سرویس تکرار کنید. تفاوت میان پوسته شما و دیمن غالباً تمام پاسخ است. پیوندهای نمادین را تا هدف واقعی دنبال کنید، زیرا مسیر حلشده چیزی است که بررسی میشود.
namei -l /etc/openvpn/client/office.key
sudo -u vpn-reader stat -c '%A %U:%G %n' /etc/openvpn/client/office.key
یک سرویس میتواند فایلها را در بیش از یک مرحله هم باز کند. بخشی از مواد در زمان راهاندازی ممتاز خوانده میشود، در حالی که فایلهای دیگر پس از کنار گذاشتن امتیازها باز میشوند. پوسته روت که فایل را میخواند دسترسی کارگر بعدی را بازتولید نمیکند. فضای نام اتصال میتواند نمای متفاوتی از همان مسیر نشان دهد، بهویژه درون یک کانتینر، پس نمای فایلسیستم دیمن را با نمای خود مقایسه کنید.
تنگترین اجازهای را که کافی است تغییر دهید
کوچکترین ترتیبی را انتخاب کنید که به فرایند دسترسی میدهد: گروهی کنترلشده با جستجو روی پوشههای لازم، مکانی مدیریتشده که سرویس از پیش مالک آن است، یا سازوکار دیگری که مستند شده است. خواندن یک فایل به اجازه نوشتن روی پوشهاش نیاز ندارد. اجازه نوشتن گسترده گروه روی پیکربندی ممتاز، تعمیر معمول عبور نیست. حالت بازگشتی 0777 هم راهحل نیست.
ثبت کنید کدام جزء را تغییر دادید و چرا. تغییر اجازه بدون دلیل ثبتشده سخت بازبینی میشود و آسان فراموش میگردد.
تنها پس از عبور، فراتر از حالتها را ببینید
اگر بیتهای حالت کافی به نظر میرسند، بررسیهای باقیمانده ACLها، سیاست امنیتی و محدودیتهای سندباکس هستند. یک ACL میتواند دسترسیای بدهد که بیتهای حالت آن را غایب نشان میدهند، یا دسترسیای را که گویا مجاز میکنند رد کند. آن تنظیمات به مالک پیکربندی موجود تعلق دارند و باید بهجای خاموش کردن، بهصورت محدود تنظیم شوند. تفاوت ریشه یا پوشه کار هم میتواند مسیر مطلقی را توضیح دهد که در یک زمینه کار میکند و در زمینه دیگر شکست میخورد.
هنگام رفع دسترسی، از یاد نبرید که فایل چیست. گواهی CA بهطور طراحی عمومی است، کلید خصوصی نیست. فایلهایی که کلاینت بازنویسی میکند هم به حقوق نوشتن متفاوتی از یک کلید هویت فقطخواندنی نیاز دارند. فراداده را بدون چاپ رازها بررسی کنید، سپس تأیید کنید که خود سرویس پس از تغییر کار میکند. یادداشتی کوتاه در مستندات سرویس، همان عبور را از شخص بعدی دریغ میکند.