Eine Einführung - Teil 7
Deutsche Angestellten Akademie
~$ ls -l
drwxr-xr-x 2 dany dany 4096 Nov 14 09:03 backup/
-rw-r--r-- 1 dany dany 845 Jul 24 13:45 .bash_aliases
-rw------- 1 dany dany 32726 Jan 15 15:08 .bash_history
-rw-r--r-- 1 dany dany 2410 Nov 13 12:14 .bashrc
drwxr-xr-x 2 dany dany 4096 Jan 15 16:05 Bilder/
drwxr-xr-x 6 dany dany 4096 Nov 15 15:38 bin/
drwxr-xr-x 6 dany dany 4096 Nov 15 15:38 bin/
erstes Zeichen: Filetype ( hier „d“ für directory )
Three permission triads | |
---|---|
first triad | what the owner can do |
second triad | what the group members can do |
third triad | what other users can do |
Each triad | |
first character | r: readable |
second character | w: writable |
third character | x: executable s or t: setuid/setgid or sticky (also executable) S or T: setuid/setgid or sticky (not executable) |
drwx------ 6 archie users 4096 Jul 5 17:37 Documents
Benutzer archie darf: lesen schreiben ausführen, Inhalt auflisten
dr-x------ 6 archie users 4096 Jul 5 17:37 Documents
Benutzer archie darf: lesen ausführen, Inhalt auflisten
d-wx------ 6 archie users 4096 Jul 5 17:37 Documents
Benutzer archie darf: in das Verz. Dateien schreiben, Dateien listen/öffnen deren Namen er kennt
d--x------ 6 archie users 4096 Jul 5 17:37 Documents
Benutzer archie darf: Dateien listen/öffnen deren Namen er kennt
-rw-r--r-- 1 archie users 5120 Jun 27 08:28 foobar
Benutzer archie darf: lesen/schreiben; Alle anderen dürfen lesen
~$ ls -l /usr/bin/passwd
-rwsr-xr-x 1 root root 54224 Aug 21 2017 /usr/bin/passwd*
~$ ls -ld /tmp/
drwxrwxrwt 18 root root 114688 Jan 16 20:29 /tmp//
chmod
- ändert Zugriffsrechte
chown
- ändert Datei / Verz. Besitzer
chgrp
- ändert die Ben. Gruppe
umask
- zeigt und setzt default Rechte
chmod +x mein-script.sh
chmod a+x mein-script.sh
chmod u+x mein-script.sh
chmod ug+x mein-script.sh
chmod -x verzeichnis
chmod -r mein-script.sh
chmod ugo-r mein-script.sh
chmod a-r mein-script.sh
chmod +x mein-script.sh
chmod 755 mein-script.sh
Recht | Wert | Recht | Wert | |
Lesen | 4 | Set-UID | 4 | |
Schreiben | 2 | Set-GID | 2 | |
Ausführen | 1 | Sticky | 1 |
chmod 4755 skript.sh
7 5 5
rwx r-x r-x
user group others
chown mhoe mein-script.sh
chown mhoe users mein-script.sh
chown mhoe. mein-script.sh
chown root mein-script.sh
chgrp users mein-script.sh
umask -S
Gibt an welche Rechte von den Standard-Rechten abgezogen werden.
0666 für Dateien, 0777 für Verz.
0666 - 0022 = 0644
Es gibt 3 Arten von Benutzern:
www-data
für apacheadduser | fügt einen neuen Nutzer hinzu |
adduser --system | fügt einen neuen System-Nutzer hinzu |
addgroup | fügt eine neue System-Grupppe hinzu |
deluser | löscht ein Nutzerkonto - NICHT sein home-Verz. |
usermod | ändert ein Nutzerkonto ( zb Gruppen, home-Verz., ... ) |
/etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
.....
sshd:x:111:65534::/run/sshd:/usr/sbin/nologin
lightdm:x:112:116:Light Display Manager:/var/lib/lightdm:/bin/false
pulse:x:113:117:PulseAudio daemon,,,:/var/run/pulse:/bin/false
Debian-gdm:x:117:123:Gnome Display Manager:/var/lib/gdm3:/bin/false
dany:x:1000:1000:dany,,,:/home/dany:/bin/bash
Benutzername : Passwort : UID : GID : Info : Heimatverzeichnis : Shell |
Benutzername | Dies ist der Benutzername in druckbare Zeichen, meistens in Kleinbuchstaben. |
Passwort | Hier steht verschlüsselt das Passwort des Benutzers (bei alten Systemen). Meist finden Sie dort ein x. Dies bedeutet, dass das Passwort verschlüsselt in der Datei /etc/shadow steht. Es ist auch möglich, den Eintrag leer zu lassen. Dann erfolgt die Anmeldung ohne Passwortabfrage (in der Datei /etc/shadow muss dann an Stelle des verschlüsselten Passwortes ein * stehen). |
UID | Die Benutzer-ID des Benutzers. Die Zahl hier sollte größer als 100 sein, weil die Zahlen unter 100 für Systembenutzer vorgesehen sind. Weiterhin muss die Zahl aus technischen Gründen kleiner als 64000 sein. |
GID | Die Gruppen-ID des Benutzers. Auch hier muss die Zahl wie bei der UID kleiner als 64000 sein. |
Info | Hier kann weitere Information vermerkt werden, wie z.B. der vollständige Name des Benutzers und persönliche Angaben (Telefonnummer, Abteilung, Gruppenzugehörigkeit u.ä.). |
Heimatverzeichnis | Das Heimatverzeichnis des Benutzers bzw. das Startverzeichnis nach dem Login. |
Shell | Die Shell, die nach der Anmeldung gestartet werden soll. Bleibt dieses Feld frei, dann wird die Standardshell /bin/sh gestartet. |
/etc/shadow
root:$6$j6bEnUnp$Vzb1mclygHlBegoYUC.DWZXvlqgokFyy7pAfFf6DqjG56hG.RzVM7BqqVl9To/2DwNqEn7Qg4SkoNliETWMIr0:17688:0:99999:7:::
daemon:*:17672:0:99999:7:::
www-data:*:17672:0:99999:7:::
backup:*:17672:0:99999:7:::
list:*:17672:0:99999:7:::
nobody:*:17672:0:99999:7:::
systemd-timesync:*:17672:0:99999:7:::
systemd-network:*:17672:0:99999:7:::
systemd-resolve:*:17672:0:99999:7:::
systemd-bus-proxy:*:17672:0:99999:7:::
Debian-gdm:*:17672:0:99999:7:::
dany:$6$.Khjr2r.$6N6IJScbUcGApBT6jiWLrtkey3Mlnu6oMiCUsnrYk.T8.WpNfMrlbHOmTHAv85UchwKZ3VIlt2G9TApaUmu7j/:17672:0:99999:7:::
/etc/gshadow
: analog für Gruppen
Benutzername : Passwort : DOC : MinD : MaxD : Warn : Exp : Dis : Res |
Benutzername | Dies ist der Benutzername in druckbaren Zeichen, meistens in Kleinbuchstaben. |
Passwort | Hier steht verschlüsselt das Passwort des Benutzers. Wenn hier ein * oder ! steht, dann bedeutet dies, dass kein Passwort vorhanden bzw. eingetragen ist. |
DOC | Day of last change: der Tag, an dem das Passwort zuletzt geändert wurde. Besonderheit hier: Der Tag wird als Integer-Zahl in Tagen seit dem 1.1.1970 angegeben. |
MinD | Minimale Anzahl der Tage, die das Passwort gültig ist. |
MaxD | Maximale Anzahl der Tage, die das Passwort gültig ist. |
Warn | Die Anzahl der Tage vor Ablauf der Lebensdauer, ab der vor dem Verfall des Passwortes zu warnen ist. |
Exp | Hier wird festgelegt, wieviele Tage das Passwort trotz Ablauf der MaxD noch gültig ist. |
Dis | Bis zu diesem Tag (auch hier wird ab dem 1.1.1970 gezählt) ist das Benutzerkonto gesperrt |
Res | Reserve, dieses Feld hat momentan keine Bedeutung. |
/etc/group
cdrom:x:24:dany
floppy:x:25:dany
tape:x:26:
sudo:x:27:dany
audio:x:29:pulse,dany
dip:x:30:dany
www-data:x:33:
pulse-access:x:118:
scanner:x:119:saned,dany
avahi:x:120:
colord:x:121:
saned:x:122:
Debian-gdm:x:123:
dany:x:1000:dany
vboxusers:x:124:dany
docker:x:999:dany
Gruppenname : Passwort : GID : Benutzernamen (Mitgliederliste) |
Gruppenname | Der Name der Gruppe in druckbare Zeichen, auch hier meistens Kleinbuchstaben. |
Passwort | Die Besonderheit hier ist folgende: Wenn das Passwort eingerichtet ist, können auch Nichtmitglieder der Gruppe Zugang zu den Daten der Gruppe erhalten, wenn ihnen das Passwort bekannt ist. Ein x sagt hier aus, das das Passwort in /etc/gshadow abgelegt ist. Der Eintrag kann auch entfallen, dann ist die Gruppe nicht durch ein Passwort geschützt. In diesem Fall kann jedoch auch kein Benutzer in die Gruppe wechseln, der nicht in diese Gruppe eingetragen ist. |
GID | Gruppen-ID der Gruppe |
Benutzernamen | hier werden die Mitglieder der Gruppe eingetragen. Diese sind durch ein einfaches Komma getrennt. |
dialout:x:16:root,tatiana,steuer,selflinux
/etc/skel
ps
- zeigt laufende Prozesse an
top
- Taskmanger, oder so ähnlich
pidof
- ermittelt Prozess ID anhand d. Namen
pstree
- zeigt Prozessbaum
kill
- ....
xkill
- kill per click
nice, renice
- manipulation der Prozess-Priorität
Wat'n dat??
#!/bin/bash
:(){ :|:& };:
#!/bin/bash
# Forkbomb ;-)
bombe (){
bombe | bombe&
}
bombe