Posts Tagged ‘ lpic-202 ’

Postfix: Courier-IMAP mit SSL aufsetzen

Dieser Artikel beschreibt die grundlegende Installation und Konfiguration eines Courier-IMAP-Mail-Servers mit SSL-Verschlüsselung.

SSL schloss Postfix: Courier IMAP mit SSL aufsetzen zertifikat X.509 ubuntu thunderbird telnet SSL squeeze server postfix pop3 pop passwd PAM outlook MTA lpic 202 lpic 2 lpic iptables imap gamin firewall email debian daemon courier authdaemonrc admin Das folgende beispielhafte Szenario basiert auf einem Server Debian Squeeze mit Postfix als MTA. Für Ubuntu sollte das Ganze ähnlich ablaufen. Ausgangslage in diesem Beispiel ist, dass Postfix bereits lauffähig konfiguriert ist.

Courier kann zwar auch als vollwertiger, eigenständiger MTA laufen. In den meisten Fällen werden jedoch nur seine POP3 oder IMAP-Fähigkeiten eingesetzt. Holt ein Klient (z.B. Thunderbird) seine Mails via IMAP, so verbleiben diese auf dem IMAP-Server. Bei IMAP werden die Mails mit dem Client synchronisiert, im Gegensatz zu POP3, wo eine abgerufene Mail nicht mehr auf dem Server verbleibt.

Installation

Zunächst müssen wir das richtige Paket inklusive seiner Abhängigkeiten installieren:

apt-get install courier-imap-ssl
Die folgenden zusätzlichen Pakete werden installiert:
courier-authdaemon courier-authlib courier-authlib-userdb courier-base
courier-imap courier-ssl expect libfam0 tcl8.5 

Zunächst mal werden wir informiert, dass Courier später auch über ein Webinterface verwaltet werden kann und dazu Änderungen in der Dateistruktur nötig wären. Wollen wir Courier über ein Webinterface administrieren? In diesem Beispiel entscheiden wir uns gegen die Administration über das Webinterface und für die manuelle Variante.

courier1 Postfix: Courier IMAP mit SSL aufsetzen zertifikat X.509 ubuntu thunderbird telnet SSL squeeze server postfix pop3 pop passwd PAM outlook MTA lpic 202 lpic 2 lpic iptables imap gamin firewall email debian daemon courier authdaemonrc admin

So, nun noch die Information, dass ein selbstsigniertes X.509 Zertifikat erstellt wird. Dies stellt die Verschlüsselung zwischen Server und Klient sicher. Beim ersten Kontakt (später, nach dem erfolgreichen Setup) mit dem MUA (Thunderbird, Outlook usw.) erhalten wir eine Warnmeldung, dass das Zertifikat gefälscht sein könnte. Es sei denn wir hätten es inzwischen durch eines ersetzt, dass von einer anerkannten CA (Certification Authority) signiert worden wäre, die Thunderbird kennt und akzeptiert. Doch das würde wohl Geld kosten. In diesem Beispiel entscheiden wir uns für die automatische Installation eines selbst signierten Zertifikats:

courier2 Postfix: Courier IMAP mit SSL aufsetzen zertifikat X.509 ubuntu thunderbird telnet SSL squeeze server postfix pop3 pop passwd PAM outlook MTA lpic 202 lpic 2 lpic iptables imap gamin firewall email debian daemon courier authdaemonrc admin

Vorbereitung

So, alles installiert. An dieser Stelle ergeht die Empfehlung, eine seperate Shell zu öffnen, in der das Logfile laufend aktualisiert wird. Mit tail -f sorgen wir dabei für eine laufende Aktualisierung (nahezu) in Echtzeit. Dies hilft uns bei der Bestätigung unserer Aktionen sowie bei der Fehlersuche:

tail -f /var/log/mail.info
(...)
Jun 20 14:12:52 box authdaemond: modules="authpam", daemons=5
Jun 20 14:12:52 box authdaemond: Installing libauthpam
Jun 20 14:12:52 box authdaemond: Installation complete: authpam

