Posts Tagged ‘ lpic-202 ’

LPIC-202: Network File System (NFS)

Dieser Artikel richtet sich an Kandidaten zur ergänzenden Vorbereitung des zweiten Teils der Prüfung LPIC-2 des Linux Professional Institutes LPI. Dieser Artikel setzt Grundkenntnisse über NFS voraus und beschränkt sich auf eine knappe Betrachtung der Liste von Dateien, Begriffen und Werkzeugen, die für das Verständnis von NFS erforderlich sind. (Artikel als PDF)

Auszug aus den “Detailed Objectives” 209.2 (NFS Server Configuration):

The following is a partial list of the used files, terms and utilities:


icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * /etc/exports
icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * exportfs
icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * showmount
icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * nfsstat
icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * /proc/mounts
icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * /etc/fstab
icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * rpcinfo
icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * mountd
icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * portmapper

icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * /etc/exports
Die Hauptkonfigurationsdatei des NFS-Servers. Hier wird durch den Server festgelegt:

— welche Verzeichnisse freigegeben werden
— wer darauf zugreifen darf
— wie darauf zugegriffen werden darf (lesen, schreiben usw.):

Einige Beispiele und Erläuterungen (schamlos entnommen aus der Manpage von exports):

# Beispielhafte /etc/exports Datei
/ master(rw) trusty(rw,no_root_squash)
/projects proj*.local.domain(rw)
/usr *.local.domain(ro) @trusted(rw)
/home/joey pc007(rw,all_squash,anonuid=501,anongid=100)
/pub (ro,insecure,all_squash)

Die erste Zeile besagt, dass das komplette /-Dateisystem an die beiden Maschinen master und trusty exportiert werden. Zusätzlich zum erlaubten Schreibzugriff ist die Umwandlung der Superuser-ID 0 für den Rechner trusty ausgeschaltet.

Die nächsten beiden Zeilen geben ein Beispiel für Wildcard-Rechnernamen und Netzwerkgruppen (der Eintrag @trusted ist ein solcher). Die vierte Zeile beschreibt einen Eintrag für einen PC-NFS-Client wie oben angesprochen.

Die letzte Zeile exportiert das FTP /pub-Verzeichnis an jeden Rechner in der Welt (der am Internet teilnimmt). Alle Zugriffe werden unter der anonymen UID durchgeführt. Die insecure-Option erlaubt auch Clients den Zugriff, die keine reservierten Ports verwenden.

icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * exportfs
Nach jeder Änderung an der Datei /etc/exports muss auf dem Server

exportfs -ra

aufgerufen werden, um die Änderung wirksam werden zu lassen (auch wenn ein “exportfs -a” i.d.R. genügt). Der Befehl synchronisiert /etc/exports mit der Datei /var/lib/nfs/xtab, wo die Konfiguration von mountd (siehe weiter unten) eingelesen werden kann. Auf der Fehlersuche nach einem Verzeichnis, das trotz Freigabe in /etc/exports nicht eingebunden werden kann, ist die Ausführung von “exportfs -a” nicht selten die Antwort auf das Problem.

icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * showmount
Das Kommando showmount befragt mountd und zeigt Informationen über die gemounteten Verzeichnisse des NFS-Servers an.

showmount -a

… zeigt an, welche Clients zur Zeit welche Dateisysteme gemountet haben (im Format host:/Verzeichnis). Dies funktioniert aber nicht immer zuverlässig. Wenn es zu Fehlern kommt, ist dies meist die Anzeige eines veralteten, nicht mehr aktiven Verzeichnisses.

showmount -e

… zeigt an, welche Verzeichnisse aktuell durch den Server zur Verfügung gestellt werden (ähnlich zu “cat /etc/exports“)

icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * nfsstat
nfsstat zeigt Statistiken zu NFS an (ohne weitere Option für Server UND Clients). Zwei wichtige Optionen sind:

# zeigt nur Statistiken für den Server an:
nfsstat -s

# zeigt nur Statistiken für Clients an:
nfsstat -c

icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * /proc/mounts
Wie alle Dateien im Verzeichnis /proc wird auch /proc/mounts zur Laufzeit generiert. In /proc/mounts sind alle gemounteten Dateisysteme aufgelistet. Mit:

cat /proc/mounts

kann überprüft werden, ob ein Verzeichnis überhaupt eingebunden ist, und wenn ja, mit welchen Rechten.

icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * /etc/fstab
Wer als Client es leid ist ein Verzeichnis ständig manuell mounten zu müssen mit …

mount -t nfs 192.168.3.200:/videos /mnt/videos

… der kann ein Verzeichnis schon mit dem Systemstart einbinden und schreibt dies in die /etc/fstab. Hier ein Beispiel:

192.168.3.200:/videos /mnt/videos nfs rw 0 0

Dies bindet das Verzeichnis /video des Servers mit der Adresse 192.168.3.200 unter /mnt/videos (Rechner des Clients) ein; nfs beschreibt den Dateisystemtyp, rw steht für Lese- und Schreibrechte (vorausgesetzt, der Server hat diese Rechte in seiner /etc/exports auch freigegeben).

icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * rpcinfo
Mit rpcinfo kann man prüfen, welche RPC-Dienste auf einer Maschine laufen. Vom Client aus könnte man z.B. prüfen, ob auf dem Server “nfsserver” NFS überhaupt läuft mit:

rpcinfo -p nfsserver

Dies zeigt eine Liste aller RPC-Dienste auf “nfsserver”. Auf dem Server selbst könnte man den Rechnernamen als Argument weglassen:

rpcinfo -p

icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * mountd
Manchmal auch rpc.mountd oder mounted genannt. Dies ist als Dämon die zentrale Instanz, die für das Einbinden von Verzeichnissen zuständig ist. Vereinfacht gesagt: Die Anfrage eines Clients, ein Verzeichnis mit NFS einzubinden, landet (über den Umweg des portmappers, siehe unten) bei mountd. mountd prüft in der Datei /etc/exports des Servers, ob der Client die entsprechende Berechtigung hat. Im Erfolgsfall gibt mountd das Verzeichnis (via file handle) an den anfragenden Client frei.

icon smile LPIC 202: Network File System (NFS) showmount server rpcinfo prüfung portmapper nfsstat nfs mountd lpic 202 lpic 2 lpic linux fstab exportfs admin /etc/exports * portmapper
Manchmal portmap oder rpc.bind genannt, unterstützt der portmapper RPC-Funktionen. NFS nutzt RPC (Remote Procedure Calls) um Anfragen zwischen Clients und Servern zu routen. Ein beim Portmapper regsitrierter RPC-Prozess kann vom Client nicht direkt kontaktiert werden. Die Anfrage des Clients wird vom Portmapper (i.d.R. Port 111) weitergeleitet. Ohne Portmapper kein NFS. Ein nicht aktiver Portmapper kann ein Grund dafür sein, weshalb NFS-Freigaben nicht eingebunden werden können (siehe auch rpcinfo).

Links:
LinuxNetzer Blog: Alle LPIC-202 Artikel
Troubleshooting NFS (Englisch)
LPIC-202: Lernziele im Überblick (Englisch)
IBM: LPI-Vorbereitung NFS

FTP-Server VSFTPD: Wichtige Konfigurationsparameter

FTP FTP Server VSFTPD: Wichtige Konfigurationsparameter vsftpd troubleshooting server lpic 202 lpic 2 lpic linux ftp anonymous admin vsftpd (“Very Secure FTP Daemon”) ist ein FTP-Server, der im Hinblick auf Sicherheit konzipiert wurde. Die Konfigurationen für den FTP-Server vsftpd werden dabei in /etc/vsftpd.conf vorgenommen. Hier sind einige wichtige Parameter im Überblick – jede Änderung in der Konfiguration kann durch Neustart von vsftpd bzw. dem Reload der Konfigurationsdatei wirksam gemacht werden:

/etc/init.d/vsftpd restart

# /etc/vsftpd.conf:
# Soll der Server als “Standalone” laufen? (Alternative: inetd)
listen=YES

# Soll anonymes FTP erlaubt sein? Wenn aktiviert, werden sowohl
# “ftp” als auch “anonymous” als Nutzer für anonyme Logins akzeptiert.
# Sollte man sich gut überlegen …
anonymous_enable=YES

# Soll der Login von lokalen Nutzern erlaubt sein?
local_enable=YES

# Jede Form des FTP write Kommandos erlauben (Vorsicht!)
# Betrifft: STOR, DELE, RNFR, RNTO, MKD, RMD, APPE and SITE
write_enable=YES

# Anonymen Nutzern erlauben, Dateien hochzuladen?
# Aktivierung nur dann wirksam, wenn “write_enable=YES” !
# Und es muss natürlich ein Verzeichnis mit anonymen Schreibrechten erstellt sein
# Nur zu empfehlen, wenn man weiß, was man tut …
anon_upload_enable=YES

# Sollen anonyme Nutzer auch Verzeichnisse erstellen können?
# Setzt natürlich voraus, dass write_enable=YES und anon_upload_enable=YES
anon_mkdir_write_enable=YES

# Logging für uploads/downloads aktivieren?
xferlog_enable=YES

# Sind die folgenden beiden Direktiven aktiviert, wechseln hochgeladene Dateien
# den Benutzer (hier zu “whoever”). Dies verhindert ein Löschen oder Überschreiben
# der Dateien durch den anonymen Nutzer, was oft gewünscht ist. Der Nutzer “whoever”
# sollte nur diese Aufgabe haben, “nobody” zu nutzen wäre unsicher, da jeder Prozess
# mit “nobody-Rechten” auch Dateien löschen könnte.
chown_uploads=YES
chown_username=whoever

# Nutzername, unter dem der FTP-Server isoliert und ohne root-Rechte laufen kann
# I.d.R. bei der Installation so festgelegt …
nopriv_user=ftpsecure

# Begrüßungsbanner:
ftpd_banner=”Hallo! Ich bin das FDP- äh FTP-Begrüßungsbanner!”#

#Standardmäßig ist das Logfile unter /var/log/vsftpd nicht sehr gesprächig. Um quasi in den Debug-Modus zu schalten,
# der alle Statusmeldungen protokolliert die folgenden Einstellungen ändern:
ftp_user_log=YES
xferlog_enable=YES

vsftpd Homepage
Wiki Ubuntuusers: vsftpd

vsftpd Troubleshooting