Πώς να χρησιμοποιήσετε Περιορισμένη Shell να Οριακή Τι Linux χρήστης μπορεί να κάνει

Mar 25, 2025
Linux
Fatmawati Achmad Zaenuri / ShutTerstock

Μια περιορισμένη όρια κέλυφος τι ένας λογαριασμός χρήστη μπορεί να κάνει στο Linux. Ένας περιορισμένος χρήστης δεν μπορεί να αλλάξει τον κατάλογο τους, και να ελέγχετε ποιες εντολές έχουν πρόσβαση. Εδώ είναι πώς να δημιουργήσει ένα περιορισμένο κέλυφος σε Linux.

Περιορισμένη Κοχύλια

Μια περιορισμένη κέλυφος δεν είναι ένα διαφορετικό κέλυφος. Είναι ένα διαφορετικό τρόπο ένα πρότυπο κέλυφος . ο Κτυπώ δυνατά , Korn , Ψάρι , Και άλλα κελύφη μπορούν όλα να αρχίσει σε λειτουργία περιορισμένη κέλυφος. Θα πρέπει να χρησιμοποιούν Bash σε αυτό το άρθρο, αλλά οι ίδιες αρχές ισχύουν για τις άλλες κοχύλια.

Επειδή περιορισμένη κοχύλια είναι απλά ένας άλλος τρόπος για τη χρήση τυποποιημένων κέλυφος σας, είναι εύκολο να δημιουργηθεί. Δεν υπάρχει τίποτα για την εγκατάσταση, και είναι διαθέσιμο όποτε το Linux είναι.

Περιορισμένη κελύφη μπορεί να εφαρμοστεί σε σενάρια, πάρα πολύ. Αυτό εξασφαλίζει ότι κάθε ζημιά που μπορεί να προκαλέσει, αν έχετε γράψει σωστά περιορίζεται στα όρια της περιορισμένης κόσμο τους και ότι δεν έχουν πρόσβαση σε ολόκληρο τον υπολογιστή σας.

Θα πρέπει να γνωρίζετε, όμως, ότι η περιορισμένη κελύφη δεν είναι πλήρως διαφυγή. Κάποιος με αρκετή γνώση μπορεί να ξεφύγει από μια περιορισμένη κέλυφος. Είναι μεγάλη και αν για τη θέση ασφαλή όρια για ένα απλό χρήστη, αλλά δεν βασίζονται σε περιορισμένο κοχύλια για κάθε πραγματικό κόσμο της ασφάλειας σε ένα σύστημα παραγωγής.

ΣΧΕΤΙΖΕΤΑΙ ΜΕ: Ποια είναι η διαφορά μεταξύ Bash, zsh, και άλλων καρπών Linux;

Περιορισμένη Bash

Όταν εκτελείτε το Bash ως ένα περιορισμένο κέλυφος, ο χρήστης έχει κάποιες δυνατότητες από αυτές. Συγκεκριμένα, ο χρήστης δεν μπορώ :

  • Χρήση CD για να αλλάξετε τον κατάλογο εργασίας.
  • Αλλάξτε τις τιμές των $ PATH , $ SHELL , $ BASH_ENV , ή $ ENV περιβαλλοντικές μεταβλητές (αλλά μπορούν να διαβάσουν τις τρέχουσες τιμές).
  • Διαβάστε ή αλλαγή SHELLOPTS $ κέλυφος περιβαλλοντικές επιλογές.
  • Ανακατεύθυνση της εξόδου μιας εντολής.
  • Επικαλούνται εντολές που απαιτούν μια διαδρομή για να τους εντοπίσει. Δηλαδή, δεν μπορεί να εκδώσει μια εντολή που έχει ένα ή περισσότερα καθέτους « / " μέσα σε αυτό.
  • Επικαλούμαι exec να υποκαταστήσει μια διαφορετική διαδικασία για το κέλυφος.
  • Χρησιμοποιήστε οποιαδήποτε από τις περιορισμένες δυνατότητες σε ένα σενάριο.

Μπορείτε να επικαλεστεί μια περιορισμένη κέλυφος Bash χρησιμοποιώντας το -R (Περιορισμένη) δυνατότητα. Προσπαθώντας να κάνει μια απλή εργασία όπως η αλλαγή του καταλόγου εργασίας απαγορεύεται. Ένα μήνυμα λακωνική σας λέει ότι CD είναι περιορισμένη.

 bash -r 
 cd Documents 

