Verwaltung: Betriebssystem

Es werden die Benutzer für den Betrieb des Notfunk-Servers angelegt. Weiterhin werden die notwendigen Einstellungen für einen sicheren Betrieb vorgenommen.
  1. Anmeldung am System

    Zunächste melden wir uns bitte unbedingt als root an. Sollte man am Raspberry PI arbeiten, meldet man sich als Benutzer pi an und werden mit su root zum Root-User. Nun ändern wir mit passwd das Passwort des Benutzers auf den Wert, welchen wir uns in der Struktur überlegt haben. Sollte man am Raspberry PI arbeiten, bitte unbedingt auch das Standard-Passwort des Nutzers pi ändern.
  2. Anlegen der Nutzergruppen

    Es werden einige Nutzergruppen angelegt: Für Admins, Alle Nutzer, Funk-Nutzer, und (als Beispiel) eine Gruppe für das Bundesland, den Regierungsbezirk, Stadt- und Landkreise. Dazu wird erst die Gruppenliste erstellt (in unserem Fall Regierungsbezirk Uberfranken in Bayern, LKR = Landkreise / std = Städte / wue = Region Würzburg): nano linux-gruppen.txt; Der Inhalt ist ganz simpel; Pro anzulegender Gruppe ein Wort und eine Zeile:
    admin
    alle
    funk
    bay
    ufr
    lkr
    std
    wue
    Nun erstellen wir ein Script, welche die Gruppen anlegt und die Benutzerrechte passend setzt (Lesen, Schreiben, Ausführen für Besitzer und Gruppenmitglieder, für alle anderen kein Zugriff): nano linux-gruppen.sh
    # !/bin/bash
    # Format der Datei linux-gruppen.txt:
    # gruppe1
    # gruppe2
    # gruppe3
    # ...
    # Pro Gruppe eine Zeile.
    
    cat linux-gruppen.txt | (
    while read group
    do
     addgroup $group
     mkdir /home/$group
     chgrp $group /home/$group
     chmod 770 /home/$group
     echo "Gruppe " $group " angelegt."
    done
    )
    Skript ausführbar machen und ausführen chmod u+x linux-gruppen.sh;
    ./linux-gruppen.sh;
    Damit sieht die Verzeichnisstruktur von /home erst einmal so aus:
    drwxrwx---  2 root admin  4096 Mai 25 21:06 admin
    drwxrwx---  2 root alle   4096 Mai 25 21:08 alle
    drwxrwx---  2 root funk   4096 Mai 25 21:06 funk
    drwxrwx---  2 root bay    4096 Mai 25 21:06 bay
    drwxrwx---  2 root ufr    4096 Mai 25 21:06 ufr
    drwxrwx---  2 root lkr    4096 Mai 25 21:06 lkr
    drwxrwx---  2 root std    4096 Mai 25 21:06 std
    drwxrwx---  2 root wue    4096 Mai 25 21:06 wue
  3. Anlegen der Benutzer

    nano linux-benutzer.txt In der Datei stehen alle Nutzer, Passwörter und Gruppenmitglieschaften, welche man aus seiner eigenen Struktur extrahiert hat. (ACHTUNG: Benuzernamen sollten keine Umlaute und auch keine Bindestriche enthalten.) Diese könnte z.B. so aussehen:
    ladmin1 passwortimklartext admin,alle,sudo,bay,ufr,lkr,std,wue
    dl0xyz passwortimklartext admin,funk,alle,root,sudo,bay,ufr,lkr,std,wue
    db5sos passwortimklartext funk,alle,bay,ufr,lkr,std,wue
    Eintrag #1 ist ein Linuxadmin, Eintrag #2 (dl0xyz) ein Linux-Superuser und Eintrag #3 ein Standard-User.
    nano linux-benutzer.sh Der Inhalt dieses Shellskriptes sieht so aus:
    # !/bin/bash
    # Format der Datei linux-benutzer.txt:
    # benutzername passwortimklartext gruppe1,gruppe2,...
    # Die drei Datenfelder sind mit einem Leerzeichen getrennt.
    # Die Gruppenliste ist mit Kommata getrennt.
    
    cat linux-benutzer.txt | (
    while read user pass groups
    do
    useradd $user -mG $groups;
    echo $user:$pass | chpasswd
    chmod 700 /home/$user
    echo "Benutzer " $user " angelegt."
    done
    )
    Das Script legt zuerst den Benutzer mit leerem Passwort an, und ändert das Passwort im Anschluss daran. Nun muss das Skript noch ausführbar gemacht werden. chmod u+x linux-benutzer.sh Nun kann das Skript ausgeführt werden. Es legt damit alle Nutzer in der Liste benutzer.txt an. ./linux-benutzer.sh Da die Passwörter in der Texte-Datei im Klartext enthalten sind, sollte man die Benutzerliste unbedingt löschen. Wenn man dieses Skript später wieder benötigt, ist der Hinweis zum Aufbau der Benutzerliste als Kommentar hinterlegt. Im obigen Beispiel sieht das Home-Verzeichnis nun so aus:
    drwx------  2 root    admin    4096 Mai 26 11:06 admin
    drwxrwx---  2 root    alle     4096 Mai 25 21:08 alle
    drwx------  2 dl0xyz  dl0xyz   4096 Mai 26 12:14 dl0xyz
    drwx------  2 db5sos  db5sos   4096 Mai 26 12:14 db5sos
    drwxrwx---  2 root    funk     4096 Mai 26 11:06 funk
    drwx------  2 ladmin1 ladmin1  4096 Mai 26 12:14 ladmin1
  4. Sichern des pi-Home-Verzeichnisses

    Damit niemand sich der Adminscripte bemächtigen kann, sorgen wir noch dafür, dass von dort zwar die Scripte gelesen werden können, aber kein Benutzer dorthin wechseln darf: sudo chmod go-wx /home/pi;

Weiter geht es mit dem Anlegen der Datenbank-Benutzer.