Sieht doch ganz gut aus. Dann überprüfen wir gleich mal, ob der Dienst IMAP mit SSL auf Port 993 läuft:

telnet localhost 993
Trying ::1...
Connected to localhost.
Escape character is '^]'.

… tut er offenbar.

Dateien in /etc/courier

Nun ein Blick in das neu entstandene Verzeichnis /etc/courier. Was ist denn da alles neues zu sehen?

root@box:cd /etc/courier
root@box:ls
authdaemonrc  imapd.cnf  imapd-ssl shared imapd  imapd.pem
  • imapd.pem enthält das bei der Installation automatisch erstellte selbst signierte Zertifikat.
  • imapd.cnf ist die dazugehörige Konfigurationsdatei.
  • imapd entspricht der unverschlüsselten Variante von imapd-ssl (um die es hier geht)

Konfiguration: /etc/courier/imapd-ssl

Werfen wir doch gleich mal einen Blick in die Hauptkonfigurationsdatei /etc/courier/imapd-ssl:

(...)
SSLPORT=993
(...)

Hier könnten wir den Port ändern, um den Dienst auf einen anderen Port zu legen. Im Beispiel ändern wir den Port auf:

SSLPORT=10001

Nach der Änderung starten wir den Dienst neu und überprüfen die Änderung mit telnet….

root@box:/etc/init.d/courier-imap-ssl restart
Stopping Courier IMAP-SSL server: imapd-ssl.
Starting Courier IMAP-SSL server: imapd-ssl.
root@box:/etc/courier# telnet localhost 10001
Trying ::1...
Connected to localhost.
Escape character is '^]'.

Läuft also bereits auf dem neuen Port 10001. Sieht so aus, als wären wir auf dem richtigen Weg…

Authentifizierung: /etc/courier/authdaemonrc

Und wie muss sich ein Nutzer authentifizieren? Dazu werfen wir einen Blick in /etc/courier/authdaemonrc

(…)

authmodulelist="authpam"

(…)

Standardmäßig muss sich der Benutzer also via PAM mit seinen normalen Nutzerdaten anmelden, so wie sie in /etc/passwd (bzw /etc/shadow) hinterlegt sind. Vorerst belassen wir es dabei. Soll ein Nutzer nur einen Email-Account haben, ohne Möglichkeit, sich in das System einzuloggen, entfernen wir einfach die Shell des Benutzers in /etc/passwd.

Andere Möglichkeiten der Authentifizierung wären:

authuserdb authpgsql authldap authmysql authcustom authpipe

Somit wäre dann eine Authentifizierung über verschiedene Datenbankensysteme möglich, was wir hier nicht weiter behandeln.

Firewall öffnen

Im Prinzip sollte unser IMAP-Server jetzt erreichbar sein. Jetzt müssen wir nur noch den entsprechenden Port in der Firewall öffnen ( Port 993 bzw. hier in unserem Beispiel: 10001 ):

iptables -A INPUT  -p TCP --sport $P_HIGH --dport 10001 -j ACCEPT

… wobei in diesem Fall $P_HIGH bereits als unprivilegierter Port >1023 definiert war.

Mail User Agent konfigurieren

Jetzt müssen wir den MUA  so konfigurieren, dass die E-Mails verschlüsselt abgerufen werden können. Dies variiert natürlich in Abhängigkeit der Postfix-Konfiguration und dem MUA der benutzt wird. Beispiel Thunderbird:

thunderbird courier Postfix: Courier IMAP mit SSL aufsetzen zertifikat X.509 ubuntu thunderbird telnet SSL squeeze server postfix pop3 pop passwd PAM outlook MTA lpic 202 lpic 2 lpic iptables imap gamin firewall email debian daemon courier authdaemonrc admin

Zertifikat: Ausnahmeregel bestätigen

Nun versuchen wir, die E-Mails mit dieser Konfiguration abzurufen. Dabei behalten wir ein Auge auf die Logdatei, falls etwas schiefläuft. Im besten Fall werden wir mit (der am Anfang dieses Artikels angekündigten) Sicherheitswarnung konfrontiert:

