Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
lpi1:dateirechte [2014/11/26 10:37] ingo_wichmann [Beispiel: Weniger Rechte für Eigentümer und Gruppe] |
lpi1:dateirechte [2018/11/06 13:06] |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Befehle Dateirechte ====== | ||
- | === Benutzer anlegen === | ||
- | useradd -m benutzer | ||
- | === Benutzer löschen === | ||
- | userdel -r benutzer | ||
- | |||
- | === Dateizugriffsrechte betrachten === | ||
- | ls -l datei | ||
- | === Verzeichnisrechte betrachten === | ||
- | ls -ld verzeichnis | ||
- | |||
- | === Besitzer der Datei ändern === | ||
- | chown benutzer datei | ||
- | === Gruppe der Datei ändern === | ||
- | chown :users datei | ||
- | chgrp users datei | ||
- | |||
- | === SUID Recht der Datei ändern === | ||
- | chmod u+s programm | ||
- | |||
- | programm starten und real bzw. effective UID prüfen: | ||
- | ps -eo cmd,ruser,euser | ||
- | |||
- | chmod u+s /bin/cat | ||
- | cat & | ||
- | ps -eo cmd,ruser,euser -C cat | ||
- | |||
- | === GUID Recht der Datei ändern === | ||
- | chmod g+s datei | ||
- | |||
- | === Gruppen eines Benutzers anzeigen === | ||
- | id benutzer | ||
- | |||
- | === Was darf eine Gruppe? === | ||
- | find / /dev -xdev -group users -ls | ||
- | |||
- | === Alle SUID-root Dateien finden === | ||
- | find / -xdev -type f -user root -perm /4000 -ls 2>/dev/null | ||
- | find / -xdev -type f -perm -u=s -ls | ||
- | |||
- | === Allen Programmen das Ausführungsrecht nehmen === | ||
- | find verzeichnis/ -type f -perm /0111 -exec chmod a-x {} \; | ||
- | oder schneller | ||
- | find verzeichnis/ -type f -perm /0111 -print0 | xargs -0 chmod a-x | ||
- | |||
- | ====== Beispiel: Schreibrechte im Verzeichnis - mehr als man denkt ====== | ||
- | mkdir /test | ||
- | id nutzer17 | ||
- | <file> | ||
- | uid=1001(nutzer17) gid=100(users) groups=100(users),16(dialout),33(video) | ||
- | </file> | ||
- | id iw | ||
- | <file> | ||
- | uid=1000(iw) gid=100(users) groups=100(users),16(dialout),17(audio),33(video) | ||
- | </file> | ||
- | chown iw:users /test/ | ||
- | chmod g+w /test/ | ||
- | ls -ld /test/ | ||
- | <file> | ||
- | drwxrwxr-x 2 iw users 4096 Oct 10 17:30 /test/ | ||
- | </file> | ||
- | su - iw | ||
- | cat <<EOF > /test/unveraenderbar.txt | ||
- | <file> | ||
- | Dies ist ein unveraenderlicher Text | ||
- | </file> | ||
- | EOF | ||
- | chmod u=rw,g=r,o=r /test/unveraenderbar.txt | ||
- | logout | ||
- | su - nutzer17 | ||
- | ls -l /test/unveraenderbar.txt | ||
- | <file> | ||
- | -rw-r--r-- 1 iw users 36 2005-10-10 17:32 /test/unveraenderbar.txt | ||
- | </file> | ||
- | vi /test/unveraenderbar.txt | ||
- | ls -la /test/ | ||
- | <file> | ||
- | insgesamt 12 | ||
- | drwxrwxr-x 2 iw users 4096 2005-10-10 17:35 . | ||
- | drwxr-xr-x 22 root root 4096 2005-10-10 17:30 .. | ||
- | -rw-r--r-- 1 nutzer17 users 34 2005-10-10 17:35 unveraenderbar.txt | ||
- | </file> | ||
- | |||
- | ====== Beispiel: Weniger Rechte für Eigentümer und Gruppe ====== | ||
- | ''/tmp/datei256'' : | ||
- | <file> | ||
- | #!/bin/bash | ||
- | echo executable | ||
- | </file> | ||
- | chmod 256 /tmp/datei256 | ||
- | |||
- | ====== Beispiel: Gruppenzugehörigkeiten leben länger als man denkt ====== | ||
- | groupadd projekt | ||
- | useradd -m -G projekt iw | ||
- | touch /tmp/datei | ||
- | chown root:projekt | ||
- | chmod g+w /tmp/datei | ||
- | su - iw | ||
- | id iw | ||
- | echo test1 >> /tmp/datei | ||
- | su - | ||
- | usermod -G users iw | ||
- | id iw | ||
- | logout | ||
- | id iw | ||
- | echo test1 >> /tmp/datei | ||
- | |||
- | ====== Beispiel: Ungewollte Reinkarnation unter Linux ====== | ||
- | useradd -m chef | ||
- | userdel chef | ||
- | useradd -m raumpflege | ||
- | ls -l /home | ||
- | |||
- | ====== Beispiel: Auswirkung von mount-Optionen ====== | ||
- | mkdir /mnt/hda2 | ||
- | mount -o ro /dev/hda2 /mnt/hda2 | ||
- | touch /mnt/hda2/test | ||
- | |||
- | Weitere Mount-Optionen mit Auswirkungen auf Dateirechte: | ||
- | |Option |Bedeutung| | ||
- | |nodev |Gerätedateien sind nicht erlaubt| | ||
- | |noexec | Ausführbare Dateien sind nicht erlaubt | | ||
- | |nosuid | S-BIT wird ignoriert | | ||
- | |noatime|Keine Aktualisierung der atime | | ||
- | |relatime|atime wird nur aktualisiert, wenn ein Schreibzugriff in der inode erfolgt | | ||
- | |ro | Dateien sind nicht veränderbar | | ||
- | |||
- | |||
- | |||
- | ====== Einstellung zum Erzeugen neuer Dateien ====== | ||
- | umask 007 z.B. Für Gruppenarbeit | ||
- | umask 077 z.B. Für Singles, Einzelarbeiter | ||
- | |||
- | /etc/profile Systemweite Einstellen der umask | ||
- | |||
- | |||
- | |||
- | |||
- | ====== Links ====== | ||
- | * [[ http://www.heise.de/security/news/meldung/69292 | Sind ACLs unter Windows "besser"? ]] | ||
- | * [[ http://www.matthiess.de/freie-software/linux/posix-acl-erste-schritte | Erste Schritte mit posix-acls ]] | ||
- | * [[ http://www.suse.de/~agruen/acl/linux-acls/online | Detailierte Beschreibung Linux ACLs ]] | ||