Product SiteDocumentation Site

8.4. پایگاه‌داده‌های کاربران و گروه‌ها

The list of users is usually stored in the /etc/passwd file, while the /etc/shadow file stores hashed passwords. Both are text files, in a relatively simple format, which can be read and modified with a text editor. Each user is listed there on a line with several fields separated with a colon (“:”).

8.4.1. فهرست کاربران: /etc/passwd

فیلدهای مورد استفاده در فایل /etc/passwd عبارتند از:
  • نام کاربری، برای نمونه rhertzog؛
  • گذرواژه: این گذرواژه‌ای است که توسط تابع crypt و مبتنی بر استانداردهای DES، MD5، SHA-256 یا SHA-512 تولید شده است. مقدار ویژه “x” به این معنا است که گذرواژه رمزگذاری شده در فایل /etc/shadow قرار دارد؛
  • uid: شناسه منحصربفرد هر کاربر؛
  • gid: شناسه منحصربفرد گروه هر کاربر (دبیان به صورت پیش‌فرض برای هر کاربر یک گروه خاص قرار می‌دهد)؛
  • GECOS: فید داده‌ای که معمولا نام کامل کاربر را شامل می‌شود؛
  • دایرکتروی حساب کاربری، که برای ذخیره‌سازی فایل‌های شخصی هر کاربر اختصاص می‌یابد (متغیر محلی $HOME معمولا به اینجا اشاره می‌کند)؛
  • برنامه‌ای که هنگام ورود کاربر اجرا می‌شود. این معمولا یک مفسر خط‌فرمان (پوسته) است که کنترل آزاد را در اختیار کاربر می‌گذارد. اگر گزینه /bin/false را استفاده کنید به این معنا است که کاربر نمی‌تواند لاگین کند.

8.4.2. فایل رمزگذاری‌شده و مخفی گذرواژه‌ها: /etc/shadow

فایل /etc/shadow شامل فیلدهای زیر است:
  • نام کاربری؛
  • گذرواژه رمزگذاری‌شده؛
  • تعدادی فیلد که مدت زمان اعتبار گذرواژه را تعیین می‌کنند.

8.4.3. تغییر یک حساب کاربری موجود یا گذرواژه آن

The following commands allow modification of the information stored in specific fields of the user databases: passwd permits a regular user to change their password, which in turn, updates the /etc/shadow file; chfn (CHange Full Name), reserved for the super-user (root), modifies the GECOS field. chsh (CHange SHell) allows the user to change their login shell; however, available choices will be limited to those listed in /etc/shells; the administrator, on the other hand, is not bound by this restriction and can set the shell to any program of their choosing.
در نهایت، دستور chage یا CHange AGE به مدیرسیستم امکان تغییر زمان اعتبار گذرواژه را می‌دهد (گزینه -l user تنظیمات فعلی را نمایش می‌دهد). می‌توانید برای مجبور کردن کاربر به تغییر گذرواژه خود از دستور passwd -e user استفاده کنید تا در هنگام ورود بعدی به سیستم، گذرواژه جدید را وارد کند.

8.4.4. غیرفعال‌سازی یک حساب‌کاربری

ممکن است بخواهید “یک حساب‌کاربری را غیرفعال کنید” (قفل‌کردن یک کاربر)، به عنوان یک عمل انضباطی، به منظور تحقیقات بیشتر روی یک موضوع یا در صورتی که کاربر مدت زمان طولانی حضور نداشته باشد. یک حساب‌کاربری غیرفعال‌شده به این معنی است که وی نمی‌تواند وارد سیستم شود و به آن دسترسی داشته باشد. محتویات این حساب‌کاربری بدون کوچکترین تغییری روی سیستم باقی می‌مانند؛ تنها به سادگی دسترسی به آن وجود ندارد. این کار با استفاده از دستور passwd -l user انجام می‌شود (lock). فعال‌سازی مجدد آن نیز با استفاده از گزینه -u در همان دستور صورت می‌گیرد (unlock).

8.4.5. فهرست گروه: /etc/group

گروه‌ها در فایل /etc/group فهرست می‌شوند، یک پایگاه‌داده ساده متنی درست مانند /etc/passwd که شامل فیلدهای زیر است:
  • نام گروه؛
  • گذرواژه (اختیاری): این فیلد برای الحاق یک گروه استفاده می‌شود که یک عضو معمولی به حساب نمی‌آید (با دستورات newgrp یا sg، قسمت بازگشت به مقدمات کار با چندین گروه را مشاهده کنید)؛
  • gid: شناسه منحصربفرد هر گروه؛
  • فهرست اعضا: فهرستی از نام کاربرانی که عضو این گروه هستند، که با کاما جدا شده‌اند.
The addgroup and delgroup commands add or delete a group, respectively. The groupmod command modifies a group's information (its gid or identifier). The command gpasswd group changes the password for the group, while the gpasswd -r group command deletes it.