Το Bash κέλυφος μπορεί επίσης να ανιχνεύσει όταν έχει γίνει επίκληση χρησιμοποιώντας «rbash» αντί για «bash.» Αυτό αναγκάζει να ξεκινήσει ως ένα περιορισμένο κέλυφος, πάρα πολύ. Αυτό παρέχει ένα βολικό τρόπο για να ορίσετε το προεπιλεγμένο κέλυφος για ένα συγκεκριμένο χρήστη, το οποίο θα χρησιμοποιήσουμε σύντομα.

Αν χρησιμοποιείτε το που είναι εντολών στο Ubuntu να ψάξουν για το rbash αρχεία, θα δούμε ότι το εκτελέσιμο είναι στο «usr / bin» κατάλογο. Η σελίδα man είναι στον κατάλογο «/ usr / share / man / man1».

Χρησιμοποιώντας το ls εντολή με το -μεγάλο (Μακρύ) η επιλογή αποκαλύπτει ότι rbash είναι στην πραγματικότητα μια συμβολική σύνδεση προς το κτυπώ δυνατά .

 whereis rbash 
 ls -l / usr / bin / rbash 

Σε Manjaro και Fedora, το rbash συμβολικό σύνδεσμο έπρεπε να δημιουργηθεί. Αυτό λειτουργεί και στις δύο κατανομές:

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

Τη δεύτερη φορά που χρησιμοποιούμε το που είναι εντολή, διαπιστώνει rbash στον κατάλογο «/ usr / bin».

Ο περιορισμός ένα χρήστη

Ας δημιουργήσετε ένα νέο λογαριασμό χρήστη με το όνομα «Minnie». Θα θέσει το κέλυφος τους για να είναι η περιορισμένη κέλυφος χρησιμοποιώντας το -μικρό (Κέλυφος) επιλογή του useradd εντολή. Λοιπόν επίσης ορίσετε τον κωδικό πρόσβασης του λογαριασμού χρησιμοποιώντας το περασμένος εντολή και θα δημιουργήσουμε ένα φάκελο στο σπίτι τους.

ο (Οι γονείς), σημαία, το mkdir εντολή λέει mkdir για να δημιουργήσει τον κατάλογο στόχο και κάθε γονέα τους καταλόγους που θα πρέπει να δημιουργήσει, πάρα πολύ. Έτσι, με τη δημιουργία του «/ home / Minnie / bin» κατάλογο, δημιουργούμε το «/ home / Minnie» κατάλογο την ίδια στιγμή.

 sudo useradd minnie -s / bin / rbash 
 sudo passwd minnie 
 sudo mkdir -p / home / minnie / bin 

Όταν Minnie συνδέεται με, αυτή θα πρέπει να τρέχει σε μια περιορισμένη κέλυφος.

 cd 

Δεν μπορεί να επικαλεστεί τις εντολές που πρέπει να περιλαμβάνει ένα κάθετο « / «:

 / usr / bin / ping 

Ωστόσο, μπορεί ακόμα να εκτελέσει τις εντολές που βρίσκονται στη διαδρομή.

 ping 

Αυτό δεν είναι η συμπεριφορά που θα αναμενόταν, και σίγουρα δεν είναι αυτό που θέλουμε. Για να σφίξετε περισσότερο τους περιορισμούς, θα πρέπει να αλλάξετε τη διαδρομή που κελύφους Minnie θα χρησιμοποιήσουν για να ψάξουν για τις εντολές.

Σύσφιξη τις Περιορισμοί

Όταν δημιουργήσαμε Αρχική Minnie του «/ home / Minnie», έχουμε επίσης δημιουργήσει ένα «/ home / Minnie / bin» κατάλογο. Αυτό είναι που αυτός ο κατάλογος μπαίνει στο παιχνίδι.

Εμείς πάμε για να επεξεργαστείτε Minnie του «.bash_profile» το αρχείο και να ορίσετε την πορεία της προς το σημείο μόνο αυτόν τον κατάλογο. Επίσης, θα περιορίσει «.bash_profile» αρχείο Minnie, έτσι ώστε μόνο ο root μπορεί να το επεξεργαστεί. Αυτό σημαίνει ότι κανένας άλλος χρήστης μπορεί να επεξεργαστεί το αρχείο και να αλλάξετε την πορεία της.

 sudo gedit /home/minnie/.bash_profile

