اطلاعیه

بستن
No announcement yet.

محدود کرد دسترسی در لینوکس/یونیکس با توجه به دستور(Command)

بستن
X
 
  • فیلتر کردن
  • زمان
  • نمایش
Clear All
پست های جدید

    محدود کرد دسترسی در لینوکس/یونیکس با توجه به دستور(Command)

    چگونه می توان در سیستم عامل های یونیکسی دسترسی به دستور ها را فقط به کاربران معتبر و شناخته شده ارائه کزد؟ برای این کار باید از گروه بندی افراد برای دسترسی به فرامین استفاده کنیم. گروه ها واحد هایی هستند که کاربران در غالب آنها به منابعی دسترسی دارند. حال این منابع دایرکتور ها و منابع سخت افزاری باشند یا دستور ها.

    پیش از شروع می توانید پست های مدیریت کاربران 1 و 2 و 3 را بخوانید.

    گام اول : ایجاد گروه و افزودن کاربران به آن :
    برای شروع کار ابتدا باید گروهی را تعریف کنیم و کاربران مجاز را به گروه اضافه کنیم.برای ساخت گروه مناسب (هر نامی که شما بخواهید) دستور زیر را اجرا کنید.(بجای نام گروه نام دلخواه تان را بنویسید)

    کد PHP:
    groupadd appallow 
    فرض کنید کاربران user03 , user02 , user01 و user04 در سیستم هستند. با غالب دستوری زیر باید کاربران را به گروه اضافه کنیم.در این مثال کاربران user01 و user02 را به گروه اضافه می کنیم. (خط های 2 و 3 از خطوط زیر)

    کد PHP:
    usermod -aG GROUPNAME USERNAME

    usermod 
    -aG appallow user01

    usermod 
    -aG appallow user02 
    در خطوط بالا سوئیچ های a- مخفف add یعنی افزودن کاربر و G- یعنی گروه(در اینجا appqllow)بعنوان گروه های اضافی یا تکمیلی برای کاربر است.

    همانطور که می دانید در دستور useradd سوئیچ g- تعیین کننده گروه اصلی کاربر است و به این معناست که در لینوکس تمامی کاربران حتمن در هنگام ایجاد شدن عضو یک گروه می شوند که معمولا همنام با نام کاربریش می باشد.

    گام دوم : اعمال محدودیت ها :
    پس از ایجاد گروه و عضو کردن کاربران باید گروه دستور را تغییر دهیم.اگر در خط فرمان دستور ls -l /sbin/auditdرا اجرا کنید خط زیر را خواهید دید :

    کد PHP:
    r-xr-xr-x 1 root root       12336 Mar 30  2010 auditd
    گروه این دستور root است یعنی فقط کاربر root و دیگر اعضای گروه root می تواند این دستور را اجرا کنند.در این آموزش ما یک اسکریپت بصورت زیر را خواهیم نوشت و تغییرات را روی ان انجام می دهیم.اسکریپت ما بسیار ساده است و فقط به شما سلام ولی فقط به کسانی که حق اجرا دارند.(اعضای گروه).ابتدا با دستور cd به مسیر دلخواه بروید.

    کد PHP:
    cd /usr/local/bin 
    و سپس با هر وسرایشگر متنی دستورات زیر را با فایلی به نام mytset ذخیره کنید.

    کد PHP:
    /bin/bash!#

    echo HELLO $USER 
    شما با خطوط بالا یک دستور به نام mytest ساختید که به شما سلام می کند.ابتدا با دستور های زیر گروه این دستور را appallow قرار می دهیم.(خط اول شکلی کلی فرمت دستور و خط دوم یک مثال است) به این دلیل باید گروه دستور را تغییر دهیم چونکه گروه پیش فرض آن همان گروه سازنده آن است.(دستور chgrp مخفف Change Group است)

    کد PHP:
    chgrp GROUPNAME /path/to/command

    chgrp appallow 
    /usr/local/bin/mytest 
    حالا نوبت می رسد که تعیین کنیم چه افرادی حق اجرای دستور دارند.با پرمیشن 750 اینطور تعیین می کنیم که مالک فایل (دستور mytest) مجوزهای write , read و execute را دارندف افراد عضو گروه(گروه appallow ) حق read و execute را دارند ولی دیگران اصلن مجوزی ندارند.(خط اول شکل کلی دستور و خط دوم یک مثال) می توانید آموزش مجوز های لینوکسی را از اینجا بخوانید

    کد PHP:
    chmod 750 /path/to/command

    chmod 750 
    /usr/local/bin/mytset 
    با اجرای دستور های بالا کار تمام شد و فقط باید امتحان کنیم.برای تست آن هم از دستور su کمک می گیریم که می توانید راهنمای آنرا از اینجا بخوانید. ما یکبار با user01 که عضور گروه است برنامه را تست می کنیم و یکبار با user04 که عضوی از گروه نیست(خط 1 با دستور su مجوز اجرایی با کاربر user01 و خط سوم مجوز اجرایی با کاربرuser03 را می دهد)

    کد PHP:
    su – user01 -/usr/local/bin/mytest

    OUTPUTE 
    HELLO user01

    su – user03 
    -/usr/local/bin/mytest

    OUTPUT 
    bash: /usr/local/bin/mytestPermission denied 
    نویسنده نامی امیر
    آخرین ویرایش توسط Habili; در تاریخ/ساعت 01-12-2020, 12:13 AM.

درباره انجمن منطقه لینوکسی ها

انجمن منطقه لینوکسی ها با هدف ارتقاء سطح علمی کاربران در سطح جهانی و همچنین کمک به بالا بردن سطح علمی عمومی در زمینه های تخصصی فوق پایه گذاری شده است. انجمن منطقه لینوکسی ها از طریق کارشناسان و متخصصان پاسخگوی سوالات گوناگون کاربران مبتدی یا پیشرفته میباشد تا حد امکان تلاش شده که محیطی متنوع و کاربر پسند و به دور از هرگونه حاشیه جهت فعالیت کاربران در این انجمن ایجاد شود. لذا ما به صورت مستمر برای پیشرفت کمی و کیفی محتوی و اطلاعات انجمنمان میکوشیم که این برای ما ارزشمند و حائز اهمیت است. کلیه حقوق،اطلاعات و مقالات در این انجمن متعلق به سایت منطقه لینوکسی ها میباشد، و هرگونه نسخه برداری بدون ذکر منبع مورد پیگرد قانونی خواهد شد.

شبکه های اجتماعی

ایمیل مدیریت

Habili@linux-zone.org

در حال انجام ...
X