sicherheitsausnahmeregel Postfix: Courier IMAP mit SSL aufsetzen zertifikat X.509 ubuntu thunderbird telnet SSL squeeze server postfix pop3 pop passwd PAM outlook MTA lpic 202 lpic 2 lpic iptables imap gamin firewall email debian daemon courier authdaemonrc admin

Thunderbird vertraut uns zwar nicht, aber wir vetrauen uns und wissen, dass das Zertifikat von uns ist. Wer sicher gehen will, dass sich auch wirklich niemand dazwischen gemogelt hat, sieht sich das Zertifikat an und vergleicht den Fingerabdruck mit dem auf dem Server… Nach der Bestätigung der Ausnahmeregel können wir mit Thunderbird SSL-verschlüsselte E-Mails von unserem aufgesetzten IMAP-Server holen.

Es kann bei Debian vorkommen, dass beim Abruf der E-Mails die Meldung erscheint:

filesystem error (check for configuration errors with the FAM/Gamin library)

Dies ist scheinbar debianspezifisch. Die Lösung ist, die Bibliothek libfam durch gamin zu ersetzen….:

aptitude install gamin

…und Courier neu zu starten.

/etc/init.d/courier-imap-ssl restart

Soweit das grundlegende Setup zum Einstieg, das weder Anspruch auf Vollständigkeit erhebt, noch zwangsläufig den Königsweg darstellt.

Weitere LPIC-202 Artikel

Modulverwaltung unter Linux

sivvus tools big Modulverwaltung unter Linux vfat ubuntu treiber rmmod planetuu modules.dep module modprobe modinfo lucid lynx lucid lsmod lpic 202 lpic 2 lpic linux insmod FAT depmod blacklisting Module sind Vermittler zwischen Hardware und dem Kernel des Betriebssystems. Ihre Aufgabe ist es, die gewünschte Funktion der Hardware sicherzustellen.

Dieser Artikel versucht einen grundlegenden Einblick in die Organisation und Verwaltung von Modulen unter Linux zu geben. Mit Linux-Distributionen wie Ubuntu gibt es zwar meist keine Probleme mit Modulen (Windows: “Treiber”). Denn Module werden heutzutage bei  modernen Linux-Systemen automatisch ge- und entladen, ohne dass der Benutzer groß damit behelligt würde.

Trotzdem wird wahrscheinlich jeder Linuxnutzer irgendwann einmal auf ein Problem mit Modulen stoßen.

Früher war es oft ein Gefrickel, Abhängigkeiten von Modulen manuell zu erfüllen. Denn oft brauchen Module weitere Module, damit sie ihre Aufgabe erfüllen können. modprobe ist ein aktueller Befehl, um Module zu laden und zu entladen. Er setzt auf dem alten Befehl insmod auf. Zusätzlich erkennt er aber die Abhängigkeiten automatisch und kann diese mit berücksichtigen. Benötigt ein Modul weitere Module, so werden diese erkannt und automatisch geladen, und zwar vor dem eigentlichen Modul.

Module und Abhängigkeiten

Die Abhängigkeiten der einzelnen Module sind in der Datei…

/lib/modules/<kernelversion>/modules.dep

…festgelegt, wobei <kernelversion> natürlich durch die aktuelle Kernelversion ersetzt werden muss. Diese lässt sich ganz einfach herausfinden mit uname -r:

uname -r
2.6.32-25-generic

modprobe ruft modules.dep auf, um die Abhängigkeiten zu erfahren, die vor dem eigentlichen Modul geladen werden müssen. Links steht jeweils das Modul, hinter dem Doppelpunkt die zusätzlich benötigten Abhängigkeiten. Ein Blick in diese Datei (Auszug) zeigt …

$ cat /lib/modules/2.6.32-25-generic/modules.dep | grep fat
kernel/fs/fat/fat.ko:                             # Zeile 1
kernel/fs/fat/vfat.ko: kernel/fs/fat/fat.ko       # Zeile 2
kernel/fs/fat/msdos.ko: kernel/fs/fat/fat.ko      # Zeile 3