Είτε να επεξεργαστείτε το υπάρχον «PATH =» ή να προσθέσετε την ακόλουθη γραμμή:

 PATH = $ HOME / bin 

Αποθηκεύστε το αρχείο. Καλά αλλάξετε τον ιδιοκτήτη του αρχείου να ρίζα χρησιμοποιώντας το chown εντολών και να αλλάξετε τα δικαιώματα αρχείων χρησιμοποιώντας το χλωμός εντολή. Μόνο ο χρήστης root θα είναι σε θέση να επεξεργαστείτε το αρχείο.

 sudo chown root: /home/minnie/.bash_profile[102 ρίζα]
  
 sudo chmod 755 /home/minnie/.bash_profile
 ls -l /home/minnie/.bash_profile

Την επόμενη φορά minnie χρήστης συνδέεται στο, σημεία δρόμο της σε ένα ενιαίο φάκελο.

minnie περιορισμένη χρήστης μας μπορεί να χρησιμοποιήσει μόνο Bash ενσωματωμένες εντολές όπως ηχώ , ψευδώνυμο , και Αποσύνδεση . Δεν μπορεί ακόμη και να χρησιμοποιήσουν ls !

 ls 

Θα πρέπει να χαλαρώσει τον ασφυκτικό κλοιό λίγο μας, αν θέλουμε να είναι σε θέση να κάνει κάτι χρήσιμο σε όλους. Θα δημιουργήσουμε κάποιες συμβολικές συνδέσεις από «bin» κατάλογος με τις εντολές Minnie ότι θέλουμε Minnie να είναι σε θέση να χρησιμοποιήσει.

 sudo ln -s / bin / ls / home / minnie / bin 
 sudo ln -s / bin / κορυφή / home / minnie / bin 
 sudo ln -s / bin / uptime / home / minnie / bin 
 sudo ln -s / bin / ροζ / home / minnie / bin 

Όταν Minnie δίπλα κούτσουρα στο, αυτή θα βρείτε ότι μπορεί να χρησιμοποιήσει το Bash ενσωματωμένες εντολές, καθώς και εκείνες οι εντολές που έχουν συνδεθεί με.

 ls 
 ροζ dave 
 uptime 

Ο περιορισμός υπάρχοντες χρήστες

Εμείς minnie δημιουργήθηκε ως νέος χρήστης. Προς το αλλάξετε το κέλυφος ενός υπάρχοντος χρήστη, μπορούμε να χρησιμοποιήσουμε το -μικρό (Κέλυφος) επιλογή του usermod εντολή.

 sudo usermod -s / bin / rbash Mary 

Μπορείτε να χρησιμοποιήσετε το πιο λιγο Εντολή για την «/ etc / passwd» το αρχείο για να δείτε γρήγορα τι κέλυφος έχει οριστεί ως το προεπιλεγμένο κέλυφος κάποιου χρήστη.

 λιγότερα / etc / passwd 

Μπορούμε να δούμε ότι η Μαρία χρήστης θα χρησιμοποιήσει το περιορισμένο κέλυφος όταν δίπλα κούτσουρα στο.

Θυμηθείτε να εφαρμόσει τις άλλες αλλαγές για να περιορίζει τους $ PATH μεταβλητή περιβάλλοντος και να ρυθμίσετε τις εντολές που θέλετε η mary χρήστης να είναι σε θέση να εκτελέσει.

Ο περιορισμός Σενάρια

Ένας τακτικός, απεριόριστος χρήστης μπορεί να ξεκινήσει σενάρια που εκτελούνται σε περιορισμένο κέλυφος. Αντιγράψτε τις παρακάτω γραμμές και επικολλήστε τα σε έναν επεξεργαστή. Αποθηκεύστε το αρχείο ως "περιορισμένο.sh" και κλείστε τον επεξεργαστή.

 #! / Bin / bash

# script ξεκινάει σε κανονικό κέλυφος bash
echo "## σε απεριόριστη λειτουργία! ##"

ηχώ
ECHO "Τρέχουσα κατάλογο:` Pwd` "
ECHO "Αλλαγή κατάλογου"
CD / USR / SHARE
echo "Τώρα στον κατάλογο:` Pwd` "
echo "Αλλαγή στο σπίτι κατάλογος"
cd ~
echo "Τώρα στον κατάλογο:` Pwd` "

# Ρύθμιση περιορισμένης λειτουργίας
ρυθμίστε

ηχώ
ECHO "## σε περιορισμένη λειτουργία! ##"

