در این مقاله، اهمیت سازماندهی مناسب کاربران لینوکس را بررسی خواهیم کرد. ما حقوق دسترسی را شرح خواهیم داد، از نحوه ایجاد و پیکربندی کاربران شروع می کنیم و با نحوه اعطای دسترسی به فایل ها و پوشه های خاص پایان می دهیم. ما همچنین در مورد برخی ابزارهای امنیتی مهم مانند sudo و SELinux صحبت خواهیم کرد که به محافظت از سیستم در برابر فعالیت های ناخواسته کمک می کنند.
اهمیت مدیریت کاربر و حقوق دسترسی در لینوکس
در دنیای لینوکس، مدیریت کاربر و حقوق دسترسی نقش کلیدی دارد. لینوکس را به عنوان یک آپارتمان بزرگ تصور کنید که در آن هر کاربر یک مستاجر و هر فایل یک اتاق است. مدیریت کاربر مانند اختصاص دادن کلید منحصر به فرد به هر مستاجر است، در حالی که حقوق دسترسی کاری است که آنها می توانند در اتاق خود انجام دهند.
هنگامی که یک کاربر ایجاد می شود، یک نام و یک شناسه منحصر به فرد (UIDمانند کلید شخصی آپارتمان. کاربر نیز دارد a گروه، آنها را با مستاجران دیگر متحد می کند. گروه مانند یک باشگاه است که در آن اعضای دارای امتیازات مشترک هستند.
حقوق دسترسی به فایل به سه دسته تقسیم می شوند: مالک (کاربر), گروهو دیگران. هر کلید (کاربر) می تواند حقوق منحصر به فرد خود را برای خواندن، نوشتن و اجرا برای هر دسته داشته باشد. برای مثال، مالک فایل ممکن است حقوق خواندن و نوشتن داشته باشد، گروه - فقط خواندن، و دیگران - هیچ چیز.
توجه ویژه مستحق سیاست های امنیتی مانند کد: sudo و SELinux را، در سیستم های لینوکس استفاده می شود. سودو یک فرمان ویژه است که به کاربران عادی اجازه می دهد تا به طور موقت از حقوق ابرکاربر (ریشه) برای انجام کارهای خاصی استفاده کنند که معمولاً فقط در اختیار مدیران است. این به جلوگیری از خطاهای تصادفی یا سوء استفاده از حقوق ابرکاربر کمک می کند. هنگام استفاده کد: sudo، معمولاً کاربر برای تأیید هویت خود باید رمز عبور خود را وارد کند. پس از این، آنها می توانند دستورات را با حقوق superuser (root) مطابق با قوانین تنظیم شده در آن اجرا کنند ژاکت فایل.
SELinux را یک لایه امنیتی اضافی برای سیستم عامل لینوکس است. این برنامه نظارت می کند که کدام برنامه ها و فایل ها می توانند در سیستم استفاده شوند و دسترسی به آنها را برای جلوگیری از نفوذ و حملات محدود می کند. این امر با جلوگیری از تلاش های هک یا اقدامات مخرب سرور را ایمن تر می کند.
ایجاد و مدیریت کاربران
نحوه ایجاد کاربر در لینوکس
کاربران لینوکس معمولا با یوزراد فرمان به عنوان مثال، برای ایجاد یک کاربر به نام "username"، باید وارد کنید:
useradd username
نحوه تنظیم رمز عبور کاربر لینوکس
پس از ایجاد یک کاربر، حساب آنها توسط رمز عبور محافظت نمی شود. برای تنظیم رمز عبور برای یک کاربر جدید، از passwd فرمان:
passwd username
جایی که نام کاربری نام کاربری است که رمز عبور برای او تنظیم شده است.
نحوه مشاهده لیست کاربران در لینوکس
برای مشاهده لیستی از کاربران در لینوکس با یک دستور در ترمینال، می توانید از برش فرمان:
cut -d: -f1 /etc/passwd
این دستور محتویات را می خواند / etc / passwd فایلی که حاوی اطلاعات همه کاربران است.
برای به دست آوردن اطلاعات در مورد یک کاربر خاص، می توانید از دستور زیر استفاده کنید:
id username
با این کار کاربر نمایش داده می شود UID, پیشنهادو گروه ها.
حذف یک کاربر لینوکس
برای حذف یک کاربر، از کارگر فرمان:
userdel username
با این حال، این دستور فایل های موجود در فهرست اصلی کاربر را حذف نمی کند. برای حذف آنها می توانید از -r گزینه:
userdel -r username
با این کار نام کاربری به همراه فهرست اصلی و تمام فایل های موجود در آن حذف می شود.
تغییر کاربری لینوکس
برای اصلاح اطلاعات مربوط به یک کاربر، از نامزد فرمان این ابزار از نحو استفاده می کند:
usermod argument user
یک لیست کامل از آرگومان های ممکن در راهنمای ابزار نمایش داده می شود:
به عنوان مثال، برای تغییر فهرست اصلی کاربر، از دستور زیر استفاده می کنید:
usermod -d /new/path/to/directory username
ایجاد و مدیریت گروه های کاربری در لینوکس
گروههای کاربری در لینوکس به مدیران اجازه میدهند تا کاربرانی با حقوق دسترسی مشابه گروهبندی کنند. این امر مدیریت حقوق دسترسی را تسهیل می کند و امنیت سیستم را با امکان تنظیم حقوق در سطح گروه، به جای انجام این کار برای هر کاربر به صورت جداگانه، افزایش می دهد. به عنوان مثال، گروه توسعه دهندگان را با مدیر کاربر در نظر خواهیم گرفت.
نحوه ایجاد یک گروه کاربری در لینوکس
برای ایجاد یک گروه جدید، از گروه بندی شده دستور با نام گروه جدید:
sudo groupadd group_name
در مثال ما، دستور به شکل زیر است:
sudo groupadd developers
نحوه حذف یک گروه کاربری در لینوکس
برای حذف یک گروه، از گروپدل فرمان:
sudo groupdel group_name
بنابراین، دستور:
sudo groupdel developers
گروه نامگذاری شده را حذف می کند توسعه دهندگان.
افزودن کاربران به یک گروه
برای افزودن یک کاربر به یک گروه خاص، از نامزد فرمان:
sudo usermod -aG group_name user_name
مثلا:
sudo usermod -aG developers admin
این دستور کاربر با نام را اضافه می کند مدیر سایت به توسعه دهندگان گروه.
حذف کاربران از یک گروه
برای حذف یک کاربر از یک گروه، از دلپذیر فرمان:
sudo deluser user_name group_name
دستور حذف کاربر مدیر سایت از توسعه دهندگان گروه:
sudo deluser admin developers
مشاهده لیست گروه ها در لینوکس
برای مشاهده لیستی از همه گروه های موجود در سیستم، از گربه فرمان با / و غیره / گروه فایل:
cat /etc/group
این دستور لیستی از تمام گروه های سیستم را نمایش می دهد.
بررسی عضویت در گروه کاربر
پس از انجام اقدامات، می توانید با استفاده از دستور group بررسی کنید که کاربر به کدام گروه تعلق دارد:
groups user_name
بنابراین، ما اصول مدیریت گروه های کاربر در لینوکس را بررسی کرده ایم. حالا بیایید به مرحله بعدی برویم – بررسی تخصیص حقوق دسترسی به فایل ها و دایرکتوری ها. این فرآیند به شما امکان می دهد تا تعیین کنید که کاربران یا گروه ها چه اقداماتی را در مورد فایل ها و دایرکتوری های خاص انجام دهند و از مدیریت امنیتی موثر و دسترسی به منابع سیستم اطمینان حاصل شود.
تخصیص حقوق دسترسی به فایل ها و دایرکتوری ها
بازنمایی نمادین حقوق دسترسی
همانطور که قبلا متوجه شدیم، 3 دسته کاربر در لینوکس وجود دارد: مالک (کاربر), گروهو دیگران. هر یک از آنها ممکن است گروه های خاصی از دسترسی به فایل ها یا دایرکتوری ها را داشته باشند:
- Read (Read - r): امکان مشاهده محتویات یک فایل یا فهرست را فراهم می کند.
- Write (Write - w): امکان اصلاح یک فایل یا ایجاد فایل جدید در دایرکتوری را فراهم می کند. برای یک دایرکتوری، این اجازه می دهد تا فایل ها را از آن حذف کنید.
- Execute (Execute - x): امکان اجرای فایل (اگر فایل اجرایی باشد) یا ورود به دایرکتوری (اگر دایرکتوری باشد) را می دهد.
در سیستم های خانواده لینوکس، حقوق دسترسی با رشته ای از 10 کاراکتر نشان داده می شود. کاراکتر اول نوع فایل (فایل معمولی، دایرکتوری و غیره) را نشان می دهد و XNUMX کاراکتر باقیمانده سه گروه سه کاراکتری برای هر یک از گروه های کاربری هستند. برای درک، مثالی را در نظر می گیریم.
حقوق دسترسی -rwxr-xr-- منظور داشتن:
- اولین کاراکتر (-) نوع فایل (در این مورد، یک فایل معمولی) را نشان می دهد.
- سه کاراکتر برای مالک (rwx) نشان میدهد که مالک حقوق را خوانده، بنویسد و اجرا کند.
- سه کاراکتر برای گروه (rx) نشان می دهد که اعضای گروه فقط حقوق را خوانده و اجرا می کنند.
- سه کاراکتر برای دیگران (r--) به این معنی است که سایر کاربران فقط می توانند فایل را بخوانند.
حقوق دسترسی با استفاده از chmod دستور، و نحو به صورت زیر است:
chmod [options] mode file(s)
جایی که:
- [گزینه ها] - پارامترهای اضافی، مانند -R برای تغییر بازگشتی حقوق دسترسی در دایرکتوری و زیر شاخه های آن.
- mode - یک رشته خاص که مشخص می کند کدام حقوق دسترسی و برای چه کسی تغییر می کند. حالت را می توان با نمادها (r، w، x) و بیت ها (0 یا 1) مشخص کرد. می توان از مقادیر عددی حالت نیز استفاده کرد (در ادامه در مورد آنها صحبت خواهیم کرد)
- فایل(ها) - فایل ها یا دایرکتوری هایی که تغییرات روی آنها اعمال می شود.
این ابزار یک ابزار کاملا قدرتمند است، بنابراین ما فقط به چند دستور اساسی به عنوان مثال نگاه خواهیم کرد.
حقوق دسترسی به یک فایل را تغییر دهید تا مالک حقوق خواندن و نوشتن داشته باشد، گروه فقط حقوق خواندن داشته باشد و سایر کاربران هیچ حقی نداشته باشند:
chmod u=rw,g=r,o= filename
تنظیم حقوق دسترسی برای همه کاربران برای خواندن و نوشتن در یک فایل:
chmod a+rw filename
تغییر بازگشتی حقوق دسترسی برای همه فایلها و زیر شاخههای یک فهرست:
chmod -R u+rwx directory
نمایش عددی حقوق دسترسی
در نمایش عددی، هر دسته کاربری (مالک، گروه، سایرین) شماره خود را دارد و ترکیب این اعداد حقوق دسترسی نهایی را تعیین می کند. مانند نمادین، هر یک از سه حق دارای ارزش است، اما به صورت عددی:
- خواندن (خواندن) - مقدار 4
- بنویس (نوشتن) - مقدار 2
- اجرا (اجرا) - مقدار 1
از مقادیر عددی نیز برای تعیین نوع کاربر استفاده می شود:
- صاحب فایل (کاربر) - اولین رقم
- گروه مالک (گروه) - رقم دوم
- سایر کاربران (سایر) - رقم سوم
بنابراین، نمایش عددی کامل حقوق دسترسی به فایل شامل سه رقم است که هر کدام مجموع مقادیر حقوق یک دسته کاربری خاص را نشان می دهد. این تا حدودی راحت تر از استفاده از 10 کاراکتر در نمایش نمادین است. مدیریت در این مورد به صورت زیر خواهد بود:
chmod XYZ file
جایی که X, Yو Z اعدادی هستند که به ترتیب نشان دهنده حقوق دسترسی برای مالک، گروه و سایر کاربران هستند.
به عنوان مثال، برای اعطای حقوق دسترسی کامل به مالک (خواندن، نوشتن و اجرا)، و گروه و سایر کاربران فقط خواندن و اجرا را انجام دهند، میتوانید از دستور استفاده کنید:
chmod 755 file
بیایید نمونه های دیگر را در نظر بگیریم:
chmod 700 file
فقط مالک حق خواندن، نوشتن و اجرا دارد، در حالی که گروه و سایر کاربران هیچ حق دسترسی ندارند.
chmod 644 file
مالک حق خواندن و نوشتن دارد، در حالی که گروه و سایر کاربران فقط حقوق خواندن دارند.
chmod 751 file
مالک حقوق کامل دارد، گروه حقوق خواندن و اجرای آن را دارد و سایر کاربران فقط حقوق اجرا دارند.
همانطور که قبلا ذکر کردیم، این ابزار دارای عملکرد بسیار گسترده است. در برخی موارد، گزینه های موجود در بخش "راهنما" کافی نیستند:
به خط آخر دقت کنید. با استفاده از این دستور، اسناد دقیق تری روی ابزار باز می شود. شما همچنین می توانید از ابزار کمکی بازدید کنید ویکی پدیا رسمی صفحه، جایی که می توانید اطلاعات دقیقی در مورد Chmod پیدا کنید.
نتیجه
کاربران لینوکس و مدیریت آنها برای امنیت و عملکرد پایدار سیستم عامل بسیار مهم هستند. در این مقاله، اهمیت مدیریت موثر کاربر و حقوق دسترسی در لینوکس، پوشش ایجاد و مدیریت کاربران، کار با گروههای کاربری و اختصاص حقوق دسترسی به فایلها و دایرکتوریها را برجسته کردهایم.