…dass das Modul vfat abhängig von dem Modul fat ist (Zeile 2).  Und auch das Modul msdos braucht fat (Zeile 3).  Alle auf dem System verfügbaren Module sind in modules.dep gelistet, auch solche Module, die keine Abhängigkeiten haben (Beispiel Zeile 1: fat).

Um vfat und seine Abhängigkeiten zu laden genügt:

modprobe vfat

Erst wird fat (werden alle Abhängigkeiten) geladen, dann vfat (das eigentlich zu ladende Modul). Um vfat wieder zu entladen, nutzt man die Option -r:

modprobe -r vfat

Mein Mausmodul psmouse hängt nicht von anderen Modulen ab:

$ grep psmouse /lib/modules/2.6.32-25-generic/modules.dep
kernel/drivers/input/mouse/psmouse.ko:

Geladene Module anzeigen

Eine Liste aller geladenen Module lässt sich mit lsmod anzeigen (Auszug):

$ lsmod
Module Size   Used by
(...)
video  17375  0
output 1871   1    video
(...)

Das Ergebnis wird in vier Spalten angezeigt. Zunächst der Name des Moduls (video), dann seine Größe, (17375) dann die Anzahl der Module, die das Modul nutzen (0) und schließlich die Namen der Module, die es nutzen (leer, da 0). Das Modul output wird also von einem Modul genutzt und das ist video. Einen ähnlichen Output erzeugt ein Blick in die Datei:

/proc/modules

Abhängigkeiten aktualisieren

Wichtig ist natürlich, dass /lib/modules/<kernelversion>/modules.dep immer aktuell gehalten wird, damit modprobe korrekt arbeiten kann. Deshalb wird die Datei bei jedem Systemstart auf den neuesten Stand gebracht. Wenn sich Modulabhängigkeiten im laufenden Betrieb geändert haben, kann man modules.dep auch manuell aktualisieren:

depmod -a

Wenn nach einem manuellen Eingriff das Laden eines Moduls scheitert, ist depmod -a oft die Lösung des Problems.

Individuelle Konfiguration einzelner Module

Das Verhalten von modprobe kann darüberhinaus für einzelne Module konfiguriert werden (optional). So können einzelnen Modulen u.a. Aliase zugeordnet werden. Interrupts können zugeordnet werden oder Shellskripte vor dem Laden eines Moduls ausgeführt werden. Oder das Laden bestimmter Module kann ganz verhindert werden (blacklisting).

In vielen älteren Distributionen geschah dies in der Datei /etc/modules.conf (/etc/modprobe.conf, /etc/conf.modules…). In Ubuntu Lucid Lynx (LTS) legt man dazu eine Konfigurationsdatei im Verzeichnis /etc/modprobe.d ab. Beispiel für das Blacklisting von Modulen:

$ cat /etc/modprobe.d/nvidia-graphics-drivers.conf
blacklist nouveau
blacklist lbm-nouveau
blacklist nvidia-173
blacklist nvidia-96

Informationen zu einzelnen Modulen anzeigen

Einen guten Überblick über Informationen zu einem bestimmten Modul erlaubt modinfo.

$: modinfo fat
filename: /lib/modules/2.6.32-25-generic/kernel/fs/fat/fat.ko
license: GPL
srcversion: F3CEDF3D6DC8D993978847D
depends:
vermagic: 2.6.32-25-generic SMP mod_unload modversions 586

Alle LPIC-202 Artikel

Offene Dateien mit ‘lsof’ aufspüren

folder 20110506 Offene Dateien mit lsof aufspüren unix umount squid prozess mount lsof lpic 202 lpic linux grep debugging lsof (List Open Files) ist ein hilfreiches Tool zum Aufspüren geöffneter Dateien.

In einer detaillierten Tabelle zeigt die Ausgabe von lsof Informationen über den Benutzer, die Größe und den mit der Datei assoziierten Prozess an. Ggf. muss man die Fülle an Information z.B. mit grep auf ein gesundes Maß herunterfiltern.

