kurse:ef05a-2021:linux:start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
kurse:ef05a-2021:linux:start [2022/03/23 20:07] – created Ivo Blöchligerkurse:ef05a-2021:linux:start [2022/03/24 07:16] (current) Ivo Blöchliger
Line 1: Line 1:
 +====== Git SSH-Keypaar generieren ======
 +Siehe https://github.com/ivo-bloechliger/kaien
 +
 +===== Eigenen User / Homepartition erstellen =====
 +Das müssen Sie nur ein einziges mal tun (und sich sich Computer-Nummer merken). Für das Backup Ihrer Daten sind sie selber verantwortlich. Als Backup können sie die Datei /data/encrypted-homes/hansli.img (mit Ihrem Usernamen anstatt hansli) auf einen USB-Stick kopieren und nötigenfalls wieder herstellen.
 +
 +
 +Öffnen Sie ein Terminal (Konsole) und geben Sie folgende Kommandos ein und befolgenden Sie dann die Anweisungen.
 +  cd /data/encrypted-homes
 +  sudo bash makeEncryptedHome.bash
 +  
 +Loggen Sie sich (d.h. den tech-lab User) aus und loggen Sie sich mit Ihren neuen Usenamen ein.
 +
 +<hidden Code des obigen Shellscripts>
 +<code bash makeEncryptedHome.bash>
 +# Grösse der Partition in MB
 +size=7000
 +
 +echo "Bitte gewünschten Benuzternamen, nur Kleinbuchstaben a-z, keine Leeschläge, Umlaute etc."
 +read user
 +echo "Bitte das Password eingeben (es wird gar nichts angezeigt):"
 +read -s pw1
 +echo "Bitte Passwort bestätigen:"
 +read -s pw2
 +
 +if [ "$pw1" = "$pw2" ]; then
 +        datafile=/data/encrypted-homes/"$user".img
 +        echo "Passwörter sind gleich... Lege loop-back-partition an..."
 +        mkdir -pv /data/encrypted-homes 
 +        echo "Anlegen der Partition"
 +        dd if=/dev/zero of="$datafile" bs=1M count="$size" status=progress
 +        echo "Verschlüsseln der Partition"
 +        echo -n "$pw1" | cryptsetup luksFormat -d - $datafile
 +        mapper=$user-home
 +        echo "Einbinden der Parition"
 +        echo -n "$pw1" | cryptsetup luksOpen -d - $datafile $mapper
 +        echo "Formatieren der Partion"
 +        mkfs.ext4 /dev/mapper/$mapper
 +        echo "anlegen des Benutzers (inkl. Gruppen und anlegen von /home/$user"
 +        useradd -m -G adm,dialout,cdrom,sudo,dip,plugdev,lpadmin,lxd,sambashare -s /bin/bash $user
 +        echo "Setzen des Passworts"
 +        #echo $pw1 | passwd $user --stdin
 +        echo "$user:$pw1" | chpasswd
 +        echo "mounten der verschlüsselten homepartition"
 +        mount /dev/mapper/$mapper /mnt
 +        echo "Kopieren der Standard-Dateien"
 +        cp -rvT /etc/skel /mnt
 +        echo "Anpassen der Rechte der Partition"
 +        chown -R $user:$user /mnt
 +        echo "umounten und schliessen der Parititon"
 +        umount /mnt
 +        cryptsetup luksClose $mapper
 +        echo "Eintrag in pam_mount.conf.xml erstellen"
 +        pam="<volume user=\"$user\" fstype=\"crypt\" path=\"$datafile\" mountpoint=\"/home/$user\" />"
 +        echo $pam
 +        sed -i "16 a $pam" /etc/security/pam_mount.conf.xml
 +        echo "All set. Logout and log in as $user".
 +
 +else
 +        echo "Passwörter sind nicht gleich, Abruch"
 +fi
 +
 +</code>
 +</hidden>
 +
 +==== Takeaway points ====
 +  * Alles ist eine Datei (Array von Bytes), auch ein Datenträger.
 +  * Partitionstabelle: Verwaltungsinformation, wo welche Art von Partitionen auf dem Datenträger liegt.
 +  * Partitionen sind einfach Ausschnitte aus einem Array.
 +  * Ein Dateisystem ist Verwaltungsinformation plus Daten, ebenfalls auf einer Partition.
 +  * Ein Partition kann verschlüsselt sein und wird transparent ver- und entschlüsselt, während diese eingebunden ist.
 +    * Eine verschlüsselte Partition ist nur dann geschützt, wenn der Computer ausgeschaltet ist (bzw. diese nicht eingebunden ist).