Kleine Helfer

Samba User anlegen / loeschen

smbpasswd -a susanne (Benutzer anlegen)
smbpasswd -x susanne (Benutzer löschen)

Von CD booten, wenn root-Zugang defekt

booten von hda (grub) um das System zu retten:

beim boot shift drücken, dann c für command-line
grub> kernel (hd0,0)/boot/vmlinuz-TAB root=/dev/hda
grub> initrd (hd0,0)/boot/initTAB
grub> boot init=/bin/sh

falls das per conf-Datei unterbunden ist bleibt nur noch der Boot von CD...

Falls das root Verzeichnis (/) read-only gemounted ist:

mount -o rw,remount /dev/hdXY /

Danach kann mit passwd root das Passwort fuer root neu erstellt werden

htdocs-user für passwortgeschuetzte Webseiten einrichten:

htpasswd /etc/apache2/."htpasswd-Datei" username

finden und printen

find /data -name *.cgi -printf '%f\n' -> gibt nur Dateinamen aus
find /data -name *.cgi -printf '%h\n' -> gibt nur Verzeichnisse aus

Crontab

# Run the ipac-ng fetch program every 10 minutes
#
#+--------------------- minute [0-59;*/10 means every 10 minutes (0,10,20,30,40,50)]
#| +----------------- hour [0-23]
#| | +--------------- day of month [1-31]
#| | | +------------- month [1-12]
#| | | | +----------- day of week [0-7; 0 or 7 is Sunday]
#| | | | | +-------- user
#| | | | | | +-- command
#| | | | | | |
1-59/5 * * * * root test -f /proc/net/ip_tables_names && test -f /e

ssl: Anzeigen von bereits erstellten Zertifikaten:

openssl x509 -in client-cert.pem -noout -text
im root-Verzeichnis: ~\mail.cert, mail.cls, mail.key

Zertifikat selbstsigniert erzwingen:
openssl req -new -x509 -days 365 -keyout server-rsa-key.pem -out server-cert.pem

Zertifikat ca signiert erzwingen:
openssl req -new -keyout server-rsa-key.pem -out server-req.pem -days 365

Für Apache:
apache2-ssl-certificate in Verzeichnis /etc/apache/ssl/: apache.pem

Für pop3 - und imapd:
Zertifikate liegen in /usr/lib/courier/pop3d.pem; /usr/lib/courier/imapd.pem
beide Zertifikate loeschen
mit mkimapdcert; mkpop3dcert neu erstellen

Danach die prozesse neu sterten
/etc/init.d/courier-imap restart
/etc/init.d/courier-pop restart

ZEIT ueber das Internet synchronisieren:

aptitude install ntpdate ntp tzdata
/etc/init.d/ntp stop
ntpdate zeit.fu-berlin.de
hwclock --systohc
dpkg-reconfigure tzdata
/etc/init.d/ntp start

Editor für cron aendern:

~/bash.basrc: export EDOTOR=nano

ssh: Schluessel erstellen:

1. Schlüssel erzeugen mit "ssh-keygen -tdsa".
Er landet automatisch in der richtigen Datei (Home/"user"/.ssh/)
2. ssh-agent starten mit "eval $(ssh-agent)"
3. "ssh-add" benutzen, um dem Agent die Identität hinzuzufügen. Passphrase des Schlüssels wird verlangt.
4. "ssh-copy-id user@host" benutzen, um den Public-Key auf den entfernten Host zu kopieren.
Hier wird letztmalig nach dem User-Passwort auf dem entfernten Host gefragt.
5. von_wo: ~/.ssh/id_dsa bleibt lokal
von_wo: ~/.ssh/id_dsa.pub kopieren zu Zielrechner:
6. mit cat /home/"user"/.ssh/id_dsa_pub >authorized_keys

"ssh user@host" funktioniert jetzt auch ohne User-Passwort.

ssh: absichern

PAM - /etc/ssh/sshd_config:

UsePAM yes # Damit der sshd überhaupt die PAM Authentifizierung benutzt, und somit der Einsatz von pam_tally
MaxAuthTries 10 # Maximale Versuche, die der Benutzer hat, sich anzumelden
IgnoreRhosts yes # /home//.rhosts Datei nicht einlesen
MaxStartups 10 # Maximale Anzahl von gleichzeitigen (noch) nicht authentifiziert sshd Sessions (10 Standard)
# war auskommentiert:
PasswordAuthentication no # "no" verhindert eine getunneltes Klartext-Passwort
PermitEmptyPasswords no # keine leeren Passwörter zulassen (wer das braucht, muss es halt einschalten *g*)
LoginGraceTime 5m # maximal 2 Minuten hat der Benutzer Zeit, sich einzuloggen, danch wird die Session beendet
PermitRootLogin no # root nicht erlauben, sich direkt einzuloggen, nur "normale" User sind erlaubt, die dann ein "su" machen können
# nicht realisiert:
DenyUsers [Username1],[Username2]... # Username(n) die sich nicht über ssh einloggen dürfen (wenn benötigt)

Möglichkeit (b): User kann sich nach 5 fehlgeschlagenen Anmeldeversuchen nicht mehr anmelden,
der Admin muss den Account wieder freischalten, ohne Zählerrücksezung

---cut---
auth required pam_tally.so onerr=fail deny=5 no_reset
auth required pam_unix2.so # set_secrpc
auth required pam_nologin.so
auth required pam_env.so
account required pam_unix2.so
account required pam_nologin.so
account required pam_tally.so no_reset
---cut---

LOCALE neu konfigurieren:

dpkg-reconfigure locales
set-language-env -E

Image erstellt mit dd:
dd if=/dev/hda1 of=/bkbackup/image/.img
( Image von hda1 und allen weiteren Festplatten, die mit relevanten Daten gefuellt sind )

dd if=/dev/hda of=/bkbackup/image/.img bs=512 count=1
( Image de Bootloaders )

Image mounten:
mount -o loop -t /bkbackup/image/.img
dateisystemtyp: ext3

dd if=/bkbackup/image/.img of=/dev/hda1 bs=512 count=1
spielt den Bootloader zurueck
-> Installations-CD durchlaufen lassen bis zur Partitionierung
-> Partitionen an bekannten Stellen einhaengen
-> Grup in den mbr schreiben lassen

dd if=/bkbackup/image/.img of=/dev/hda1
spielt das image von z.b.: hda1 zurueck:
Knoppix als Rettungssystem laden
-> mount -o rw,remount /dev/hdXY /
(um Device beschreibbar zu machen)
-> dd - Befehl spielt Image zurück