Manchmal weigert sich z.B. das System, einen USB-Stick auszubinden. Das Un-mounten misslingt, da “Device or Ressource busy” gemeldet wird. Um die geöffnete Datei zu finden (Beispiel für /media/USBSTICK) nutzt man:

lsof | grep USBSTICK

bash 3710 heini cwd DIR 8,17 4096 1 /media/USBSTICK
less 3986 heini cwd DIR 8,17 4096 1 /media/USBSTICK
less 3986 heini 4r REG 8,17 1874 192 /media/USBSTICK/darkice.cfg

Hier sieht man, dass die Datei darkice.cfg mit less geöffnet ist (Zeile 3). Aber auch schon alleine die Tatsache, dass man sich mit einer bash im Verzeichnis /media/USBSTICK befindet (Zeile 1: cwd=”current working directory”), kann das Un-mounten verhindern.

Mit der Option -i können offene Netzwerksockets angezeigt werden, was das Aufspüren unerwünschter Netzwerkverbindungen erleichtern kann. Die Option -n unterdrückt die (evtl. zeitaufwändige Namensauflösung)

lsof -n -i tcp

Und dasselbe nur für einen bestimmten Port (hier www)

lsof -n -i tcp:80

Eine Liste geöffneter Dateien eines bestimmten Prozesses anzeigen (vom Prozess mit PID 12345):

lsof -p 12345

Eine Liste geöffneter Dateien eines bestimmten Befehls anzeigen (hier: squid):

lsof -c squid

Alle Prozesse anzeigen, die die Datei /var/log/messagesbenutzen:

lsof /var/log/messages

Alle geöffneten Dateien eines bestimmten Benutzers anzeigen:

lsof -u nutzername

Wer benutzt das CD-ROM-Laufwerk?:

lsof /dev/cdrom

Weitere Beispiele
Sehr schönes umfangreiches Tutorial (englisch)

Postfix: Wichtige Befehle in der Kurzübersicht

Postfix logo Postfix: Wichtige Befehle in der Kurzübersicht postfix mail lpic 202 lpic 2 lpic e mail admin Die folgende Übersicht stellt einige der wichtigsten Befehle im Zusammenhang mit dem Mail Transfer Agent (MTA) Postfix vor:

/etc/init.d/postfix [start|stop|restart|reload]
(Postfix Kontrollprogramm)

mailq
(Zeigt den Inhalt der Mailqueue, inklusive der ID an)

postalias
(erstellt bzw. verwaltet Anfragen an die alias Datenbank)

postconf
(Ohne Argumente zeigt postconf die gesetzten Konfigurationsparameter in /etc/postfix/main.cf an.)

postconf -d
(Zeigt nicht die aktuellen, aber die Default-Einstellungen an)

postcat -q [Message-ID]
(Zeigt den Inhalt einer Nachricht in menschenlesbarer Form an)

postlog
Mit postlog können – auch per Skript – Nachrichten in die Logdatei i.d.R. /var/log/mail.log geschrieben werden. Beispiel:

rotz@loeffel:~# postlog nur ein test
postfix/postlog: nur ein test
rotz@loeffel:~# cat /var/log/mail.log | grep test
Dec 31 16:30:59 debian postfix/postlog[25137]: nur ein test


postmap

(Eine der wichtigsten Aufgaben von postmap ist es, spezielle Tabellen aus regulären Dateien zu erstellen, z.B. die /etc/postfix/virtual.db aus /etc/postfix/virtual zu bilden. Beispiel:)

rotz@loeffel# postmap hash:/etc/postfix/virtual

postdrop
(postdrop liest Mails von der Standardeingabe und “dropt” das Ergebnis in das maildrop Verzeichnis.)

postkick
(postkick kommuniziert mit den Postfixdaemonen und ermöglicht damit einen effektiven Zugang für Skripten und andere Programme.)

postqueue
(Kontrollbefehl für die Postfix queue. Mit dem Parameter -f (f für flush) veranlasst postqueue den Versand aller Mails in der queue, unabhängig von ihrer Bestimmung.)