ηχώ
ECHO "Τρέχουσα κατάλογο:` Pwd` "
ECHO "Αλλαγή καταλόγου στο / σπίτι /"
CD / HOME
echo "ακόμα στον κατάλογο:` Pwd` "

ηχώ
echo "προσπαθώντας να ξεκινήσει ένα άλλο κέλυφος"
/ bin / bash

ηχώ
echo "προσπαθώντας να ανακατευθύνει την έξοδο εντολών"
LS -L $ HOME & GT; my_files.txt
γάτα my_files.txt
ηχώ

Έξοδος 0 

Πρέπει να χρησιμοποιήσουμε το χλωμός εντολή με το + x (Εκτέλεση) σημαία για να κάνετε το σενάριο εκτελέσιμο.

 chmod + x περιορισμένο.sh 

Το πρώτο μέρος του σεναρίου τρέχει σε ένα κανονικό κέλυφος.

 ./ restriled.sh 

Το δεύτερο τμήμα του σεναρίου - το bit μετά τη γραμμή "SET -R" σε ένα περιορισμένο κέλυφος.

Καμία από τις προσπάθειες δεν επιτύχει το περιορισμένο τμήμα του σεναρίου.

Ένα ολόκληρο σενάριο μπορεί να γίνει για να τρέξει σε ένα περιορισμένο κέλυφος προσθέτοντας -R στην πρώτη γραμμή:

! # / Bin / bash -r 

Θυμηθείτε το Houdini

Τα περιορισμένα κελύφη είναι χρήσιμα, αλλά όχι εντελώς αληθινά. Ένας επαρκώς εξειδικευμένος χρήστης μπορεί να είναι σε θέση να τα ξεφύγει. Αλλά όταν χρησιμοποιούνται με περίληψη, είναι ένας χρήσιμος τρόπος για τη δημιουργία ενός συνόλου περιορισμών για ένα συγκεκριμένο λογαριασμό.


Linux - Τα πιο δημοφιλή άρθρα

Πώς να υποχρεώσει τους χρήστες να αλλάξουν τους κωδικούς πρόσβασης σε Linux

Linux Nov 4, 2025

Ilya Titchev / Shutterstock Οι κωδικοί πρόσβασης είναι ο ακρογωνιαίος λίθος για την ασφάλεια του λο..


Τι νέο υπάρχει στο Ubuntu 21.04 «Δασύτριχη ιπποπόταμος»

Linux Apr 22, 2025

Η ολοκαίνουργια απελευθέρωση του Ubuntu 21.04 , ο Hirsute Hippo, κυκλοφόρησε στις 22 Απριλίου 2021. Είναι μια πρ..


Λιμενεργάτη για αρχάριους: Όλα όσα πρέπει να ξέρετε

Linux Jun 15, 2025

Λιμενεργάτης δημιουργεί συσκευασμένες εφαρμογές που ονομάζονται δοχεία. Κάθε δοχείο παρέχ..


Τι νέο υπάρχει στο δημοτικό OS 6 «Οντίν»

Linux Aug 14, 2025

στοιχειώδη, Inc. Υπάρχουν πολλές διανομές Linux (Διανομές) ότι οι άνθρωποι ισχυρίζονται εί..


Native παιχνιδιών σε Linux μπορεί να πεθαίνουν, και αυτό είναι εντάξει

Linux Sep 27, 2025

DC Studio / Shutterstock.com ο Ατμόσφαιρα , Ανακοίνωσε τον Αύγουστο του 2021 έχει Linux κύκλους τυχ..


Τι νέο υπάρχει στο Fedora 35

Linux Nov 2, 2025

Fedora 35, κόκκινο καπέλο Ελεύθερη Διανομή linux (Distri), κυκλοφόρησε στις 2 Νοεμβρίου 2021. Από μια ενη..


10 Βασικές Linux Εντολές για αρχάριους

Linux Oct 13, 2025

Απλά να ξεκινήσετε για το Linux; Κάνοντας τον εαυτό σας άνετα με τη γραμμή εντολών είναι απαραίτητη. Αν εί�..


Τι νέο υπάρχει στο Ubuntu 21.10 «Impish Ίντρι»

Linux Oct 14, 2025

Κανονικός Ubuntu 21.10 "Inspish Indri" ήταν απελευθερώνεται στις 14 Οκτωβρίου 2021. Διαθέτει Gn..


Κατηγορίες