כיצד להשתמש מוגבלים Shell כדי הגבל איזה עושים יכול משתמש לינוקס

Mar 25, 2025
לינוקס
Fatmawati Achmad Zaenuri / Shutterstock

מגביל פגז מוגבל במה חשבון משתמש יכול לעשות על לינוקס. משתמש מוגבל לא יכול לשנות את המדריך שלהם, ואתה קובע אילו פקודות יש להם גישה. הנה איך להקים פגז מוגבל על לינוקס.

כיורים מוגבלים

פגז מוגבל אינו פגז שונה. זהו מצב שונה של פגז רגיל . ה לַחֲבוֹט , קורן , דג יכולה, ופצצות אחרות כול להיות מופעלות במצב מעטפת מוגבל. אנחנו נהיה באמצעות Bash במאמר זה, אבל אותם עקרונות החלים על קונכיות אחרים.

בגלל פגזים מוגבלים הם רק דרך נוספת באמצעות הפגז הרגיל שלך, הם קלים להגדיר. אין מה להתקין, והם זמינים בכל מקום לינוקס היא.

קונכיות מוגבלות יכולות להיות מיושמות על תסריטים, מדי. המבטיחה כי כל נזק הם עלולים לגרום אם הם כבר כתוב באופן שגוי מוגבל לגבולות העולם המוגבלים שלהם כי אין להם גישה למחשב כולו.

שים לב, עם זאת, כי פגזים מוגבלים איננו לגמרי לברוח-הוכחה. מישהו עם ידע מספיק יכול לברוח קליפה מוגבלת. הם פתרון מעולה עבור הצבת גבולות בטוחים על משתמש מזדמן, אך אין להסתמך על קונכיות יוגבלו מכל ביטחון העולם האמיתי על מערכת הייצור.

קָשׁוּר: מה ההבדל בין Bash, ZSH, ונרתיקים לינוקס אחרים?

Bash המוגבל

כאשר אתה מפעיל Bash כמעטפת מוגבלת, למשתמש יש כמה יכולות הוסרו מהם. באופן ספציפי, המשתמש לא יכול -

  • להשתמש CD כדי לשנות את ספריית העבודה.
  • שנו את הערכים של $ PATH , $ SHELL , $ BASH_ENV , או $ ENV משתנה סביבתי (אבל הם יכולים לקרוא את הערכים הנוכחיים).
  • קריאה או שינוי SHELLOPTS $ להפגיז אפשרויות סביבתיות.
  • נתב מחדש את הפלט של הפקודה.
  • Invoke פקודות הדורשות נתיב כדי לאתר אותם. כלומר, אתה לא יכול לשלוח פקודה שיש לה חתכים אחד או יותר קדימה " - " בה.
  • לעורר Exec להחליף תהליך שונה עבור הפגז.
  • השתמש בכל התכונות הוגבלו על פי התסריט.

אתה יכול לקרוא א פגז Bash מוגבל על ידי שימוש --R אפשרות (מוגבלת). מנסה לעשות משימה פשוטה כמו שינוי ספריית העבודה אסור. מסר תמציתי אומר לך כי CD מוגבל.

 bash -r 
 מסמכים cd 

בש פגז יכול גם לזהות מתי זה כבר מופעל באמצעות "rbash" במקום "bash". זה גורם לו להתחיל כמעטפת מוגבלת, מדי. זה מספק דרך נוחה להגדיר את מעטפת ברירת המחדל עבור משתמש מסוים, אשר נשתמש בקרוב.

אם נשתמש איפה הפקודה על אובונטו לחפש את rbash קבצים, נראה כי ההפעלה היא בספריית "usr / bin". דף הגבר נמצא "/ usr / share / גבר / man1" ספרייה.

משתמש ב ls הפקודה עם -l (ארוך) אפשרות מגלה כי rbash הוא למעשה קישור סימבולי ל לַחֲבוֹט .

 whereis rbash 
 ls -l / usr / bin / rbash 

ביום Manjaro ופדורה, את rbash היה קישור סמלי להיווצר. זה עובד בשני הפצות:

 whereis rbash 
 sudo ln -s / bin / bash / bin / rbash 
 whereis rbash 

בפעם השנייה אנו משתמשים איפה הפקודה, הוא מוצא rbash בספריית "/ usr / bin".

הגבלת משתמש

