Warum brauchen wir ein Berechtigungsmanagement? 1. Computerressourcen sind begrenzt und wir müssen Computerressourcen vernünftig zuweisen. 2. Linux ist ein Mehrbenutzersystem. Für jeden Benutzer ist der Schutz der Privatsphäre sehr wichtig. rwx-Berechtigungen für das Verzeichnis Aktueller Benutzer: Erstellen Sie ein Testdir-Verzeichnis und rufen Sie das Testdir-Verzeichnis auf. Erstellen Sie einen Dateitest. $ mkdir Testverzeichnis $ cd Testverzeichnis $ Berührungstest Ändern Sie die Testdir-Berechtigung auf 000 und versuchen Sie, ls testdir auszuführen $ chmod 000 Testverzeichnis $ ls testdir/ ls: Verzeichnis testdir/ kann nicht geöffnet werden: Berechtigung verweigert Ändern Sie die Testdir-Berechtigung auf 400 und versuchen Sie, ls testdir auszuführen $ chmod 400 Testverzeichnis ls -l Testverzeichnis/ ls: kann nicht auf testdir/test zugreifen: Berechtigung verweigert gesamt 0 -????????? ? ? ? ? ? prüfen Ergebnis: Die Dateiliste im Verzeichnis kann gelesen werden, aber die spezifischen Dateiinformationen (Berechtigungen, Größe, Benutzergruppe, Zeit usw.) können nicht angezeigt werden, obwohl der aktuelle Benutzer der Eigentümer von /testdir/test ist und über RWX-Berechtigungen verfügt. Mit der r-Berechtigung für ein Verzeichnis können Sie die Liste der Dateien im Verzeichnis lesen. Versuchen Sie, in das Verzeichnis „Testdir“ zu wechseln. $ cd testdir/ -bash: cd: testdir/: Berechtigung verweigert Es scheint, dass die R-Berechtigung uns nicht erlaubt, das Verzeichnis zu betreten. Versuchen wir, eine X-Berechtigung hinzuzufügen. ~$ chmod 500 testdir/ ~$ cd testdir/ ~/testdir$ ls -l gesamt 0 -rw-rw-r-- 1 Landstreicher Landstreicher 0 19. Nov. 08:16 Test Erfolgreich eingegeben. Wenn wir über die Berechtigung x für ein Verzeichnis verfügen, können wir das Verzeichnis betreten. In diesem Arbeitsverzeichnis können wir die Dateiliste und Dateiattributinformationen anzeigen. Versuchen Sie, die Testdatei zu löschen oder eine neue Datei „test1“ zu erstellen. ~/testdir$ rm test rm: „Test“ kann nicht entfernt werden: Berechtigung verweigert ~/testdir$ touch test1 touch: kann „test1“ nicht berühren: Berechtigung verweigert Wenn wir über RX-Berechtigungen für ein Verzeichnis verfügen, können wir den Inhalt des Verzeichnisses nicht ändern. Die Liste der Dateien in einem Verzeichnis kann als Inhalt des Verzeichnisses betrachtet werden. Ein Benutzer mit der Berechtigung „w“ für ein Verzeichnis kann den Inhalt des Verzeichnisses hinzufügen oder löschen. ~/testdir$ chmod 700 . ~/testdir$ rm test ~/testdir$ touch test1 ~/testdir$ ls -l gesamt 0 -rw-rw-r-- 1 Landstreicher Landstreicher 0 19. Nov. 08:30 test1 umask Im obigen Beispiel sind die Berechtigungen der neuen Datei, die wir erstellt haben, 664 (-rw-rw-r--). Warum ist die Standardberechtigung 664? Was passiert, wenn ich die Standardberechtigungen der neuen Datei ändern möchte? Konsoleneingabe umask: $ umask 0002 umask ist das Zweierkomplement der Berechtigungen. Die Standardberechtigungen für Dateien sind 666 – umask. Wenn wir nicht möchten, dass andere Benutzer R-Berechtigungen für die von uns erstellten Dateien haben, können wir den Komplementcode in 0006 ändern. ~/testdir$ umask 0006 ~/testdir$ touch test2 ~/testdir$ ls -l | grep test2 -rw-rw---- 1 Landstreicher Landstreicher 0 19. Nov. 08:38 test2 Warum lauten die Standarddateiberechtigungen nicht 777 – umask? Da neu erstellte Dateien standardmäßig keine Ausführungsberechtigungen haben, beträgt dieser Vorgang natürlich 666, wenn wir nur die RW-Berechtigungen berücksichtigen. Standardmäßig haben Verzeichnisse x Berechtigungen. Wenn die Umask 0002 ist, sollten die Standardberechtigungen der erstellten Verzeichnisse 777 - 0002 = 775 sein: ~/testdir$ mkdir dir1 ~/testdir$ ls -l | grep dir1 drwxrwxr-x 2 vagrant vagrant 4096 Nov 19 08:39 dir1 Sonderberechtigungen SUID Im Allgemeinen gelten die Dateiberechtigungen rwx. Lassen Sie uns die Berechtigungen von passwd überprüfen (Befehl zum Ändern des Passworts): ~/testdir$ ls -l /usr/bin/passwd -rwsr-xr-x 1 root root 47032 16. Mai 2017 /usr/bin/passwd Wenn Sie genau hinschauen, werden Sie feststellen, dass das x-Bit der Benutzerberechtigung tatsächlich s ist. Diese Berechtigung heißt SUID und ist nur für Binärprogramme gültig. Wenn ein Benutzer über die Ausführungsberechtigung für eine Datei verfügt, wird für die Ausführung der Datei vorübergehend die Unterstützung der Berechtigungen des Dateibesitzers erhalten. Beispiel: Alle Benutzerkennwörter werden in der Datei /etc/shadow gespeichert und die Standardberechtigung der Datei lautet -r-------- root root. Nur der Root-Benutzer hat obligatorische Schreibberechtigung. Warum können normale Benutzer dann trotzdem ihre Kennwörter ändern? Da der Befehl „passwd“ über SUID-Berechtigungen verfügt, erhält ein Benutzer bei der Ausführung des Befehls die Berechtigungsunterstützung des Dateieigentümers „root“ und kann somit sein eigenes Kennwort ändern. SGID Wenn die x-Position der Gruppe s wird, bedeutet dies, dass die Datei über SGID-Berechtigung verfügt. SGID-Berechtigungen sind für Binärprogramme gültig. Ähnlich wie bei SUID gilt: Wenn ein Benutzer über die Berechtigung x für eine Datei verfügt, erhält beim Ausführen der Datei die Benutzergruppe, zu der die Datei gehört, die Berechtigungsunterstützung. Neben Binärprogrammen können SGIDs auch für Verzeichnisse festgelegt werden. Wenn der Benutzer über SGID-Berechtigungen für das Verzeichnis verfügt: Die effektive Benutzergruppe des Benutzers in diesem Verzeichnis wird zur Benutzergruppe dieses Verzeichnisses. Wenn der Benutzer über die w-Berechtigung für das Verzeichnis verfügt, ist die Benutzergruppe der vom Benutzer im Verzeichnis erstellten Dateien dieselbe wie die Benutzergruppe des Verzeichnisses. Diese Genehmigung ist für die Projektentwicklung wichtig. SBIT Diese Berechtigung ist derzeit nur für Verzeichnisse gültig: Wenn ein Benutzer über w,x-Berechtigungen für dieses Verzeichnis verfügt und er einen Ordner oder ein Verzeichnis in diesem Verzeichnis erstellt, sind nur der Benutzer und der Root berechtigt, die Datei zu löschen. Wenn das x-Berechtigungsbit von „Andere“ t ist, bedeutet dies, dass der Ordner über die SBIT-Berechtigung verfügt. Beispielsweise das Verzeichnis /tmp: $ ls -l / | grep tmp drwxrwxrwt 4 root root 4096 19. Nov. 09:09 tmp $ sudo -s # Berührungstest root@vagrant-ubuntu-trusty-64:/tmp# beenden Ausfahrt vagrant@vagrant-ubuntu-trusty-64:/tmp$ rm test rm: schreibgeschützte normale leere Datei „Test“ entfernen? y rm: „Test“ kann nicht entfernt werden: Vorgang nicht zulässig So legen Sie die drei oben genannten Berechtigungen fest Wenn Sie in den normalen Berechtigungseinstellungen vor den drei Zahlen eine weitere Zahl hinzufügen, steht die Zahl davor für diese Berechtigungen:
Zum Beispiel: # chmod 777 /tmp # ls -l / | grep tmp drwxrwxrwx 4 Wurzel Wurzel 4096 Nov 19 09:17 tmp # chmod 1777 /tmp # ls -l / | grep tmp drwxrwxrwt 4 Wurzel Wurzel 4096 Nov 19 09:17 tmp Ende. Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Das könnte Sie auch interessieren:
|
<<: Tutorial zur Installation und Verwendung des Elasticsearch-Tools cerebro
>>: Tutorial zur kostenlosen Konfiguration der MySQL 5.7.18-Installationsversion
Code: <input Typ="text" Klasse="...
In diesem Artikel wird der spezifische Code von V...
Ich habe heute mit den Netzwerkeinstellungen unte...
1. Hintergrund Bei unserer täglichen Website-Wart...
Inhaltsverzeichnis 1. Selbstaufzählbare Eigenscha...
Wenn Sie nun das Video-Tag auf einer Seite verwen...
Inhaltsverzeichnis 1. MySQL 8.0.18 installieren 2...
1. Installieren Sie zuerst die Pagode Installatio...
Code kopieren Der Code lautet wie folgt: <hr S...
1. Erstellen Sie eine Docker-Netzwerkkarte [root@...
Inhaltsverzeichnis Überblick Typzusicherungen in ...
Frage Bei der Installation von Docker mithilfe de...
Vorwort Bei der Arbeit an einem Hochverfügbarkeit...
Inhaltsverzeichnis Vorwort 1. Was ist Phantomlese...
Installieren Sie vor der Installation von Tomcat ...