محمد نصیری
بنیانگذار انجمن تخصصی فناوری اطلاعات ایران ، هکر کلاه خاکستری ، کارشناس امنیت اطلاعات و ارتباطات

UID چیست ؟ معرفی User Identifier لینوکس و نحوه مشاهده آن

هر کاربر در سیستم عامل لینوکس برای خودش دارای یک هویت و اعتبار منحصر به فرد است که صرفا به همان کاربر مختص است. زمانیکه در سیستم عامل لینوکس صحبت از هویت یا Identity می شود پارامتری به نام User Identifier یا شناسه کاربری که ما آن را به عنوان UID می شناسیم به میان می آید. برخی اوقات از User Identifier به عنوان Unique Identifier یا شناسه منحصر به فرد کاربر هم نام برده می شود زیرا برای هر کدام از کاربران در لینوکس این پارامتر منحصر به فرد است.

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران

UID چیز عجیب و غریبی نیست ، تنها یک عدد است که به یک کاربر اختصاص داده می شود. هر نوع کاربری که در لینوکس وجود دارد و قبلا در خصوص آنها در مقاله قبلی صحبت کردیم دارای یک محدوده خاص شماره UID برای خودش است. اما ممکن است با خودتان بپرسید کاربرد UID چیست ؟ اگر قبلا با سیستم عامل ویندوز کار کرده باشید احتمالا واژه ای به نام SID یا Security Identifier را شنیده اید ، شناسه امنیتی منحصر به فردی که سیستم عامل ویندوز به هر کدام از کاربران یا گروه هایی که در این سیستم عامل ایجاد می شود می دهد تا بتواند تنظیمات امنیتی و دسترسی های لازم برای کاربر یا گروه را تدوین کند.

توجه کنید که سیستم عامل چه ویندوز و چه لینوکس هیچ درکی از نام کاربری ندارند و User Name برای آنها بی معنی است و Username فقط برای ما هویت دارد ، برای سیستم عامل این اعداد هستند که معنی ندارد به همین دلیل اگر کاربری را حذف کنید و یک کاربر جدید با همان اسم قبلی ایجاد کنید از نظر سیستم عامل یک کاربر جدید ایجاد شده است. UID همان کاربر SID در ویندوز را دارد البته باید بگوییم ویندوز همیشه از سیستم عامل لینوکس کپی برداری کرده است.

همانطور که در سیستم عامل ویندوز SID هایی ساختار مشخص و تعریف شده ای دارند و برخی از انها به عنوان Well-known SID شناخته می شوند در سیسم عامل لینوکس نیز ما ساختار UID ها را بر اساس نوع کاربران طبقه بندی می کنیم ، طبقه بندی UID ها در سیستم عامل لینوکس به شکل زیر می باشد :

  1. UID عدد 0 مربوط به کاربر root یا super user است
  2. UID کاربران سیستم یا System Users از عدد 1 تا 499 تشکیل می شوند
  3. UID کاربران عادی یا Normal Users از بین عدد 500 تا 6000 تشکیل می شوند
  4. UID کاربران شبکه یا Network Users از اعداد بالاتر از 6000 تشکیل می شود
  5. UID عدد 65534 برای هیچکس رزرو شده است ( nobody ) این UID معمولا برای کاربران anonymous استفاده می شود

به چند نکته در خصوص UID ها دقت کنید ، اینکه کاربر root دارای UID عدد 0 است دلیل نمی شود که نتوانیم آن را تغییر بدهیم ، شما می توانید براحتی با تغییر دادن فایل configuration سیستم این عدد را تغییر بدهید. اینکه می گوییم کاربران سیستم تا 500 عدد UID دارند به هیچ عنوان به این دلیل نیست که لینوکس فقط می تواند 500 عدد UID داشته باشد شما می توانید تا دلتان می خواهد UID داشته باشید. هیچکدام از این تغییرات در سیستم عامل ویندوز و در خصوص SID ها قابل تغییر نیست ، خوب به سراغ کار عملی برویم ، بد نیست قبل از اینکه بیشتر با کاربران لینوکس آشنا شوید چند دستور مرتبط با استفاده از UID ها را با هم مرور کنیم .

    1. خوب با دستور زیر متوجه می شویم با چه کاربری وارد سیستم یا login شده ایم :
unity@itpro-debian:~$ whoami
unity
    1. خوب ما در دستور بالا متوجه شدیم که با کاربر unity به سیستم login کرده ایم حالا با استفاده از دستور زیر UID کاربر را می بینیم :
unity@itpro-debian:~$ id
uid=1000(unity) gid=1000(unity) groups=1000(unity),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev),104(scanner),107(bluetooth),109(netdev)
    1. حالا اگر با کاربر root سیستم login کرده باشید با استفاده از دستور بالا UID کاربر root را مشاهده خواهید کرد :
root@itpro-debian:~# id
uid=0(root) gid=0(root) groups=0(root)
    1. شما می توانید با دستور id و بعد از آن آوردن نام کاربری مورد نظرتان UID کاربر مورد نظر را مشاهده کنید :
root@itpro-debian:~# id root
uid=0(root) gid=0(root) groups=0(root)
root@itpro-debian:~# id unity
uid=1000(unity) gid=1000(unity) groups=1000(unity),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev),104(scanner),107(bluetooth),109(netdev)

دستورات بالا برای نمایش دادن UID کاربران unity و root به کار می روند. فعلا به فکر تجزیه و تحلیل خروجی دستورات بالا نباشید چون ممکن است کمی در حال حاضر برای شما دشوار باشد ، در آینده در خصوص تجزیه و تحلیل خروجی این دستورات نیز با هم بیشتر صحبت خواهیم کرد. البته شما براحتی می توانید تشخیص بدهید که یک کاربر root است یا یک کاربر عادی است ، کافیست به علامت آخر قبل از نام کاربری دقت کنید ، اگر این علامت $ بود به معنی کاربر عادی یا سیستم و اگر این علامت # بود به معنی کاربر root یا super user است. امیدوارم مورد توجه شما قرار گرفته باشد اگر در این خصوص نظری دارید خوشحال می شویم در ادامه مطلب از نظرات شما استفاده کنیم. ITPRO باشید

نویسنده : محمد نصیری

منبع : انجمن تخصصی فناوری اطلاعات ایران

هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد

#کاربرد_uid_در_لینوکس #sid_چیست #acl_ها_و_sid_ها_در_اکتیودایرکتوری #انواع_uid_در_لینوکس #user_id_در_لینوکس #user_identifier_در_لینوکس #انواع_user_account_در_لینوکس #uid_در_لینوکس #sid_های_شناخته_شده #انواع_کاربر_در_لینوکس


محمد نصیری
محمد نصیری

بنیانگذار انجمن تخصصی فناوری اطلاعات ایران ، هکر کلاه خاکستری ، کارشناس امنیت اطلاعات و ارتباطات

محمد نصیری هستم ، هکر قانونمند و کارشناس امنیت سایبری ، سابقه همکاری با بیش از 50 سازمان دولتی ، خصوصی ، نظامی و انتظامی در قالب مشاور ، مدرس و مدیر پروژه ، مدرس دوره های تخصص شبکه ، امنیت ، هک و نفوذ ، در حال حاضر در ایران دیگه رسما فعالیتی غیر از مشاوره انجام نمیدم و مقیم کشور ترکیه هستم ، عاشق آموزش و تدریس هستم و به همین دلیل دوره های آموزشی که ضبط می کنم در دنیا بی نظیر هستند.

نظرات