בואו יצירת חשבון משתמש חדש בשם "מיני". לאחר מכן, נגדיר את הקונכיות שלהם להיות הפגז המוגבל באמצעות - (Shell) אפשרות של useradd פקודה. אנו מציעים גם להגדיר את סיסמת החשבון משתמש ב passwd. הפקודה, ואנו ניצור תיקייה הביתה עבורם.

ה - (הורים) דגל mkdir הפקודה אומרת mkdir כדי ליצור את ספריית היעד וכל ספריות האב כי הוא צריך ליצור, מדי. אז על ידי יצירת ספריית "/ home / מיני / bin", אנו יוצרים את הספרייה "/ home / מיני" בעת ובעונה אחת.

 sudo useradd מיני -s / bin / rbash 
 sudo passwd מיני 
 sudo mkdir -p / home / מיני / bin 

כאשר והמיני מתחבר, היא תהיה הפועל במעטפת מוגבלת.

 cd 

היא לא יכולה להפעיל פקודות צורך לכלול קו נטוי " - ":

 / usr / bin / פינג 

עם זאת, היא עדיין יכולה לבצע פקודות הנמצאות בנתיב.

 פינג 

זו לא התנהגות שניתן לצפות, וזה בהחלט לא מה שאנחנו רוצים. כדי להדק את ההגבלות נוספות, אנחנו צריכים לשנות את הנתיב כי הפגז של מיני ישתמש כדי לחפש פקודות.

הידוק ההגבלות

כאשר יצרנו ספריית הבית של מיני "/ home / מיני", יצרנו גם ספרייה "/ home / מיני / bin". זה המקום שבו זה המדריך נכנס לשחק.

אנחנו הולכים לערוך מיני של ".bash_profile" קובץ ולהגדיר את דרכה אל נקודה לספרייה שרק. אנחנו גם נגביל ".bash_profile" של מיני קבצים, כך שורש יכול לערוך אותו. פירוש הדבר הוא שלא המשתמשים אחרים יכול לערוך את הקובץ ולשנות את דרכה.

 sudo gedit /home/minnie/.bash_profile

ערוך את הקיים "PATH =" או להוסיף את השורה הבאה:

 path = $ HOME / bin 

שמור את הקובץ. נו לשנות את הבעלים של הקובץ כדי השורש באמצעות chown הפקודה לשנות את הרשאות הקובץ משתמש ב chmod פקודה. רק משתמש root תוכל לערוך את הקובץ.

 sudo chown שורש: שורש /home/minnie/.bash_profile
 sudo chmod 755 /home/minnie/.bash_profile
 ls -l /home/minnie/.bash_profile

מיני משתמש בפעם הבאה שיתחבר לאתר, נקודות נתיב אותה תיקייה אחת.

המיני של המשתמש המוגבל שלנו יכול להשתמש בש רק מובנה פקוד כמו הֵד , כינוי , ו להתנתק . היא אפילו לא יכולה להשתמש ls -

 ls 

נצטרך להרפות קצת החנק שלנו אם אנחנו רוצים שהם יהיו מסוגלים לעשות שום דבר שימושי בכלל. ניצור כמה קישורים סמליים מספריית "הסל" של מיני על הפקודות שאנחנו רוצים למיני תוכל להשתמש.

 sudo ln -s / bin / ls / home / מיני / bin 
 sudo ln -s / bin / העליון / home / מיני / bin 
 sudo ln -s / bin / uptime / home / מיני / bin 
 sudo ln -s / bin / פינקי / home / מיני / bin 

כאשר ומיני היומנים הבאים, היא תמצא כי היא יכולה להשתמש בש מובנית פקוד, בתוספת אלה פקוד קושרו.

 ls 
 פינקי דייב 
 uptime 

הגבלת משתמשים קיימים

יצרנו מיני כמשתמש חדש. ל לשנות את הקליפה קיים משתמשים, אנחנו יכולים להשתמש - (Shell) אפשרות של א usנרמן פקודה.

 sudo -s usermod / bin / מרי rbash 

אתה יכול להשתמש פָּחוּת הפקודה על "/ etc / passwd" את הקובץ במהירות לראות מה פגז מוגדר בתור מעטפת ברירת המחדל של המשתמש.

 פחות / etc / passwd 

אנו יכולים לראות כי מרי ישתמש משתמש הקליפה המוגבלת כשהוא היומנים באים.

זכור כדי להחיל את השינויים האחרים המגבילות שלהם $ PATH משתנה הסביבה להגדיר את הפקודות שאתה רוצה את מרי שהמשתמש יוכל לבצע.

הגבלת סקריפטים