postsuper
(Ähnlich wie postqueue verwaltet postsuper die Mailqueue. Hierzu sind allerdings root-Rechte nötig. Eine häufige Anwendung ist das Löschen einer Mail aus der queue. Beispiel:)
postsuper -d queue-ID

(Bildlizenz: public domain)

Mehr Info: Anatomy of Postfix

Postfix: Email-Alias konfigurieren

Postfix logo Postfix: Email Alias konfigurieren server postfix postconf mailserver mail lpic 202 lpic 2 lpic linux lenny debian aliases.db alias /etc/aliases

Auf einem Mailserver sorgen Mailaliase dafür, dass Mails an bestimmte Benutzer an einen anderen Benutzer weitergeleitet werden (Bild: Public Domain). Mailaliase sind i.d.R. in /etc/aliases festgelegt. Zunächst können wir uns mit Hilfe von postconf davon überzeugen, dass die Datenbank für Aliase auch dort ist, wo wir sie vermuten:

rotz@loeffel# postconf alias_maps
alias_maps = hash:/etc/aliases

Ein Blick in eine jungfräuliche /etc/aliases (hier Debian Lenny) verrät, dass hier schon mit der Installation von Postfix einiges “gemappt” wurde (Darstellung verkürzt). Wir fügen als letzte Zeile noch hinzu, dass alle Mails, die an “root” gehen, an den lokalen Benutzer “susi” weitergeleitet werden sollen:

# /etc/aliases
mailer-daemon: postmaster
postmaster: root
nobody: root
hostmaster: root
(...)
root: susi

Nach jeder Änderung an /etc/aliases muss …

newaliases

… ausgeführt werden, damit die Datei in ein Postfix-kompatibles Format übertragen wird (/etc/aliases.db).

Apache Webserver: Schlüsselbegriffe und -kommandos

Brushing Against Little Squint Eyes San Carlos Apaches Apache Webserver: Schlüsselbegriffe und  kommandos www server lpic 202 lpic Apache Software Foundation Apache HTTP Server apache .htaccess Dieser Artikel beleuchtet in Kurzform einige Begriffe, Befehle und Schlüsselfunktionen im Zusammenhang mit der grundlegenden Einrichtung und Konfiguration des Webservers Apache.

Nicht näher eingegangen wird hier auf die Konfiguration mit SSL und Virtual Hosts.

Weitere ausgewählte Artikel zu Apache auf diesem Blog: Wichtige Apache-Direktiven, Passwortgeschützes Verzeichnis einrichten.

(Bildlizenz: Creative Commons Attribution 2.0 Generic - Für Details bitte Bild anklicken)

icon smile Apache Webserver: Schlüsselbegriffe und  kommandos www server lpic 202 lpic Apache Software Foundation Apache HTTP Server apache .htaccess /etc/apache2/
Heimatverzeichnis für Konfigurationsdateien von Apache. Kann aber mit der Direktive ServerRoot in der Hauptkonfigurationsdatei anders festgelegt sein.

icon smile Apache Webserver: Schlüsselbegriffe und  kommandos www server lpic 202 lpic Apache Software Foundation Apache HTTP Server apache .htaccess /etc/apache2/apache2.conf
Hauptkonfigurationsdatei für Apache 2. Manche Distributionen weichen hiervon ab (z.b. httpd.conf)

icon smile Apache Webserver: Schlüsselbegriffe und  kommandos www server lpic 202 lpic Apache Software Foundation Apache HTTP Server apache .htaccess /etc/apache2/ports.conf
Hier wird festgelegt, auf welchen Port(s) Apache auf Anfragen wartet. Oft auch direkt in apache2.conf festgelegt. Beispiel (ohne SSL):
Listen 80

icon smile Apache Webserver: Schlüsselbegriffe und  kommandos www server lpic 202 lpic Apache Software Foundation Apache HTTP Server apache .htaccess /etc/apache2/envvars
Hier sind die Standardumgebungsvariablen für apache2ctl (siehe weiter unten) festgelegt. Beispiel:

export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
export APACHE_PID_FILE=/var/run/apache2.pid

