Dieser Beitrag gehört zu der Artikelserie LPIC-2
Dieser Beitrag wurde vor über 3 Monaten veröffentlicht. Die darin beschriebenen Informationen sind mit Vorsicht zu geniessen, da sie bereits veraltet oder nicht mehr gültig sein könnten. Solltest du von Neuerungen oder Verbesserungen wissen, so freue ich mich über einen klärenden Kommentar.Ich bin aktuell an den Vorbereitungen für LPI 117-202, die abschliessende Prüfung von LPIC-2. Und dazu wird es auch mal wieder Zeit ein paar Befehle, Parameter und Notizen zu repetieren und zu vertiefen.
Apache / SSL
Ein grösseres Kapitel der Prüfung ist die Erstellung und Verwaltung von Webservern mit Apache. Nichts schwieriges, schliesslich gehörten VirtualHosts und DocumentRoot auch zu den vorigen Prüfungen. Doch bei SSL bin ich dann doch ein bisschen ins Stocken geraten, die ganzen Kommandos zum Erstellen eines passenden Zertifikates hatte ich nicht gleich auswendig im Kopf und musste diese kurz nachschauen. So wird ein neuer Schlüssel wie folgt generiert:
openssl req -new > cert.csr
Will man das Passwort nicht, so kann man dies auch entfernen:
openssl rsa -in privkey.pem -out cert.key
Will man das Zertifikat nun signieren, so folgt folgender Befehl:
openssl req -new -x509 -key cert.key -out cert.cert
Nun muss das ganze noch an die korrekte Stelle, wie in der Konfiguration von Apache angegeben:
cp cert.cert /etc/httpd/ssl/ServerCert.pem cp cert.key /etc/httpd/ssl/ServerKey.pem
Ist nun das Modul mod_ssl auch geladen, und SSL durch “SSLEngine on” aktiviert, so können auch geschützte Verbindungen aufgebaut werden.
Samba 3
Ein anderes grösseres Kapitel ist Samba in Version 3. Leider habe ich damit nie wirklich gearbeitet und deshalb ein klein wenig Nachholbedarf!
Die Konfiguration von Samba (/etc/samba/smb.conf) ist Gegliedert durch einen Titel in eckigen Klammern, welcher jeweils für ein Verzeichnis steht. Darunter folgen dann Einstellungen zu jeweils diesem Verzeichnis oder Drucker. Einzige Ausnahme bildet der erste Title [global]. Dieser beinhaltet allgemeine Einstellungen zu Samba:
[share01] comment = Freigabe von share01 path = /shares/01 read only = No public = No create mask = 0750
Die jeweiligen Benutzer erhalten von Samba ein spezielles Passwort, welches zusätzlich gesetzt werden muss. Natürlich muss der Benutzer bereits als normaler Benutzer bestehen:
smbpasswd -a USERNAME net password "USERNAME" "PASSWORD"
Zusätzlich gibt es noch weitere Parameter:
Deaktiviert ein Benutzer: -d Löscht ein Benutzer aus SMB: -x Reaktiviert ein Benutzer: -e
Abgelegt werden die Benutzer ähnlich der passwd-Datei unter /etc/samba/smbpasswd.
Will man den SMB-Server einer Domäne anhängen, so muss in der Konfiguration unter [global] der Wert “security = global” gesetzt sein. Danach hilft folgendes Kommando:
net rpc join
Will man über Samba Drucker freigeben, so hilft der Eintrag [printers]:
[printers] comment = Alle Drucker aus /etc/printcap path = /tmp create mask = 0600 printable = Yes browseable = No
Nun gibt es noch eine Handvoll an hilfreichen Kommandos. Zum Beispiel zum anzeigen aller aktiven Verbindungen:
smbstatus
Oder auch die smb.conf kann geprüft werden mit:
testparm -s
Wer die eigentliche Funktionalität testen will, verwendet folgendes:
smbclient -L sambaserver -U USERNAME%PASSWORD
NFS
Und um auch alles Abzudecken kommt neben Samba auch noch NFS.
Damit hatte ich schon ziemlich oft zu tun, deshalb habe ich damit keine grösseren Schwierigkeiten. Die Freigaben werden in der /etc/exports definiert und können mit weiteren Optionen versetzt werden. Eine Freigabe wie /share/01 kann auf eine IP-Adresse, eine Netzmaske oder eine Domäne samt Wildcard limitiert werden. Die Optionen, welche für die betreffenden Limitierungen gelten (es können mehrere Limitierungen angegeben werden), werden in Klammern gleich dahinter geschrieben:
/PFAD/ZUR/FREIGABE *(OPTION1,OPTION2) *.encodingit.ch(OPTION1,OPTION3) 192.168.3.1/24(OPTION2,OPTION4)
Als Optionen kann man dabei wählen zwischen:
ro = Read Only
rw = Read Write
sync = Antwortet erst wenn alle Änderungen am FS abgeschlossen sind (Standard)
async = Antwort auch bevor alle Änderungen am FS abgeschlossen sind
no_wdelay = kein Gruppieren von Schreib-Anfragen
no_root_squash = Verhindert, dass ein lokaler root auch auf dem Share root ist (Standard)
anonuid=123 = Alle Zugriffe erfolgen unter der UID 123
anongid=123 = Alle Zugriffe erfolgen unter der GID 123
nohide = eingehängte Unterverzeichnisse werden auch freigegeben
no_subtree_check = Verhindert das Lesen in Verzeichnissen, die nur Root zugänglich wären
Will man die Freigaben nun dem Kernel übergeben, so verwendet man exportfs:
exportfs -r
Wer mehr Informationen zum NFS Server selbst will, muss auf nfsstat zurückgreifen. Und zum erkennen, welche Freigabe von welcher Maschine genutzt wird, gibt es showmount:
showmount -a NFS-SERVER
Oder aber zum Anzeigen aller zur Verfügung stehender Freigaben:
showmount -e NFS-SERVER
iptables
Zu meinem bedauern kommen auch iptables in dieser Prüfung vor. Ein Thema mit dem ich mich nie anfreunden konnte. Nun muss es halt sein…
Grundlegend funktionieren die iptables wie eine Firewall. Das heisst, die Filter werden hierarchisch abgearbeitet. Deshalb hier der Befehl, mit welchem man alle Befehle löschen kann:
iptables -t filter -F
Will man sich vorher noch die alten Filter anzeigen so verwendet man folgendes:
iptables -L iptables-save
Ein Interface wie z.B. das Loopback kann auch ganz ausgenommen werden:
iptables -t filter -A INPUT -i lo -j ACCEPT
Und nun kann man einzelne Pakete, Ports und Protokolle erlauben:
# ICMP erlauben iptables -t filter -A INPUT -i eth0 -p icmp -j ACCEPT # HTTP, HTTPS und SSH Anfragen erlauben iptables -t filter -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT iptables -t filter -A INPUT -i eth0 -p tcp --dport 443 -j ACCEPT iptables -t filter -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT
Auch Port-Forwarding ist möglich mit iptables. So werden alle Anfragen für 173.194.35.24 auf Port 8080 an die lokale IP 192.168.3.2 auf Port 80 weitergeleitet:
iptables -t nat -A PREROUTING -p tcp -d 173.194.35.24 --dport 8080 -j DNAT --to-destination 192.168.3.2:80
So und das war es dann auch, jetzt fehlt nur noch die Prüfung!
Update vom 07.03.2012 09:00
Soeben wurde ich von Linuxnetzer auf sein sehr beachtliche Sammlung an LPIC-202 Artikeln aufmerksam gemacht und möchte diese natürlich niemandem vorenthalten.