משתמש רגיל, ללא מגבלות יכול לשגר בסקריפטים המתבצעים בתוך קונכייה מוגבלת. העתק את השורות הבאות והדבקתן עורך. שמור את הקובץ בשם "restricted.sh" ולסגור את העורך.

 #! / Bin / bash

# מתחיל סקריפט פגז רגיל Bash
הד "## במצב בשינה חופשי! ##"

הֵד
הד "הספרייה הנוכחית:` pwd`"
הד "שינוי מדריך"
cd / usr / share
הד "עכשיו בספרייה:` pwd`"
הד "שינוי לתיקיית הבית"
cd \
הד "עכשיו בספרייה:` pwd`"

# מוגבל הגדרת מצב
-r סט

הֵד
הד "## במצב מוגבל! ##"

הֵד
הד "הספרייה הנוכחית:` pwd`"
הד "שינוי מדריך ל / home /"
cd / home
הד "עדיין בספרייה:` pwd`"

הֵד
הד "מנסה להתחיל עוד פגז"
/ Bin / bash

הֵד
הד "מנסה לנתב פלט הפקודה"
ls -l $ בית & gt; my_files.txt
חתול my_files.txt
הֵד

יציאה 0 

אנחנו צריכים להשתמש chmod הפקודה עם + X (לבצע) דגל על ​​מנת להפוך את הפעלת סקריפט.

 chmod + x restricted.sh 

חלק הראשונים של התסריט רצו במעטפת נורמלית.

 ./ restricted.sh 

החלק השני של התסריט-הביט אחרי הקו-הריצות "סט -r" במעטפת מוגבלת.

אף אחת מהפעולות ניסו להצליח בחלק המוגבל של התסריט.

סקריפט כולו יכול להתבצע בטווח במעטפת מוגבלת על ידי הוספה --R אל השורה הראשונה:

! # / Bin / bash -r 

זכור הודיני

קונכיות מוגבלות שימושיות, אך לא ודאי לגמרי. משתמש מיומן מספיק תוכל להימלט מהם. אבל כאשר נעשה שימוש בשיקול, הם דרך יעילה כדי להקים מערכת מגבלות עבור חשבון מסוים.


לינוקס - המאמרים הפופולריים ביותר

כיצד לכרוך משתמשים לשנות את הסיסמאות שלהם ב- Linux

לינוקס Nov 4, 2024

איליה Titchev / Shutterstock סיסמאות הן Keystone לביטחון חשבון. אנחנו נראה לך איך לאפס סיסמא, תקוף תפו�..


כיצד לעבד קו קובץ על ידי קו בתוך סקריפט לינוקס Bash

לינוקס Feb 3, 2025

Fatmawati Achmad Zaenuri / Shutterstock זה די קל לקרוא את התוכן של קו קובץ טקסט לינוקס על ידי קו במעטפת תס..


מהו "שורש" על לינוקס?

לינוקס Jul 7, 2025

Fatmawati Achmad Zaenuri / Shutterstock.com משתמש root הוא הישות החזקה ביותר ביקום לינוקס עם סמכויות בלתי מו..


מה חדש ב- GNOME 41?

לינוקס Sep 16, 2025

סביבת שולחן העבודה של לינוקס גַמָד 41 שוחרר ב -22 בספטמבר, 2021. Coming חם על העקבים של שינויים עבודה-הסט�..


מחשב נייד לינוקס גיימינג החדש מקנה את המפרט להפעיל שום דבר

לינוקס Oct 20, 2025

Juno מחשבים. לינוקס והמשחקים מתחילים לבוא יחד הרבה יותר לאחרונה. ה סיפון קיטור הוא בדרך ע..


מה חדש בפדורה 35

לינוקס Nov 2, 2024

פדורה 35, כובע אדום "S חינם חלוקת לינוקס (הפצה), שוחרר ב -2 בנובמבר, 2021. מתוך חוויה שולחני מעודכנ�..


אובונטו 21.10 מגיע עם שולחן 40 GNOME אישית

לינוקס Oct 14, 2025

אובונטו אם אתה משתמש אובונטו, או מישהו שחושב לתת לו לנסות, היום הוא יום טוב. Canonical יש פרסמה רשמי..


10 פקודות לינוקס בסיסיות למתחילים

לינוקס Oct 13, 2025

רק תחילת העבודה על לינוקס? מה שהופך את עצמך נוח עם שורת הפקודה הוא חיוני. אם אתה כבר מכיר את שורת הפקודה, �..


קטגוריות