icon smile Apache Webserver: Schlüsselbegriffe und  kommandos www server lpic 202 lpic Apache Software Foundation Apache HTTP Server apache .htaccess /etc/apache2/conf.d/security
Legt einige Sicherheitseinstellungen fest. U.a. kann hier die Rückgabe der Serversignatur konfiguriert werden. Wurde auf diesem Blog bereits hier beschrieben.

icon smile Apache Webserver: Schlüsselbegriffe und  kommandos www server lpic 202 lpic Apache Software Foundation Apache HTTP Server apache .htaccess .htaccess
Zitat: “Der Apache ermöglicht die dezentrale Verwaltung der Konfiguration mittes spezieller Dateien innerhalb des Web-Verzeichnisbaums. Diese speziellen Dateien heißen gewöhnlich .htaccess, mit der Direktive AccessFileName kann jedoch auch ein anderer Name festgelegt werden. In .htaccess-Dateien angegebene Direktiven werden auf das Verzeichnis und dessen Unterverzeichnisse angewendet, in dem die Datei abgelegt ist. .htaccess-Dateien folgen der gleichen Syntax wie die Hauptkonfigurationsdateien. Da .htaccess-Dateien bei jeder Anfrage eingelesen werden, werden Änderungen in diesen Dateien sofort wirksam.”

icon smile Apache Webserver: Schlüsselbegriffe und  kommandos www server lpic 202 lpic Apache Software Foundation Apache HTTP Server apache .htaccess htpasswd
Erstellt und verwaltet eine Datei mit Benutzernamen und Passwort zur einfachen Authentifizierung von Verzeichnissen. Wurde auf diesem Blog bereits hier beschrieben

icon smile Apache Webserver: Schlüsselbegriffe und  kommandos www server lpic 202 lpic Apache Software Foundation Apache HTTP Server apache .htaccess /usr/lib/apache2/modules
Heimat der Apache-Module

icon smile Apache Webserver: Schlüsselbegriffe und  kommandos www server lpic 202 lpic Apache Software Foundation Apache HTTP Server apache .htaccess apache2ctl
Steuerungskommando von Apache zum starten, stoppen des Dienstes oder dem reload der Konfiguration u.a. Beispiel:

apache2ctl restart

Außerdem kann mit apachectl überprüft werden, ob die Syntax der Konfiguration korrekt ist…

apache2ctl configtest

icon smile Apache Webserver: Schlüsselbegriffe und  kommandos www server lpic 202 lpic Apache Software Foundation Apache HTTP Server apache .htaccess Hier ist i.d.R. die Prozess-ID PID abgelegt (siehe /etc/apache2/envvars)
/var/run/apache2.pid

LinuxNetzer Blog: Alle LPIC-202 Artikel

Apache Webserver: Wichtige Direktiven

Dieser Artikel betrachtet einige wichtige Direktiven der Hauptkonfigurationsdatei des Webservers Apache. Für weiterführende Infos hält die Apache Webseite ein Verzeichnis aller Apache Direktiven mit ausführlichen Kommentaren bereit. Die folgende beispielhafte /etc/apache2/apache2.conf eines Debian Lenny erhebt weder Anspruch auf Vollständigkeit, Sinnhaftigkeit oder Sicherheit. Sie dient alleine der Dokumentation wichtiger Direktiven.

Apache portraits Apache Webserver: Wichtige Direktiven www webserver Servers lpic 202 lpic 2 lpic LPI linux lenny debian apache2.conf Apache Software Foundation Apache HTTP Server apache

Bildlizenz: Public Domain

# Basisverzeichnis der Serverinstallation
ServerRoot "/etc/apache2"

# Wurzelverzeichnis der Webinhalte
DocumentRoot "/var/www/htdocs"

# Name des Servers
ServerName www.server.tld

# E-Mail des Administrators
# Wird bei Fehler an Client übermittelt
ServerAdmin webmaster@domain.tld

# .htaccess Dateien werden ignoriert (s. u.)
AllowOverride None

# Datei, in welcher der Server die Prozess-ID des Daemons ablegt
# oft: "/var/run/apache2.pid" oder als Include-Direktive ausgelagert
# APACHE_PID_FILE wird in /etc/apache2/envvars festgelegt
PidFile ${APACHE_PID_FILE}

# Zeitspanne, die der Server auf verschiedene Ereignisse
# wartet, bevor er die Anfrage abbricht
Timeout 120

# KeepAlive: Mehr als einen request je Verbindung erlauben?
# Aktiviert persistente HTTP-Verbindungen
KeepAlive On

# Anzahl der Anfragen, die bei einer persistenten Verbindung zulässig sind
# Wieviele Requests maximal? 0=unendlich
MaxKeepAliveRequests 100

Read more »

Aktives und passives FTP

Bei der Datenübertragung per FTP (File Transfer Protocol) wird zwischen “aktivem” und “passivem” FTP unterschieden.  Mit “aktiv” und “passiv” wird dabei jeweils das Verhalten des Servers charakterisiert. Heute trifft man fast nur noch passives FTP an. Fast alle Browser nutzen inzwischen passives FTP als Standard.

Bei “aktivem” FTP kommt neben Port 21 (Control Connection) auch Port 20 (Data Connection) zum Einsatz. Bei “passivem” FTP nutzt der Server neben Port 21 für den Kontrollkanal einen unprivilegierten Port (1024 oder höher) als Datenkanal.

Aktives FTP:

AktivesFTP Aktives und passives FTP windows vsftpd upload Servers server passiv lpic 202 lpic 2 lpic linux ftp File Transfer Protocol download Clients aktiv admin
Das Schaubild wurde von mdjango unter der GNU-Lizenz für freie Dokumentation veröffentlicht. Weitere Lizenzdetails

Bei aktivem FTP öffnet der Klient zunächst eine Control Connection, indem er sich über TCP zum Serverport 21 verbindet. Nach erfolgreichem handshake teilt der Klient dem Server einen höheren Port mit, z.B. 1035. In einer seperaten Verbindung öffnet dann der Server (Port 20) “aktiv” eine Data Connection zum mitgeteilten Port 1035 des Klienten (roter Pfeil im Schaubild). Der eigentliche Down- bzw. Upload (Datenfluss) findet also zwischen Port 20 (Server) und Port 1035 (Klient) statt.

Passives FTP:

Bei passivem FTP teilt der Klient (nach erfolgreichem handshake) dem Server über Port 21 (Kontrollkanal) mit, dass er eine passive Verbindung wünscht (FTP-Kommando PASV). Der Server öffnet daraufhin einen unprivilegierten Port (z.B. 30003) und teilt dies dem Klienten mit. Nun wartet der Server “passiv” darauf, dass sich der Klient auf dem mitgeteilten Port (Datenkanal) verbindet, um den Datenaustausch durchzuführen.

FTP-Server vsftpd: Wichtige Konfigurationsparameter

Hardwareinformationen anzeigen mit lsdev

lsdev ist ein einfaches Werkzeug zum Anzeigen von Harwareinformationen. Dazu liest lsdev liest folgende Dateien aus dem Verzeichnis /proc aus…
icon smile Hardwareinformationen anzeigen mit lsdev lsdev lpic 202 lpic 2 lpic linux IRQ interrups I/O hardware dma admin /proc /proc/ioports (I/O Addresses) icon smile Hardwareinformationen anzeigen mit lsdev lsdev lpic 202 lpic 2 lpic linux IRQ interrups I/O hardware dma admin /proc /proc/interrupts (IRQ Channels) icon smile Hardwareinformationen anzeigen mit lsdev lsdev lpic 202 lpic 2 lpic linux IRQ interrups I/O hardware dma admin /proc /proc/dma (Direct Memory Access Information)

…und fasst die Informationen dann in einer Übersicht zusammen. Hier ein verkürztes Beispiel:

lsdev Hardwareinformationen anzeigen mit lsdev lsdev lpic 202 lpic 2 lpic linux IRQ interrups I/O hardware dma admin /proc