BRAIN-MEDIA.DE PROFESSIONELLES LINUX- UND OPEN-SOURCE KNOW-HOW Holger Reibold Webmin kompakt 2., aktualisierte und erweiterte Auflage Alles, was Sie über die Systemadministration mit Webmin wissen sollten Holger Reibold Webmin kompakt 2 Webmin kompakt Alle Rechte vorbehalten. Ohne ausdrückliche, schriftliche Genehmigung des Verlags ist es nicht gestattet, das Buch oder Teile daraus in irgendeiner Form durch Fotokopien oder ein anderes Verfahren zu vervielfältigen oder zu verbreiten. Dasselbe gilt auch für das Recht der öffentlichen Wiedergabe. Der Verlag macht darauf aufmerksam, dass die genannten Firmen- und Markennamen sowie Produktbezeichnungen in der Regel marken-, patent- oder warenrechtlichem Schutz unterliegen. Verlag und Autor übernehmen keine Gewähr für die Funktionsfähigkeit beschriebener Verfahren und Standards. © 2007 Brain-Media.de Umschlaggestaltung: Brain-Media.de Satz: Brain-Media.de Coverbild: Teresto Druck: COD ISBN: 978-3-939316-10-7 www.brain-media.de 3 Inhaltsverzeichnis Vorwort .................................................................................................................. 13 1 Webmin – der Einstieg ................................................................................... 15 1.1 Installation .............................................................................................. 16 1.2 Erstes Log-in .......................................................................................... 25 1.3 Webmin-Kategorien ............................................................................... 27 1.4 Deinstallation ......................................................................................... 29 1.5 Sicherheit für den Webmin-Server ......................................................... 30 1.5.1 Zugriffsbeschränkung auf IP-Basis ................................................ 30 1.5.2 Zugriff per SSL .............................................................................. 31 2 Webmin-Module ............................................................................................ 35 2.1 Sprache anpassen .................................................................................... 35 2.2 Konfigurationsdateien sichern ................................................................ 37 2.2.1 Konfigurationsdateien wiederherstellen ......................................... 39 2.2.2 Modulkonfiguration........................................................................ 40 2.3 Webmin-Konfiguration .......................................................................... 43 2.3.1 Anschluss und Adresse ................................................................... 43 2.3.2 Protokollierung ............................................................................... 45 2.3.3 Proxy-Server und Downloads......................................................... 46 2.3.4 Benutzerschnittstelle....................................................................... 49 2.3.5 Webmin-Module ............................................................................ 50 2.3.6 Das Betriebssystem und seine Umgebung ...................................... 54 2.3.7 Sprache anpassen ............................................................................ 55 2.3.8 Indexseiten...................................................................................... 55 2.3.9 Webmin aktualisieren ..................................................................... 56 2.3.10 Authentifizierung............................................................................ 59 2.3.11 Modulzuordnung und Kategorien ................................................... 63 2.3.12 Modultitel anpassen ........................................................................ 64 2.3.13 Webmin-Themes ............................................................................ 65 2.3.14 Vertraute Verweise ......................................................................... 67 Webmin kompakt Inhaltsverzeichnis 4 2.3.15 2.3.16 2.3.17 2.3.18 2.3.19 2.3.20 2.3.21 Anonymer Modulzugriff ................................................................ 68 Dateisperrung ................................................................................. 69 Mobile Device Options................................................................... 69 Erweiterte Optionen........................................................................ 69 SSL-Funktionen.............................................................................. 70 Zertifikatautorität ............................................................................ 70 Modulkonfiguration........................................................................ 72 2.4 Webmin-Benutzer und -Gruppen ........................................................... 72 2.4.1 Neuen Benutzer anlegen ................................................................. 74 2.4.2 Modulberechtigungen ..................................................................... 76 2.4.3 Samba-Modulberechtigungen......................................................... 78 2.5 Die Webmin-Ereignisanzeige ................................................................. 82 2.6 Webmin-Server ...................................................................................... 83 2.6.1 Neuen Server hinzufügen ............................................................... 84 2.7 3 4 5 6 Modulkonfiguration................................................................................ 87 Benutzer und Gruppen.................................................................................... 89 3.1 Benutzerverwaltung................................................................................ 90 3.2 Gruppe erstellen ..................................................................................... 94 3.3 Log-ins abrufen ...................................................................................... 95 3.4 Stapelverarbeitungsdatei exportieren ..................................................... 98 3.5 Modulkonfiguration.............................................................................. 100 3.6 Systemkonfiguration ............................................................................ 108 Boot-Konfiguration ...................................................................................... 111 4.1 Grundlegendes über den Boot-Vorgang ............................................... 112 4.2 Modulkonfiguration.............................................................................. 114 Dateisystem-Back-up ................................................................................... 115 5.1 Back-up-Optionen ................................................................................ 117 5.2 Back-up-Zeitplan .................................................................................. 118 5.3 Daten wiederherstellen ......................................................................... 119 Festplatten-Quotas ........................................................................................ 123 www.brain-media.de 5 7 Zeitsteuerung mit Cron und AT ................................................................... 125 7.1 Neuen Cronjob erstellen ....................................................................... 126 7.2 Modulkonfiguration.............................................................................. 128 8 Zeitsteuerung mit AT-Befehlen.................................................................... 131 9 Laufende Prozesse ........................................................................................ 133 9.1 Prozessdetails ....................................................................................... 135 9.2 Suche .................................................................................................... 137 9.3 Prozess ausführen ................................................................................. 137 9.4 Modulkonfiguration.............................................................................. 137 10 Logfile-Rotation ....................................................................................... 139 10.1 Logrotate einsetzen ............................................................................... 139 10.2 Modulkonfiguration.............................................................................. 144 11 Dateisysteme ............................................................................................ 145 11.1 ext3-Dateisystem erstellen.................................................................... 147 11.2 Windows-Dateisystem.......................................................................... 150 11.3 Automounter......................................................................................... 151 11.4 Samba-Freigabe .................................................................................... 152 11.5 Modulkonfiguration.............................................................................. 153 12 PAM-Authentifizierung............................................................................ 155 12.1 PAM-Basics ......................................................................................... 156 12.2 Modulkonfiguration.............................................................................. 159 13 Umgang mit Passwörtern ......................................................................... 161 14 Software-Pakete ....................................................................................... 163 14.1 Umgang mit dem Paketmanager........................................................... 164 14.2 Modulkonfiguration.............................................................................. 166 Webmin kompakt Inhaltsverzeichnis 6 15 System-Protokolldateien .......................................................................... 167 16 Systemstart ............................................................................................... 169 16.1 Dienst bearbeiten .................................................................................. 170 16.2 Modul-Konfiguration ........................................................................... 176 17 Systemdokumentation .............................................................................. 179 18 Apache-Webserver ................................................................................... 181 18.1 Globale Apache-Einstellungen ............................................................. 183 18.2 Virtuellen Server erzeugen ................................................................... 189 18.3 Protokolleinstellungen .......................................................................... 192 18.4 Fehlerbehandlung ................................................................................. 195 18.5 Aliasse und Umleitungen ..................................................................... 196 18.6 CGI-Konfiguration ............................................................................... 198 18.7 Verzeichnisindizierung ......................................................................... 200 18.8 Mehr Sicherheit dank SSL.................................................................... 201 18.9 PHP-Konfiguration ............................................................................... 203 18.10 Filter ................................................................................................. 203 18.11 Sprachen und Zeichensätze .............................................................. 205 18.12 Direktiven ......................................................................................... 205 18.13 Typische Aktionen bei der Administration von virtuellen Servern .. 207 18.14 Apache als Proxy-Server .................................................................. 210 18.15 Die Apache-Modulkonfiguration ..................................................... 212 19 BIND DNS-Server ................................................................................... 215 19.1 Zonen erstellen ..................................................................................... 216 19.2 Datensatztypen ..................................................................................... 220 19.3 Slave-Zone erstellen ............................................................................. 223 19.4 Globale BIND-Einstellungen ............................................................... 226 19.5 DNS-Schlüssel...................................................................................... 229 www.brain-media.de 7 19.6 Zonenstandards ..................................................................................... 229 19.7 rndc ....................................................................................................... 230 19.8 Konfigurationsdateien einsehen und bearbeiten ................................... 231 19.9 Modulkonfiguration.............................................................................. 232 20 DHCP-Server-Konfiguration .................................................................... 235 20.1 DHCP-Server-Basics ............................................................................ 236 20.2 Das Webmin-DHCP-Modul ................................................................. 237 20.3 Subnetze editieren und hinzufügen ....................................................... 238 20.4 Hosts und Hostgruppen erstellen .......................................................... 243 20.5 Die Client-Einstellungen ...................................................................... 244 20.6 Modulkonfiguration.............................................................................. 246 21 21.1 Fetchmail-Konfiguration .......................................................................... 251 Fetchmail-Modulkonfiguration ............................................................ 254 22 Benutzer-E-Mails lesen über Postfix ........................................................ 257 23 Mailinglisten mit Majordomo verwalten .................................................. 259 23.1 Mailinglisten-Übersicht ........................................................................ 260 23.2 Zugriffskontrolle .................................................................................. 267 23.3 Übersichtsliste ...................................................................................... 269 23.4 Majordomo-Optionen ........................................................................... 270 23.5 Modulkonfiguration.............................................................................. 270 24 Administration des MySQL-Servers ........................................................ 273 24.1 Datenbanken editieren und erzeugen .................................................... 275 24.2 Neue Datenbank erzeugen .................................................................... 277 24.3 Daten sichten ........................................................................................ 282 24.4 SQL-Kommandos ausführen ................................................................ 282 24.5 Import von Daten in Datenbank ........................................................... 285 Webmin kompakt Inhaltsverzeichnis 8 24.6 Globale MySQL-Einstellungen ............................................................ 286 24.7 MySQL-Server-Konfiguration ............................................................. 293 24.8 Systemvariablen ................................................................................... 295 24.9 Datenbank-Back-up .............................................................................. 296 24.10 25 Modul-Konfiguration ....................................................................... 298 SSH-Server ............................................................................................... 299 25.1 OpenSSH im Überblick ........................................................................ 300 25.2 Netzwerkkonfiguration ......................................................................... 302 25.3 Zugriffsbeschränkung ........................................................................... 303 25.4 Authentifizierung.................................................................................. 304 25.5 Exkurs: Zugriff im heterogenen Netzwerk ........................................... 305 25.6 Client-Optionen .................................................................................... 307 25.7 Sonstige Optionen ................................................................................ 310 25.8 Schlüssel-Setup .................................................................................... 311 25.9 Konfigurationsdateien editieren ........................................................... 311 25.10 26 Modulkonfiguration.......................................................................... 311 Samba-Administration.............................................................................. 313 26.1 Erste Freigabe erstellen ........................................................................ 315 26.2 Druckerfreigabe erstellen ..................................................................... 320 26.3 Freigabeeinstellungen als Vorlagen ...................................................... 321 26.4 Globale Samba-Konfiguration.............................................................. 321 26.4.1 Unix-Einstellungen ....................................................................... 322 26.4.2 Windows-Einstellungen ............................................................... 322 26.4.3 Passwort-Einstellungen ................................................................ 326 26.4.4 Windows-zu-Unix-Druckereinstellungen ..................................... 327 26.4.5 Erweiterte Einstellungen .............................................................. 328 26.4.6 Winbind-Optionen ........................................................................ 329 26.4.7 Vorgaben für Freigaben ................................................................ 330 26.4.8 Vorgaben für Druckerfreigaben.................................................... 331 26.4.9 SWAT........................................................................................... 334 www.brain-media.de 9 26.5 Samba-Benutzer ................................................................................... 337 26.5.1 Benutzer- und Gruppen-Synchronisation ..................................... 339 26.5.2 Benutzer und Gruppen verwalten ................................................. 340 26.6 27 Konfiguration des Samba-Moduls ........................................................ 342 SpamAssassin-Administration ................................................................. 345 27.1 Erlaubte und verbotene Adressen ......................................................... 348 27.2 Spam-Klassifizierung ........................................................................... 349 27.3 E-Mail-Modifikationen......................................................................... 350 27.4 Verschiedene Benutzeroptionen ........................................................... 350 27.4.1 Razor ............................................................................................ 351 27.4.2 DCC-Einstellungen....................................................................... 352 27.4.3 Pyzor............................................................................................. 353 27.5 Zusätzliche Tests einführen .................................................................. 353 27.6 Weitere Optionen ................................................................................. 354 27.7 Modulkonfiguration.............................................................................. 355 28 Administration des Squid-Proxy-Servers ................................................. 357 28.1 Anschlüsse und Netzwerk .................................................................... 358 28.2 Andere Caches ...................................................................................... 360 28.3 Speichernutzung ................................................................................... 361 28.4 Protokollierung ..................................................................................... 363 28.5 Cache-Einstellungen ............................................................................. 365 28.6 Hilfsprogramme.................................................................................... 367 28.7 Zugriffskontrolle .................................................................................. 367 28.8 Administrative Einstellungen ............................................................... 375 28.9 Authentifizierung.................................................................................. 375 28.10 Delay Pools ...................................................................................... 376 28.11 Header-Zugriffskontrolle .................................................................. 378 28.12 Refresh-Regeln ................................................................................. 378 28.13 Verschiedene Einstellungen ............................................................. 378 Webmin kompakt Inhaltsverzeichnis 10 28.14 Port-Umleitung ................................................................................. 379 28.15 Cache-Manager-Statistik .................................................................. 379 28.16 Cache leeren und neue erstellen ....................................................... 380 28.17 Modulkonfiguration.......................................................................... 380 29 Netzwerkeinstellungen ............................................................................. 383 29.1 Bandbreitenmessung ............................................................................ 384 29.2 Erweiterte Internetdienste ..................................................................... 385 29.3 VPN-Konfiguration .............................................................................. 387 29.4 Kerberos-Konfiguration ....................................................................... 388 29.5 Linux-Firewall ...................................................................................... 388 29.6 Netzwerkkonfiguration ......................................................................... 391 29.7 PPP-Konfiguration ............................................................................... 393 29.8 PPTP-Konfiguration ............................................................................. 393 29.9 SSL-Tunnel .......................................................................................... 393 30 Hardware-Konfiguration .......................................................................... 395 30.1 CD-Brenner .......................................................................................... 395 30.2 Druckerverwaltung ............................................................................... 397 30.3 Festplattenpartitionen ........................................................................... 399 30.4 GRUB-Bootmanager ............................................................................ 400 30.5 RAID-Geräte ........................................................................................ 401 30.6 SMART-Festplattenstatus .................................................................... 402 30.7 Systemzeit ............................................................................................ 402 30.8 Voicemail-Server und LVM ................................................................. 403 31 Cluster-Kategorie ..................................................................................... 405 31.1 Benutzer-/Gruppenmanagement im Cluster ......................................... 406 31.2 Kopierauftrag........................................................................................ 409 31.3 Cron-Auftrag ........................................................................................ 410 www.brain-media.de 11 31.4 Kommandozeile.................................................................................... 410 31.5 Passwort ändern.................................................................................... 410 31.6 Software-Management ......................................................................... 411 31.7 Usermin-Server verwalten .................................................................... 412 31.8 Webmin-Server-Verwaltung ................................................................ 412 31.9 Heartbeat-Monitor ................................................................................ 413 31.10 32 Konfigurationsautomat ..................................................................... 414 Sonstiges .................................................................................................. 415 32.1 Dateimanager........................................................................................ 415 32.2 Passwortgeschützte Web-Verzeichnisse ............................................... 416 32.3 System- und Server-Status ................................................................... 416 32.4 Die weiteren Funktionen ...................................................................... 417 Index..................................................................................................................... 419 Webmin kompakt 12 Inhaltsverzeichnis www.brain-media.de 13 Vorwort Was die Open-Source-Gemeinde in den vergangenen Jahren an hervorragenden Tools geschaffen hat, ist beispiellos. Rund um den Globus sind Millionen Entwickler im Dienste der freien Software unterwegs. Nicht immer halten Projekte, was sie auf den ersten Blick versprechen. Eines der größten Probleme ist sicherlich, dass Projekte häufig kommen und genauso schnell auch wieder vom Erdboden (genauer in den digitalen Weiten des Internets) verschwinden. Eine lobenswerte Ausnahme stellt das Webmin-Projekt dar, das seit vielen Jahren kontinuierlich von Jamie Cameron gepflegt und peu à peu funktional erweitert wurde. Webmin ist ein Web-basiertes Werkzeug für die Systemadministration von Unixbasierten Systemen. Es handelt sich um eines der beliebtesten Werkzeuge dieser Art. Es ist ein leichtgewichtiges Tool, das eine beeindruckende Funktionalität bietet und zudem leicht erweiterbar ist. Viele Punkte sprechen für den Einsatz von Webmin. So ist es beispielsweise in über zwanzig Sprachversionen verfügbar und wurde auf einer Vielzahl von Unix- und Linux-Systemen erfolgreich getestet. Und: Mithilfe von Webmin lassen sich nicht nur System- und Hardwarespezifische Einstellungen, sondern auch die Netzwerkkonfiguration oder spezielle Server wie beispielsweise Sendmail, Postfix, FTP-Server oder Squid-Einstellungen bearbeiten. Das vorliegende Buch führt Sie in die Arbeit mit Webmin 1.3.x ein. Es zeigt, wie Sie das Administrationswerkzeug in Betrieb nehmen, wie Sie Webmin an Ihre Bedürfnisse anpassen und wie Sie damit die verschiedensten Server und Systemkomponenten managen. Es erhebt übrigens keinen Anspruch auf Vollständigkeit – das wäre auch vermessen, denn alleine Apache-Bücher füllen meterweise Regale. Ziel des Buches ist es, Sie mit dem Administrationswerkzeug vertraut zu machen, bis Sie sich selbst weitere Funktionen erarbeiten können. Es liegt in der Natur der Sache, dass sich bei freien Projekten immer wieder Änderungen und Neuerungen ergeben. Diesem Umstand versuche ich mit Ergänzungen und Aktualisierungen über die Buch-Site (http://www.bomots.de/webmin/) Rechnung zu tragen. Bleibt mir nur, Ihnen viel Erfolg zu wünschen. Holger Reibold Webmin kompakt 14 Vorwort www.brain-media.de 15 1 Webmin – der Einstieg Sicherheit wird vielfach unter einem viel zu einseitigen Blickwinkel betrachtet. Häufig beschränkt sich der Sicherheitsbegriff auf Dinge wie Schutz vor Viren, Angreifern und Ähnliches. Übersehen wird dabei oft, dass man den Begriff Sicherheit weiter fassen muss. Insbesondere die sichere Systemadministration wird von vielen Anwendern stiefmütterlich behandelt. Dem wollen wir abhelfen und Ihnen zeigen, wie professionelle und vor allem sichere Systemadministration in der Praxis aussieht. Wir greifen dabei auf einen Klassiker zurück: Webmin. Webmin dürfte das wichtigste und weltweit am häufigsten eingesetzte Administrationswerkzeug für Linux und Unix-ähnliche Betriebssysteme sein. Sie können mit jedem beliebigen Webbrowser von überall her die verschiedenen Server-Prozesse oder Daemonen administrieren, die auf Ihrem System laufen. Daher auch seine Bezeichnung, die für Web-basierte Systemadministration steht. Eine der Besonderheiten: Der administrierende Benutzer benötigt selbst keinerlei Admin-Rechte, sondern lediglich die Rechte für das Paket, das er administrieren soll. Diese Rechte werden vom Webmin-Administrator kontrolliert. Mit einer solchen Konfiguration kann man beispielsweise einem Webmin-User nur die Administration eines DNS-Servers erlauben, wofür er auf der Shell-Ebene Root-Rechte benötigen würde. Webmin ist in Perl programmiert und stark modularisiert. Es kann somit leicht den jeweiligen Bedürfnissen angepasst und erweitert werden. Über die WebminWebsite ist ein spezieller Add-on-Bereich verfügbar. Dort können Sie sich ein Bild von den unzähligen Erweiterungen machen. Ein weiterer Punkt spricht für Webmin: Im Unterschied zu anderen Verwaltungswerkzeugen, die für bestimmte Linux-Distributionen entwickelt wurden (z. B. YaST für Suse Linux), ist Webmin für alle Unix-artigen Systeme wie GNU/Linux, Solaris, FreeBSD, OpenBSD, NetBSD, AIX, HP-UX und sogar Mac OS X geeignet. Inzwischen gibt es auch eine Windows-Version für die Administration von Apache, MySQL etc. Allerdings befindet sich die Windows-Variante noch in einem experimentellen Stadium. Voraussetzung ist lediglich eine Active-Perl-Installation. Webmin taugt in der Praxis nicht nur zu typischen administrativen Aufgaben, sondern eignet sich hervorragend für Lehrzwecke. Auszubildende können relativ gefahrlos in die Konfiguration von Servern wie Samba, Squid, DNS und dergleichen eingeführt werden, ohne sich gleich zu Beginn mit der oft komplizierten Syntax Webmin kompakt Webmin – der Einstieg 16 der Konfigurationsdateien befassen zu müssen. Damit eignet sich Webmin gerade auch für angehende Administratoren. 1.1 Installation Kommen wir zur Installation. Diese unterscheidet sich je nach Linux-Variante. Webmin steht in verschiedenen Varianten zum Download bereit: · RPM-Paket: Wenn Sie mit SuSE Linux, Red Hat oder einem anderen gängigen Betriebssystem arbeiten, können Sie das Paket besonders einfach mit Ihrem Paketmanager installieren. Als Root können Sie dieses Paket mit folgendem Kommando installieren: rpm –U webmin-1.3.400-1.noarch.rpm · Tar.gz: Diese Variante lässt sich unter jedem Linux-System installieren. Die dafür notwendigen Schritte sind dennoch sehr überschaubar. · Solaris-Paket: Dieses Paket ist speziell für die Anforderungen einer Solaris-Installation konzipiert. · Debian: Bei Debian-basierenden Linux-Varianten bietet es sich an, Webmin mithilfe von apt zu installieren. Führen Sie dazu einfach folgenden Befehl aus: apt-get install webmin Neben einer halbwegs aktuellen Perl-Installation benötigt Webmin übrigens sonst keine weiteren Komponenten. Genauer wollen wir uns die Installation des tar.gz-Pakets anschauen. Diese funktioniert auf allen wichtigen Linux-Distributionen problemlos. Daher ist sie immer dann vorzuziehen, wenn Probleme bei anderen Wegen auftreten. Die Vorgehensweise ist recht einfach: Entpacken Sie zunächst das Archiv in einen Ordner Ihrer Wahl. Stellen Sie sicher, dass Sie als Root angemeldet sind. Falls nicht, wechseln Sie mittels su in die notwendige Berechtigung. Als Nächstes starten Sie das Setup-Skript. Dazu führen Sie folgenden Befehl aus: ./setup.sh www.brain-media.de Installation 17 Das Skript verlangt verschiedene Eingaben von Ihnen, mit denen Sie Ihre WebminUmgebung konfigurieren. Zunächst bestimmen Sie das Verzeichnis, in dem die Konfigurationsdateien gespeichert sind. Das Skript schlägt folgendes Verzeichnis vor: /etc/webmin Wenn Sie diese Einstellung (das gilt übrigens auch für alle weiteren) beibehalten wollen, bestätigen Sie einfach mit Enter. Als Nächstes können Sie das Logfile-Verzeichnis ändern. Das Installationsskript schlägt /var/webmin vor. Durch die manuelle Eingabe können Sie die Vorgabe wieder ändern. Die folgende Frage bezieht sich auf das Perl-Installationsverzeichnis. Webmin gibt standardmäßig folgendes Verzeichnis vor: /usr/bin/perl Prüfen Sie, ob diese Angabe dem tatsächlichen Verzeichnis entspricht und nehmen Sie gegebenenfalls die notwendigen Änderungen vor. Nachdem Sie die Vorgabe übernommen oder einen anderen Pfad angegeben haben, bestätigen Sie wieder mit einem Klick auf Return. Das Installationsskript führt einen Test der Perl-Installation aus und gibt im Idealfall folgende Erfolgsmeldung aus: Perl seems to be installed ok Als Nächstes macht sich das Skript an die Identifikation der Linux-Variante und gibt den Entwickler und die Version aus. Mit dem nächsten Konfigurationsabschnitt konfigurieren Sie den WebminWebserver. Diese Einstellungen sind essenziell für eine funktionstüchtige Installation. Bestimmen Sie zunächst den Webserver-Port, der standardmäßig auf 10000 gesetzt ist. Wenn Sie Webmin aus der Ferne nutzen, müssen Sie gegebenenfalls einen Firewall-Port freischalten. Im nächsten Schritt geben Sie unter Login name das Standard-Log-in an. Dieses lautet standardmäßig admin. Es folgt die Eingabe des Passworts, die Sie mit einer zweiten Eingabe wiederholen müssen. Webmin kompakt 18 Webmin – der Einstieg Als Nächstes prüft das Skript, ob die Perl-SSLeay-Bibliothek installiert ist. Ist das nicht der Fall, ist SSL-Unterstützung leider nicht gegeben. In diesem Fall müssen Sie die Installation der SSL-Komponente nachholen. Es folgt ein letzter interaktiver Dialog, über den Sie bestimmen, ob Webmin automatisch beim Systemstart gestartet werden soll. Falls Sie das wollen, beantworten Sie die Frage Start Webmin at boot time einfach mit y. Sind alle Fragen beantwortet, ist das Skript wieder an der Reihe und nimmt die notwendigen Anpassungen und die Installation vor. Abschließend gibt Ihnen das Skript eine URL aus, über die die Schnittstelle aufgerufen wird, beispielsweise http://localhost.localdomain:10000/. Sind alle Einstellungen korrekt und kann der Webmin-Server ordnungsgemäß gestartet werden, können Sie sich nun über den Log-in-Dialog anmelden. Verwenden Sie dazu den oben definierten Benutzernamen samt Passwort. Der komplette Ablauf des Installationsskripts kann wie folgt aussehen: # ./setup.sh ********************************************* * Welcome to the Webmin setup script, version 1.340 * ********************************************* Webmin is a web-based interface that allows Unix-like operating systems and common Unix services to be easily administered. Installing Webmin in /root/Desktop/Download/webmin-1.340... ******************************************* Webmin uses separate directories for configuration files and log files. Unless you want to run multiple versions of Webmin at the same time you can just accept the defaults. Config file directory [/etc/webmin]: Log file directory [/var/webmin]: ******************************************* www.brain-media.de Installation 19 Webmin is written entirely in Perl. Please enter the full path to the Perl 5 interpreter on your system. Full path to perl (default /usr/bin/perl): Testing Perl ... Perl seems to be installed ok ******************************************* Operating system name: Redhat Linux Operating system version: Fedora 5 ******************************************* Webmin uses its own password protected web server to provide access to the administration programs. The setup script needs to know : - What port to run the web server on. There must not be another web server already using this port. - The login name required to access the web server. - The password required to access the web server. - If the webserver should use SSL (if your system supports it). - Whether to start webmin at boot time. Web server port (default 10000): Login name (default admin): admin Login password: Password again: The Perl SSLeay library is not installed. SSL not available. Start Webmin at boot time (y/n): y ******************************************** Webmin kompakt 20 Webmin – der Einstieg Creating web server config files.. ..done Creating access control file.. ..done Inserting path to perl into scripts.. ..done Creating start and stop scripts.. ..done Copying config files.. acl adsl-client apache at backup-config bandwidth bind8 bsdexports burner cfengine change-user cluster-copy clustercron cluster-passwd cluster-shell cluster-software clusteruseradmin cluster-usermin cluster-webmin cpan cron custom dfsadmin dhcpd dnsadmin dovecot exports fdisk fetchmail file firewall format frox fsdump grub heartbeat hpuxexports htaccess-htpasswd idmapd inetd init inittab ipfilter ipfw ipsec jabber krb5 ldap-useradmin lilo logrotate lpadmin lvm mailboxes mailcap majordomo man mon mount mysql net nis openslp pam pap passwd postfix postgresql ppp-client pptp-client pptp-server procmail proc proftpd pserver qmailadmin quota raid rbac samba sarg sendmail sentry servers sgiexports shell shorewall smart-status smf software spam squid sshd status stunnel syslog syslog-ng telnet time tunnel updown useradmin usermin vgetty webalizer webminlog webmin wuftpd xinetd zones ..done Configuring Webmin to start at boot time.. Created init script /etc/rc.d/init.d/webmin ..done Creating uninstall script /etc/webmin/uninstall.sh .. www.brain-media.de Installation ..done Changing ownership and permissions .. Chowning /etc/webmin/acl Chowning /etc/webmin/adsl-client Chowning /etc/webmin/apache Chowning /etc/webmin/at Chowning /etc/webmin/backup-config Chowning /etc/webmin/bandwidth Chowning /etc/webmin/bind8 Chowning /etc/webmin/bsdexports Chowning /etc/webmin/burner Chowning /etc/webmin/cfengine Chowning /etc/webmin/change-user Chowning /etc/webmin/cluster-copy Chowning /etc/webmin/cluster-cron Chowning /etc/webmin/cluster-passwd Chowning /etc/webmin/cluster-shell Chowning /etc/webmin/cluster-software Chowning /etc/webmin/cluster-useradmin Chowning /etc/webmin/cluster-usermin Chowning /etc/webmin/cluster-webmin Chowning /etc/webmin/cpan Chowning /etc/webmin/cron Chowning /etc/webmin/custom Chowning /etc/webmin/dfsadmin Chowning /etc/webmin/dhcpd Chowning /etc/webmin/dnsadmin Chowning /etc/webmin/dovecot Chowning /etc/webmin/exports Webmin kompakt 21 22 Webmin – der Einstieg Chowning /etc/webmin/fdisk Chowning /etc/webmin/fetchmail Chowning /etc/webmin/file Chowning /etc/webmin/firewall Chowning /etc/webmin/format Chowning /etc/webmin/frox Chowning /etc/webmin/fsdump Chowning /etc/webmin/grub Chowning /etc/webmin/heartbeat Chowning /etc/webmin/hpuxexports Chowning /etc/webmin/htaccess-htpasswd Chowning /etc/webmin/idmapd Chowning /etc/webmin/inetd Chowning /etc/webmin/init Chowning /etc/webmin/inittab Chowning /etc/webmin/ipfilter Chowning /etc/webmin/ipfw Chowning /etc/webmin/ipsec Chowning /etc/webmin/jabber Chowning /etc/webmin/krb5 Chowning /etc/webmin/ldap-useradmin Chowning /etc/webmin/lilo Chowning /etc/webmin/logrotate Chowning /etc/webmin/lpadmin Chowning /etc/webmin/lvm Chowning /etc/webmin/mailboxes Chowning /etc/webmin/mailcap Chowning /etc/webmin/majordomo Chowning /etc/webmin/man Chowning /etc/webmin/mon www.brain-media.de Installation Chowning /etc/webmin/mount Chowning /etc/webmin/mysql Chowning /etc/webmin/net Chowning /etc/webmin/nis Chowning /etc/webmin/openslp Chowning /etc/webmin/pam Chowning /etc/webmin/pap Chowning /etc/webmin/passwd Chowning /etc/webmin/postfix Chowning /etc/webmin/postgresql Chowning /etc/webmin/ppp-client Chowning /etc/webmin/pptp-client Chowning /etc/webmin/pptp-server Chowning /etc/webmin/procmail Chowning /etc/webmin/proc Chowning /etc/webmin/proftpd Chowning /etc/webmin/pserver Chowning /etc/webmin/qmailadmin Chowning /etc/webmin/quota Chowning /etc/webmin/raid Chowning /etc/webmin/rbac Chowning /etc/webmin/samba Chowning /etc/webmin/sarg Chowning /etc/webmin/sendmail Chowning /etc/webmin/sentry Chowning /etc/webmin/servers Chowning /etc/webmin/sgiexports Chowning /etc/webmin/shell Chowning /etc/webmin/shorewall Chowning /etc/webmin/smart-status Webmin kompakt 23 24 Webmin – der Einstieg Chowning /etc/webmin/smf Chowning /etc/webmin/software Chowning /etc/webmin/spam Chowning /etc/webmin/squid Chowning /etc/webmin/sshd Chowning /etc/webmin/status Chowning /etc/webmin/stunnel Chowning /etc/webmin/syslog Chowning /etc/webmin/syslog-ng Chowning /etc/webmin/telnet Chowning /etc/webmin/time Chowning /etc/webmin/tunnel Chowning /etc/webmin/updown Chowning /etc/webmin/useradmin Chowning /etc/webmin/usermin Chowning /etc/webmin/vgetty Chowning /etc/webmin/webalizer Chowning /etc/webmin/webminlog Chowning /etc/webmin/webmin Chowning /etc/webmin/wuftpd Chowning /etc/webmin/xinetd Chowning /etc/webmin/zones ..done Running postinstall scripts .. ..done Attempting to start Webmin mini web server.. Starting Webmin server in /webmin/webmin-1.270 ..done www.brain-media.de Erstes Log-in 25 ******************************************* Webmin has been installed and started successfully. Use your web browser to go to http://server:10000/ and login with the name and password you entered previously. Nun können Sie sich das erste Mal über die Webmin-Schnittstelle einloggen. Verwenden Sie als Benutzername admin und als Passwort ebenfalls admin. Herzlichen Glückwunsch! Webmin ist ordnungsgemäß installiert. Nun können Sie sich einloggen. 1.2 Erstes Log-in Nach dem Log-in präsentiert Ihnen Webmin seine typische Schnittstelle, die wir uns jetzt näher anschauen wollen. Die Schnittstelle weist folgende Komponenten auf: · Kopfzeile: Hier finden Sie das Webmin-Logo, einen Link zum FeedbackFormular und den Log-out-Verweis. Über das Webmin-Logo gelangen Sie übrigens zur Webmin-Homepage. Webmin kompakt 26 · Webmin – der Einstieg Hauptmenü: Es erlaubt den Zugriff auf die verschiedenen Konfigurationsbereiche, über die Sie auf folgende Kategorien zugreifen können: o Webmin o System o Servers o Networking o Hardware o Cluster o Others Standardmäßig wird die Webmin-Kategorie geöffnet, über die Sie beispielsweise Webmin konfigurieren. · Modul-Bereich: Unterhalb der Symbolleiste finden Sie die Einstellungen für die jeweilige Webmin-Kategorie. Man spricht auch von Webmin-Modulen. So können Sie beispielsweise über die Systemeinstellungen Benutzer und Gruppen verwalten oder unter den Netzwerkeinstellungen die Firewall konfigurieren. · Fußzeile: In der Fußzeile finden Sie schließlich die Versionsbezeichnung Ihrer Webmin-Installation, den Rechnernamen und das verwendete Betriebssystem. www.brain-media.de Webmin-Kategorien 1.3 27 Webmin-Kategorien Wenn Sie statt des Standard-Themes ein anderes verwenden, so kann es zum Teil erhebliche Unterschiede in der Präsentation der verschiedenen Komponenten geben. Wir verwenden im Folgenden das Standarddesign. Ein erster Blick auf die Webmin-Schnittstelle. Der Aufbau der verschiedenen Kategorien ist also weitgehend identisch. Das gilt übrigens auch für die Webmin-Module, um Ihnen die Navigation und Orientierung in der Webmin-Umgebung zu vereinfachen. Wenn Sie ein Webmin-Modul wie beispielsweise das Modul Sicherung von Konfigurationsdateien öffnen, so erkennen Sie sofort den Aufbau. Unterhalb der Symbolleiste werden Ihnen – abhängig vom jeweiligen Modul – die folgenden drei Verweise angeboten: · Help: Über diesen Link öffnen Sie ein Pop-up-Fenster, das Ihnen je nach Modul zusätzliche Informationen bietet. · Module Config: Sie werden es sich sicherlich schon gedacht haben: Über diesen Verweis können Sie das Modul konfigurieren. Die hierüber verfügbaren Einstellungen sind natürlich in erster Linie vom jeweiligen Modul abhängig. · Search Docs: Dieser Link führt Sie zu weiteren Dokumenten, die Ihnen bei der Arbeit mit Webmin dienlich sein können. Webmin kompakt 28 Webmin – der Einstieg Ein typisches Webmin-Modul. Unterhalb dieser drei möglichen Links finden Sie die Einstellungen des jeweiligen Menüs. An dieser Stelle sei ausdrücklich nochmals darauf hingewiesen, dass die Verfügbarkeit vom jeweiligen Modul abhängig ist. Beim Modul Sicherung von Konfigurationsdateien steht beispielsweise nur der Link Module Config, beim Modul Disk Quotas (Kategorie System) stehen alle drei Verweise zur Verfügung (siehe nachstehende Abbildung). Eine weitere Eigenschaft aller Webmin-Module: Alle besitzen den Verweis Return to index, mit dem Sie zur Index-Seite des jeweiligen Moduls zurückkehren. Befinden Sie sich in einer Modul-Konfiguration, so gelangen Sie zur zugehörigen Modulseite zurück. www.brain-media.de Deinstallation 29 Die Funktionen eines Moduls werden vom Modul bestimmt. Das Modul Disk Quotas stellt die Links Hilfe, Modulkonfiguration und Suche in Hilfe zur Verfügung. 1.4 Deinstallation Nachdem Sie nun wissen, wie man Webmin installiert und sich das erste Mal einloggt, wollen wir uns nun noch kurz der Deinstallation widmen. Wenn Sie beispielsweise eine ältere Version auf Ihrem Rechner betreiben, ist es womöglich sinnvoll, diese vor der Neuinstallation zu entfernen. Auch diese Aufgabe lässt sich dank eines speziellen Deinstallationsskripts recht einfach bewältigen. Führen Sie als Root einfach folgenden Befehl aus: /etc/webmin/uninstall.sh Womöglich müssen Sie den Pfad anpassen. Das Skript fragt sicherheitshalber noch einmal nach, ob Sie Webmin tatsächlich deinstallieren wollen. Bei der Installation werden alle Webmin-Skripte und auch die Webmin-Konfigurationsverzeichnisse von Ihrem System entfernt. Dabei gehen auch alle Webmin-spezifischen Einstellungen, die Sie mit Webmin geändert haben, beispielsweise IP-basierte Zugriffsbeschränkungen oder aber Webmin-Benutzer verloren. Änderungen an System- oder Server-Einstellungen, die Sie mit Webmin angepasst haben, bleiben natürlich erhalten. Webmin kompakt 30 1.5 Webmin – der Einstieg Sicherheit für den Webmin-Server Wenn Sie Ihr System schon sicher im Griff haben wollen, so sollten Sie zunächst dafür sorgen, dass auch Ihre Webmin-Installation ein größtmögliches Maß an Sicherheit aufweist. Mit zwei recht einfach durchzuführenden Schritten stellen Sie schon einmal sicher, dass Sie in einer sicheren Umgebung arbeiten. Dazu beschränken wir den Zugriff auf den Webmin-Server auf bestimmte IP-Adressen und aktivieren den SSL-gesicherten Zugriff. 1.5.1 Zugriffsbeschränkung auf IP-Basis Wenn Sie Webmin in einer lokalen Umgebung einsetzen, in der lediglich eine Handvoll Anwender Zugriff auf das System hat, und diese allesamt als höchst vertrauenswürdig einzuschätzen sind, so sind Fragen der Zugriffsbeschränkungen nicht relevant. Doch in der „glücklichen“ Lage ist man in der Regel nicht. Meist dürfte Ihr Server im lokalen, womöglich auch im globalen Netzwerk verfügbar sein. Am einfachsten lässt sich der Zugriff auf bestimmte IP-Adressen beschränken, die Ihr Webmin-System für administrative Aufgaben nutzen können. Einzige Voraussetzung: Der zugriffsberechtigte Rechner benötigt eine feste IPAdresse bzw. muss zu einem bestimmten Subnetz gehören. Die Zugriffsbeschränkung auf IP-Adressen-Basis. www.brain-media.de Sicherheit für den Webmin-Server 31 Die Vorgehensweise: 1 Klicken Sie in der Webmin-Kategorie auf das Modul Webmin Konfiguration. 2 In der Webmin-Konfiguration finden Sie den Eintrag IP-Zugriffskontrolle. Im zugehörigen Formular hinterlegen Sie die berechtigten IP-Adressen. 3 Aktivieren Sie die Option Zugriff nur von aufgelisteten Adressen erlauben und geben Sie die IP-Adressen in das Eingabefeld ein. Einzelne Adressen sind durch ein Komma zu trennen. Sie können auch ganze Subnetze zulassen. Sollen beispielsweise die Systeme mit den IP-Adressen 192.168.0.1 bis 192.168.0.255 Zugriff haben dürfen, so geben Sie einfach 192.168.1.0 ein. Sie können auch ganzen Domains Zugriff gewähren bzw. diesen unterbinden. Verwenden Sie dazu einfach das Sternchen nach dem Schema *.server.de. 4 Nachdem Sie Ihre Einstellungen vorgenommen haben, klicken Sie auf Speichern, um die Konfiguration zu speichern. Nachdem Sie die Änderungen vorgenommen haben, ist nur noch ein Zugriff auf Ihre Webmin-Installation über die registrierten Systeme möglich. 1.5.2 Zugriff per SSL Wird Ihr Webmin-Server in einem unsicheren Netzwerk betrieben, so sollten Sie die Verbindung zwischen dem Webmin-Webserver und dem Webbrowser per SSL sichern. Nur so können Sie sicherstellen, dass beispielsweise die Übermittlung der Benutzerkennung und des Passwortes nicht von Dritten mitgeschnitten wird. Sie können Webmin mit wenig Aufwand für das Zusammenspiel mit SSL aufrüsten. Wenn Sie die RPM-Varianten von Webmin verwenden, so erfolgt der Zugriff bereits standardmäßig per SSL, wenn auf dem Server die OpenSSL-Bibliothek und das Net::SSLeay-Perl-Modul installiert sind. Ist das bei Ihnen nicht der Fall, müssen Sie deren Installation nachholen. Die Vorgehensweise für den SSL-gesicherten Zugriff auf den Webmin-Server: 1. Installieren Sie zunächst die OpenSSL-Komponenten. Diese liegen jeder aktuellen Linux-Distribution bei und sind besonders einfach über den Paketmanager zu installieren. Stellen Sie in jedem Fall sicher, dass die Pakete openssl und openssl-devel installiert sind. 2. Installieren Sie als Nächstes das Perl-Modul Net::SSLeay. Besonders einfach ist die Installation über die Webmin-Kategorie Sonstiges. Dort finden Sie das Modul Perl-Module. Suchen Sie über CPANWebmin kompakt 32 Webmin – der Einstieg Eingabefeld die SSL-Komponente und installieren Sie diese. Nach dem Download klicken Sie einfach auf Continue with install. Den Rest erledigt Webmin automatisch. 3. Nun muss die SSL-Verschlüsselung aufseiten von Webmin aktiviert werden. Dazu wechseln Sie wieder zur Webmin-Konfiguration und öffnen das Modul SSL Encryption. Präsentiert sich Ihnen beim Öffnen der SSL-Encryption-Seite ein ähnliches Bild wie in dieser Abbildung, müssen Sie die Installation der SSL-Komponenten erst nachholen. Sind die notwendigen SSL-Komponenten installiert, können Sie über das Modul SSL-Encryption die notwendigen Einstellungen vornehmen. Dazu aktivieren Sie zunächst den Schalter Enable SSL if available mit Yes und sichern die Einstellungen mit einem Klick auf Save. Wenn Sie das erste Mal mit dem Browser auf den Webmin-Server zugreifen, gibt dieser eine Warnung, dass das Zertifikat nicht korrekt sei. Diese Meldung können Sie dieses Mal – ausnahmsweise – ignorieren. Später müssen Sie noch ein gültiges Zertifikat anfordern. Dazu gleich mehr. In Zukunft wird immer eine sichere Verbindung zwischen Server und Client aufgebaut. www.brain-media.de Sicherheit für den Webmin-Server 33 Wechseln Sie nun wieder zum SSL-Encryption-Modul. Dort füllen Sie den zweiten Teil des Formulars aus. Konkret sind anzugeben: · Servername · E-Mail-Adresse · Abteilung · Organisation/Firma · Bundesland · Land Lassen Sie dasFeld Write key to file frei und setzen Sie die Option Use new key immediately auf Yes. Klicken Sie dann auf den Button Create Now, um einen neuen Schlüssel und ein eigenes Zertifikat zu erstellen. Diese werden standardmäßig nach /etc/webmin/miniverv.pem geschrieben und automatisch aktiviert. Beim nächsten Browser-Zugriff müssen Sie womöglich nochmals das Zertifikat bestätigen. Damit ist auch dieses Problem gelöst. Nun müssen wir nur noch das Problem lösen, dass wir bislang noch kein gültiges Zertifikat für die Website besitzen. Das kann mithilfe von OpenSSL und einer Zertifikat-Autorisierung erstellt werden. Einziger Haken: Die Dienstleistung eines registrierten Ausstellers von Zertifikaten kostet Geld. Wenn Sie ein „echtes“ gültiges Zertifikat nutzen wollen, so führen Sie folgende Schritte aus. Führen Sie auf der Shell folgende Befehl aus: openssl genrsa –out Dieser Befehl erzeugt die Datei key.pem. Das ist Ihr privater Schlüssel. Dann führen Sie folgenden Befehl aus: openssl req –new –key key.pem –out req.pem. Der voranstehende Befehl fragt nach einer Bezeichnung für Ihre Umgebung. Hier geben Sie die URL Ihrer Site ein. Aus dieser Eingabe erzeugt die OpenSSLFunktion die Datei req.pem. Dabei handelt es sich um eine Request-Anfrage. Schicken Sie die Datei req.pem an eine Autorisierungsstelle. Sie erhalten die Datei cert.pem zurück, die Sie dann nun noch in den SSL-Encryption-Einstellungen von Webmin kompakt 34 Webmin – der Einstieg Webmin angeben müssen. Abschließend speichern Sie die Einstellungen mit einem Klick auf Save. Bis hierher haben Sie eine vollwertige Webmin-Installation erzeugt, die zudem ein Mindestmaß an Sicherheit für den Praxiseinsatz bietet. Nun können wir uns an die eigentliche Arbeit mit dem Admin-Werkzeug machen. www.brain-media.de Sprache anpassen 35 2 Webmin-Module Zunächst befassen wir uns mit den Webmin-Modulen. Hier finden Sie Webminspezifische Funktionen, mit denen Sie Ihre Umgebung an Ihre Bedürfnisse anpassen können. Um Ihnen die Arbeit mit Webmin so einfach wie möglich zu machen, stellen wir zunächst die Sprachversion um. Dazu folgen Sie dem Link Change Language and Theme. Das Anpassen der Sprachversion. 2.1 Sprache anpassen Über das zugehörige Formular können Sie drei Einstellungen bearbeiten: · Webmin UI language. Dies ist die Sprache der Web-Schnittstelle. Wir wollen die Menüführung von der Standardsprache Englisch (Global language (English)) ins Deutsche umstellen. Dazu wählen Sie aus dem Auswahlmenü Personal choice … den Eintrag German (DE). Webmin kompakt Webmin-Module 36 · Webmin UI theme: Über dieses Auswahlmenü können Sie das Design der Webmin-Schnittstelle ändern, das durch die Vorlage MSC.Linux Theme bestimmt ist. · Webmin login password: Außerdem können Sie über das letzte Menü das Passwort für ein Einloggen ändern. Webmin zeigt Ihre Änderungen an. Um die geänderte Einstellung zu übernehmen, klicken Sie auf Make Changes. Wenn Sie nun auf den Link Return to index klicken, landen Sie wieder in der Webmin-Modul-Übersicht und werden feststellen, dass die Menüführung nun eingedeutscht ist. Neben der Anpassung der Sprache und des Designs stehen Ihnen über die Webmin-Kategorie folgende Funktionen zur Verfügung: · Sicherung von Konfigurationsdateien · Usermin-Konfiguration · Webmin-Benutzer · Webmin-Ereignisanzeige · Webmin-Konfiguration · Webmin-Server www.brain-media.de Konfigurationsdateien sichern 37 Im Folgenden schauen wir uns die einzelnen Funktionen genauer an. 2.2 Konfigurationsdateien sichern Eine Besonderheit des Webmin-Moduls ist zweifelsohne die Funktion für das Sichern unterschiedlichster Konfigurationsdateien. Das zugehörige Formular erlaubt Ihnen drei Aktionen: · Das manuelle Sichern von bestimmten Konfigurationsdateien. · Das Zurückspielen von gesicherten Konfigurationsdateien. · Das Erstellen von zeitgesteuerten Sicherungsjobs. Die Back-up-Funktion des Webmin-Moduls. Die Handhabung der manuellen Sicherung ist recht einfach: Markieren Sie zunächst auf dem Register Backup now bzw. Sichert Konfigurationen jetzt die ModuWebmin kompakt 38 Webmin-Module le, die Sie sichern wollen. Um mehrere Module zu markieren, halten Sie die StrgTaste gedrückt und markieren der Reihe nach die gewünschten Module. Sie können beispielsweise die Konfiguration des Apache-Webservers, Benutzer und Gruppen, die Boot-Konfiguration oder auch Ihre VPN-Konfiguration sichern. Als Nächstes bestimmen Sie das Sicherungsziel. Sie können die Konfigurationsdateien in einer lokalen Datei, auf einem FTP-Server, einem SSH-Server oder im Browser sichern. Wichtig ist, dass Sie in das jeweilige Eingabefeld eine Bezeichnung der Datei eingeben. Es muss sich um ein TAR-Archiv handeln. Welche Bezeichnung Sie verwenden, bleibt natürlich Ihnen überlassen. In der Praxis hat es sich bewährt, wenn Sie einen Zeit- und Datumsstempel sowie den Zweck und den Ausführenden in der Bezeichnung berücksichtigen. Ein Beispiel: komplettsicherung01_06_06_sysadmin.tar Sie können außerdem weitere Konfigurationsdateien in das Back-up einbinden. Die Sicherungsfunktion kopiert standardmäßig alle Server-Konfigurationsdateien mit. Sie können über die gleichnamige Option auch alle Konfigurationsdateien für die Webmin-Module sichern. Wenn Sie weitere Dateien einbinden wollen, so führen Sie diese in dem Textfeld Andere ausgewählte Dateien samt Pfad auf. Gelingt die Sicherung in der angegebenen Datei, so gibt Webmin eine entsprechende Erfolgsmeldung der Sicherungskonfiguration aus. Diese kann beispielsweise wie folgt aussehen: Starte Backup der Modulkonfigurationsdateien nach /root/sicher/Sicherung1.tar ... .. fertig. Das gesamte Backup beträgt 24 kB mit insgesamt 19 Dateien. Wenn Sie sich für die Variante Download im Browser entscheiden, öffnet Ihr Browser den Öffnen-von-Dialog, über den Sie eine geeignete Anwendung für das Öffnen des Archivs bzw. für das Speichern der Datei auswählen können. Den eigentlichen Sicherungsvorgang leiten Sie durch einen Klick auf Jetzt sichern ein. www.brain-media.de Konfigurationsdateien sichern 39 2.2.1 Konfigurationsdateien wiederherstellen Ähnlich einfach ist es, das Wiederherstellen von gesicherten Konfigurationsdateien durchzuführen: Zunächst wählen Sie die Modulkonfigurationen aus, die Sie zurückschreiben wollen. Dann bestimmen Sie den Speicherort der Sicherung. Wichtig ist, dass Sie die Option Änderungen anwenden aktivieren, damit diese greifen können. Das Wiederherstellen leiten Sie durch einen Klick auf die Schaltfläche Jetzt zurückschreiben ein. Auch hier zeigt Ihnen Webmin eine Erfolgs- bzw. eine Misserfolgsmeldung nach der Ausführung an. Das Wiederherstellen einer gesicherten Konfigurationsdatei. Wie bereits erwähnt, erlaubt das Sicherungsmodul auch die Durchführung von zeitgesteuerten Back-ups. Oberhalb der beiden zuvor beschriebenen Sicherungsund Wiederherstellungsfunktionen ist Platz für eine Liste der eingerichteten Sicherung. Bei einer Erstinstallation zeigt Ihnen Webmin an, dass noch keine Sicherungen existiert: Es wurden bisher keine zeitgesteuerten Back-ups eingerichtet. Um eine automatische Sicherung einzufügen, klicken Sie auf den Link Ein neues zeitgesteuertes Backup hinzufügen. In dem zugehörigen Formular bestimmen Sie Webmin kompakt Webmin-Module 40 zunächst die oben beschriebenen Sicherungseigenschaften. Zusätzlich stehen Ihnen zwei E-Mail-Funktionen und die zeitliche Steuerung zur Verfügung. In das Eingabefeld Sende eine E-Mail mit dem Ergebnis an geben Sie die E-Mail-Adresse an, an die die Details des Sicherungsvorgangs gesendet werden sollen. Sie können über Wann soll die E-Mail versandt werden bestimmen, ob die Meldung immer oder nur beim Auftreten von Fehlern verwendet werden soll. Es folgt der umfangreiche Konfigurationsbereich für die stündliche, tägliche, wöchentliche etc. Sicherung. Die Konfiguration ist wirklich kinderleicht. Mit einem Klick auf Erstellen speichern Sie die benutzerdefinierte Sicherung. Die Konfiguration der benutzerdefinierten Sicherung. Das Back-up-Modul erzeugt dann einen ersten Tabelleneintrag mit drei Informationen: Sicherungsziel, Webmin-Module und Informationen zur Zeitsteuerung. 2.2.2 Modulkonfiguration Die Back-up-Modul-Konfiguration bietet lediglich zwei Einstellungen, die Sie anpassen können: · strftime der Backupziele?: Hier haben Sie die Wahl zwischen Ja und Nein. Dazu gleich mehr. www.brain-media.de Konfigurationsdateien sichern · 41 From:-E-Mail-Adresse für E-Mails: Hier können Sie den Absender der E-Mails bestimmen, der die Konfigurationsdateien verschickt. Die Standardvorgabe lautet webmin@hostname. Sie können im danebenliegenden Eingabefeld benutzerdefinierte Adressen bestimmen. Die Modul-Konfiguration. Die PHP-Funktion strftime dient der Formatierung einer Zeit-/Datumsangabe nach den lokalen Einstellungen. Wenn Sie diese Option auf Yes setzen, so werden Codes wie %d, %m, %Y und %u für das Erstellen von Dateinamen verwendet. Der Vorteil ist klar: Sie müssen sich nicht um die manuelle Bezeichnung kümmern, sondern überlassen es Webmin. Sie können folgende Formatierungsstrings verwenden: · %a: abgekürzter Name des Wochentags · %A: ausgeschriebener Name des Wochentags · %b: abgekürzter Name des Monats · %B: ausgeschriebener Name des Monats · %c: wiedergabewerte für Datum und Zeit · %C: Jahrhundert (Jahr geteilt durch 100, gekürzt auf Integer, Wertebereich 00 bis 99) · %d: Tag des Monats als Zahl (Bereich 01 bis 31) · %D: so wie %m/%d/%y · %e: Tag des Monats als Dezimalwert, einstelligen Werten wird ein Leerzeichen vorangestellt (Wertebereich ´ 1´ bis ´31´) · %g: wie %G, aber ohne Jahrhundert Webmin kompakt Webmin-Module 42 · %G: das vierstellige Jahr entsprechend der ISO-Wochennummer (siehe %V) · %h: so wie %b · %H: Stunde als Zahl im 24-Stunden-Format (Bereich 00 bis 23) · %I: Stunde als Zahl im 12-Stunden-Format (Bereich 01 bis 12) · %j: Tag des Jahres als Zahl (Bereich 001 bis 366) · %m: Monat als Zahl (Bereich 01 bis 12) · %M: Minute als Dezimal-Wert · %n: neue Zeile Für weitere Details zu dieser Funktion sei auf PHP-Handbücher verwiesen. Die Funktionen der Webmin-Konfiguration. www.brain-media.de Webmin-Konfiguration 2.3 43 Webmin-Konfiguration Für die Konfiguration Ihrer Webmin-Umgebung steht Ihnen das WebminKonfigurationsmodul zur Verfügung. Bei Webmin 1.340 finden Sie dort 22 Konfigurationsbereiche. In diesen Einstellungen können Sie beispielsweise den Port des Webmin-Servers ändern, neue Module installieren, die Schnittstelle anpassen und vieles mehr. Unterhalb der verschiedenen Icons finden Sie drei weitere Schaltflächen: · Starte Webmin beim Booten: Hier haben Sie die Wahl zwischen Ja und Nein. Verwenden Sie die Option Ja, um Webmin bereits beim Booten zu starten. Wenn Webmin derzeit nicht für den Start beim Booten eingerichtet ist und Sie diese Option aktivieren, wird ein neues Init-Script erstellt. · Webmin neu starten: Klicken Sie auf diesen Button, um Webmin neu zu starten. Dies ist meistens dann erforderlich, wenn Sie Ihre Version von Perl auf eine höhere Version umstellen. · Betriebssysteminfo: Wenn Sie auf diesen Button klicken, werden der Name und die Version Ihres Betriebssystems und die Version von Perl an die Webmin-Entwickler verschickt. Diese Daten werden laut Angaben der Entwickler streng anonym behandelt und beinhalten wertvolle Informationen für welche Betriebssysteme die Webmin-Entwicklung primär fokussiert werden sollte. Drei der Funktionen der Webmin-Konfiguration haben wir bereits kennengelernt: IP-Zugriffskontrolle, Sprache und SSL-Verschlüsselung. Widmen wir uns den anderen Anpassungsfunktionen. 2.3.1 Anschluss und Adresse Über den Verweis Anschluss und Adresse passen Sie die Bindung der IP-Adresse und den Port des Webmin-Webservers an. Webmin kompakt 44 Webmin-Module Die Konfiguration des Webmin-Webservers. Wenn Sie das Webmin-Installationsskript für die Installation und die Standardeinstellungen beibehalten haben, hört Ihre Webmin-Installation auf den Port 10000 – und zwar auf allen IP-Adressen Ihres Systems. Oftmals ist es aber wünschenswert, dass Sie diese Einstellung anpassen, weil sich Ihr System beispielsweise hinter einer Firewall befindet. Wenn Ihr Webmin-System mit mehreren Netzwerkadaptern ausgestattet ist, können Sie Webmin auch so konfigurieren, dass es nur Verbindungen aus dem LAN entgegennimmt. Um die Bindung und den Port zu ändern, gehen Sie wie folgt vor: 1. Soll das System nur über eine bestimmte IP-Adresse ansprechbar sein, so wählen Sie aus dem Auswahlmenü Binde an IP-Adresse die Option Nur diese Adresse und geben in das darunterliegende Eingabefeld die Adresse ein. 2. Sie können in dem darunterliegenden Feld eine weitere feste IP-Adresse bestimmen. 3. Den Port bestimmen Sie über Horche auf Port … . 4. Schließlich können Sie die Option Auf Broadcasts via UDP achten deaktivieren und den Hostnamen des Webmin-Servers manuell über das Eingabefeld anpassen. 5. Wenn Sie Änderungen vornehmen, klicken Sie auf Speichern. Ihr Browser wird an die neue Adresse bzw. den neuen Port umgeleitet und Sie müssen sich erneut einloggen. www.brain-media.de Webmin-Konfiguration 45 2.3.2 Protokollierung Über den Verweis Protokollierung greifen Sie auf die Logging-Funktionen von Webmin zu. Sie können Webmin so konfigurieren, dass das System eine Protokolldatei für Seitenanfragen im Standard-CLF-Protokolldateiformat schreibt. Wenn die Protokollierung aktiviert ist, können Sie wählen, ob IP-Adressen oder HostNamen aufgezeichnet werden sollen und wie oft die Protokolldatei gelöscht werden soll. Wenn die Protokollierung aktiviert ist, schreibt Webmin das Protokoll in /var/webmin/miniserv.log. Bei aktiver Protokollierung kann Webmin auch ein detaillierteres Protokoll in der Datei /var/webmin/webmin.log speichern. Dieses Protokoll kann mit der WebminEreignisanzeige betrachtet und analysiert werden, um die Aktivitäten aller Webmin-Benutzer zu beobachten. Die Konfiguration der Webmin-Protokollfunktion. Webmin kompakt 46 Webmin-Module Die Protokollierung ist standardmäßig aktiviert. Sie sollten sie nur in Ausnahmefällen deaktivieren. Darüber hinaus können Sie verschiedene Anpassungen vornehmen. Wenn Sie wollen, dass die Hostnamen der Clients anstelle deren IPAdressen in die Protokolldateien geschrieben werden, aktivieren Sie die Option Aufgelöste Host-Namen protokollieren. Allerdings sollten Sie beachten, dass das Auflösen unter Umständen längere Zeit dauert und in der Regel eigentlich nur mehr Probleme schafft, als es löst. Sind Sie an sehr detaillierten Aufzeichnungen interessiert, so aktivieren Sie die Option Benutze ein kombiniertes Logformat. Dann werden auch Referrer und UserAgents der Browser aufgezeichnet. Diesen Schalter sollten Sie nur dann aktivieren, wenn die zusätzlichen Informationen tatsächlich für Sie von Interesse sind. Damit die Protokolldateien nicht zu fett werden, löscht Webmin seine Protokolldateien standardmäßig alle 168 Stunden. Diesen Wert können Sie über das zugehörige Eingabefeld beliebig anpassen. Die Protokollfunktion erlaubt Ihnen die benutzerbezogene Aufzeichnung. Standardmäßig werden die Aktionen aller Benutzer aufgezeichnet (Ereignisse aller Benutzer protokollieren). Wenn Sie die Aufzeichnung beschränken wollen, aktivieren Sie die Option Nur Ereignisse dieses Benutzers und wählen Sie den Benutzer aus. Haben Sie noch keine weiteren Webmin-Benutzer eingerichtet, finden Sie lediglich den Admin-Benutzer im Auswahlmenü vor. Ähnlich wie bei den Benutzern lässt sich die Protokollierung auf bestimmte Module beschränken. Lassen Sie sich dabei nicht von der Bezeichnung Nur Ereignisse dieses Moduls irritieren, denn Sie können die Konfiguration mithilfe der Strg-Taste auf mehrere Module anwenden (das gilt übrigens auch auf die Auswahl der Benutzer). Schließlich können Sie Dateiänderungen jedes Ereignisses protokollieren, alle Änderungen an Dateien für späteres Rückgängigmachen aufzeichnen und die Dateiberechtigung für Logdateien von der Standardeinstellung ändern. Sie können die Protokolldateien über die sogenannte Webmin-Ereignisanzeige einsehen, die ebenfalls über die Webmin-Kategorie verfügbar ist. Mit der Anzeige können Sie gezielt Ereignisse auf dem Webmin-System anzeigen. So finden Sie beispielsweise schnell heraus, wer welche Änderungen vorgenommen hat (vorausgesetzt, es gibt mehrere Webmin-Administratoren). 2.3.3 Proxy-Server und Downloads Eine Vielzahl von Webmin-Modulen ist dazu da, um Dateien per FTP, HTTP oder HTTPS auf das lokale System zu übertragen. Wenn Ihr Webmin-Host sich hinter www.brain-media.de Webmin-Konfiguration 47 einer Firewall befindet, kann es sein, dass Sie einen Proxy-Server zum Zugriff auf Web- und FTP-Seiten verwenden müssen. Einige Module, wie z. B. das Modul Software-Pakete, verwenden diese Proxiys, wenn Sie Dateien oder Programme herunterladen. Die dafür notwendigen Einstellungen sind über das Modul Proxy-Server und Download vorzunehmen. Wenn Sie einen Proxy-Server nutzen wollen, aktivieren Sie zunächst den zugehörigen Schalter und geben dann in das danebenliegende Feld dessen Adresse ein. Verwenden Sie dazu folgendes Schema: http://www.proxy_server.de:Port. Entsprechend gehen Sie bei einem FTP-Server vor. Sie können die Verwendung eines Proxy auch ausschließen. Außerdem können Sie eine Kennung für den Zugriff auf den Proxy-Server hinterlegen – sofern eine solche benötigt wird. Die Konfiguration der Proxy-Server. Auf dem Register Downloading finden Sie die Einstellungen für die DownloadSites. Was aber hat es damit auf sich? Diese sind dann von Bedeutung, wenn Webmin eine Datei von einer SourceForge-URL herunterlädt. Für diesen Fall können Sie über dieses Formular bestimmen, welcher Download-Mirror automatisch genutzt wird. Webmin kompakt Webmin-Module 48 Die Download-Einstellungen. Die Einstellungen für die Download-Sites im Einzelnen (die Webschnittstelle ist leider nicht durchgängig deutschsprachig): · Standard OSDN-Spiegel für Downloads: Hier wählen Sie den Download-Server aus. Alternativ können Sie einen eigenen Server angeben. · Cache downloaded files?: Hier legen Sie fest, ob Download-Dateien lokal zwischengespeichert werden. Standardmäßig ist das nicht der Fall. Wenn Sie einen Cache verwenden wollen, bestimmen Sie über das Auswahlmenü seine Größe. Das Einführen eines Caches macht eigentlich nur in Umgebungen Sinn, in denen häufig Dateien übertragen werden. · Maximum time to cache files: In diesem Eingabenfeld bestimmen Sie die maximale Dauer, die Dateien zwischengespeichert werden. · Do caching in modules: Schließlich können Sie festlegen, wo Dateien gecachet werden und wo nicht. Über die Schaltfläche Speichern übernehmen Sie die Einstellungen und gelangen wieder zur Webmin-Konfiguration zurück. www.brain-media.de Webmin-Konfiguration 49 2.3.4 Benutzerschnittstelle Über das Formular Benutzerschnittstelle können Sie die Optionen für die Benutzerschnittstelle bearbeiten, die von allen Modulen verwendet werden sollen. Jede Farbe wird mit dem RGB-System definiert, wobei jeder Wert eine hexadezimale Zahl zwischen 00 und ff ist. Die Konfiguration der Benutzerschnittstelle. Im oberen Formularbereich können Sie beispielsweise die Farbe für den Seitenhintergrund, normalen Text, den Tabellenhintergrund, die Tabellenüberschrift und die Farbe des Linktexts bestimmen. Im unteren Bereich finden Sie Einstellungen, mit denen Sie die Größe von verschiedenen Pop-up-Fenstern bestimmen. So können Sie beispielsweise festlegen, wie groß (in Pixeln) die Datei- und Datumsauswahldialoge eingeblendet werden. Webmin kompakt Webmin-Module 50 2.3.5 Webmin-Module Über den Link Webmin-Module steht Ihnen die Modulverwaltung zur Verfügung. Das zugehörige Formular dient in erster Linie dazu, neue Module zu installieren, Module zu klonen, zu löschen und zu exportieren. Module sind typischerweise WBM-Dateien, die über die Webmin-Website zum Download bereitstehen. Über die Modulübersicht der Webmin-Homepage (http://webadminmodules.sourceforge.net) stehen weit über 300 Erweiterungen zum Download bereit. WBM-Dateien können eine oder auch mehrere Module enthalten. Diese Erweiterungen können auch als RPM-Pakete installiert werden. Die Installation eines neuen Moduls. Auf dem Register Install bietet Ihnen Webmin verschiedene Installationsarten an: · Von lokaler Datei: In diesem Eingabefeld bestimmen Sie den Speicherort des Moduls. Über die Schaltfläche am rechten Ende steht Ihnen der Auswahldialog zur Verfügung, mit dem Sie die Moduldatei suchen können. www.brain-media.de Webmin-Konfiguration 51 · Von heraufgeladener Datei: Befindet sich die Datei ebenfalls auf dem lokalen System und wird der Browser ausgeführt, so greifen Sie zu dieser Option. · Von FTP- oder HTTP-URL: Sie können das Modul auch von einem FTP- oder Webserver installieren. Hier geben Sie die URL des Moduls an. · Standardmodul von www.webmin.com: Dieser Link führt Sie zur Übersicht der Webmin-Standardmodule (www.webmin.com/standard.html). Folgen Sie diesem Link, wenn Sie ein Standardmodul aus der WebminInstallation entfernt haben und es neu installieren wollen. · Drittanbietermodul von: Hier bestimmen Sie das Modul eines Drittanbieters. Sie können zudem die Option Modulabhängigkeiten beim Installieren ignorieren aktivieren. Das kann aber zur Folge haben, dass ein installiertes Modul womöglich nicht korrekt oder nur unzureichend funktioniert. Außerdem sollten Sie die Modulverwaltung dazu verwenden, um den Zugriff auf das Modul zu definieren. Im Textfeld Gewähre Zugriff nur für Benutzer und Gruppen geben Sie durch Kommata getrennt die Benutzer an. Standardmäßig gewährt Webmin nur dem aktuell eingeloggten Benutzern Nutzungsrechte. Wenn Sie allen Benutzer die Nutzung erlauben wollen, aktivieren Sie die Option Gewähre allen Webmin-Benutzern Zugriff. Die Installation leiten Sie mit einem Klick auf Modul von Datei installieren ein. Webmin gibt je nachdem, ob das Modul bereits installiert ist oder nicht, eine Erfolgsmeldung aus. Ein Beispiel, wenn das Modul bereits vorhanden ist: Die folgenden Module wurden erfolgreich installiert und zu Ihrer Zugriffskontrollliste hinzugefügt: Bandbreitenmessung (Netzwerk-Traffic) in /opt/webmin1.340/bandwidth (161 kB) Hinweis Die Installation von Modulen können Sie auch auf Konsolenebene durchführen. Sie finden das Skript im Webmin-Root-Verzeichnis. Sie müssen bei der Ausführung die Modulbezeichnung als Parameter angeben. Das Skript trägt die Bezeichnung install-module.pl. Webmin kompakt 52 Webmin-Module Gelegentlich ist es sinnvoll, dass man ein Webmin-Modul für weitere Konfigurationen nutzen kann. So können Sie unterschiedliche Konfigurationen für verschiedene Aufgaben oder zu Testzwecken erzeugen. Das Klonen eines Moduls. Das alles ist mit der Klon-Funktion kein Problem. Wenn Sie mehr als eine Kopie desselben Moduls mit unterschiedlichen Konfigurationen erstellen wollen, können Sie mit der Modulverwaltung ein existierendes Modul klonen. Der Klon erhält eine neue Bezeichnung, eine eigene Modulkonfiguration und neue Zugriffskontrollen. Außerdem kann er für andere Benutzer verfügbar gemacht werden. Das Klonen ist einfach: Aus dem Auswahlmenü Zu klonendes Modul wählen Sie das zu doppelnde Modul aus, weisen diesem unter Name des geklonten Moduls eine Bezeichnung zu. Unter Zuweisen zu Kategorie legen Sie fest, welcher Kategorie er zugeordnet werden soll. Außerdem können Sie die Konfiguration zurücksetzen, damit diese mit der Standardkonfiguration beginnt. Mit der Klonfunktion können Sie mit wenig Aufwand eine neue MailserverKonfiguration, unterschiedliche Gruppen und Benutzer mit verschiedenen Einstellungen etc. erzeugen. Wie Sie diese Funktionalität nutzen, bleibt Ihnen überlassen. Für das Testen von unterschiedlichen Konfigurationen eignet es sich hervorragend. www.brain-media.de Webmin-Konfiguration 53 Das Löschen von nicht benötigten Modulen. Sie können sich die Systemadministration und den Umgang mit Webmin deutlich vereinfachen, wenn Sie sich Modulen oder Klonen entledigen, zu denen entweder keine Anwendung installiert ist oder die Sie nicht verwenden. Wichtig dabei: Wenn ein Modul mit Klonen gelöscht wird, werden die Klone ebenfalls entfernt. Wenn ein Modul entfernt wurde, muss es erst neu installiert werden, bevor Sie es wieder benutzen können. Standardmäßig kann ein Modul nicht gelöscht werden, wenn andere Module davon abhängen. Die Handhabung der Löschfunktion ist einfach: Markieren Sie die nicht mehr benötigten und klicken Sie auf die Schaltfläche Gewählte Module löschen. Die Option Ignoriere Modulabhängigkeiten beim Löschen sollten Sie nicht aktivieren, da hier die Abhängigkeiten beim Entfernen unberücksichtigt bleiben und abhängige Module in ihrer Funktionstüchtigkeit eingeschränkt werden können. Wenn Sie ein oder mehrere Module auf anderen Webmin-Systemen installieren wollen, so ist auch das kein Problem. Dazu verwenden Sie die Exportfunktion. Mit dieser können Sie installierte Module unter Benutzung des Exportformulars als wbm.gz exportieren. Dazu bestimmen Sie die Module, die Sie exportieren wollen. Außerdem legen Sie fest, ob die Datei im Browser heruntergeladen werden oder auf einen Server übertragen werden soll. Mit einem Klick auf Exportiere ausgewählte Module leiten Sie den Export ein. Webmin kompakt 54 Webmin-Module 2.3.6 Das Betriebssystem und seine Umgebung Da sich Webmin – abhängig von dem von Ihnen verwendeten Betriebssystem – unterschiedlich verhält, sollten Sie die Betriebssystemeigenschaften auf ihre Korrektheit überprüfen. Das Betriebssystem wird bei der Installation identifiziert. Sollte hier allerdings etwas nicht richtig funktioniert haben, müssen Sie selbst Hand anlegen. Auch wenn Sie ein Update Ihrer Umgebung vornehmen, wird das von Webmin nicht mehr berücksichtigt oder gar korrigiert. Die Betriebssysteminformationen. Um diese Einstellungen zu prüfen, folgen Sie dem Link Betriebssystem und Betriebsumgebung. Dort werden das Betriebssystem und die Version angezeigt. Sie können außerdem den Suchpfad ändern, der von Webmin beim Ausführen von Programmen benutzt wird, und den Pfad der freigegebenen Bibliotheken anpassen, der an Programme gegeben wird. Was hat es aber mit dem Programmsuchpfad und den Umgebungsvariablen auf sich? Wenn Sie den Befehl ls ausführen, so wird durch die PATHUmgebungsvariable bestimmt, in welchen Verzeichnissen die Ausführbaren gesucht werden. Auch Webmin nutzt diese Einstellungen. Mit dem Programmsuchpfad bestimmen Sie, welche Verzeichnisse genutzt werden. Ähnlich verhält es sich mit Bibliotheken. Standardmäßig definiert die Umgebungsvariable LD_LIBRARY_PATH, wo nach Bibliotheken gesucht werden soll. Wenn www.brain-media.de Webmin-Konfiguration 55 Sie weitere Verzeichnisse nutzen wollen, geben Sie diese in dem dafür vorgesehenen Textfeld an. Außerdem können Sie eigene Umgebungsvariablen einführen. 2.3.7 Sprache anpassen Das Modul Sprache haben wir bereits kennengelernt. Hier können Sie die Sprache der Webmin-Schnittstelle anpassen. Meist vereinfacht sich der Einsatz, wenn Sie die Schnittstelle auf eine deutsche Sprachführung umschalten. 2.3.8 Indexseiten Sie können nicht nur die Sprache, sondern auch die allgemeine Darstellung der Webmin-Schnittstelle anpassen. Hierfür stehen Ihnen die Funktionen der Indexseitenoptionen zur Verfügung. Die Indexseitenoptionen. Mit Anzahl der Spalten legen Sie fest, wie viele Icons auf einer Indexseite nebeneinander platziert werden. Standardmäßig finden Sie vier Icons. Wenn Sie mit einer hohen Monitorauflösung arbeiten, können Sie den Wert gegebenenfalls höher setzen. Webmin kompakt Webmin-Module 56 Standardmäßig werden die Module in Kategorien zusammengefasst, um die ganze Administration übersichtlich zu halten. Diese Standardeinstellung sollten Sie möglichst beibehalten. Die weiteren Einstellungen: · Standard-Kategorie: Über das Auswahlmenü bestimmen Sie, welche Kategorie beim Einloggen standardmäßig geöffnet wird. · Zeige Version, Hostname und OS? Mit dieser Funktion können Sie das Einblenden der Webmin-Version, des Hostnamens und des Betriebssystems ein- bzw. ausblenden. · Direkt zum Modul gehen, wenn Benutzer nur eines hat? Hat ein Benutzer lediglich Zugriff auf ein Modul, so wird dieses direkt geöffnet. · Nach der Anmeldung gehe immer zum Modul: Über dieses Auswahlmenü legen Sie das Standardmenü fest, das beim Einloggen geöffnet wird. 2.3.9 Webmin aktualisieren Dank der unermüdlichen Arbeit von Jamie Cameron wird Webmin kontinuierlich weiterentwickelt, weiter verbessert und mehr oder minder häufig aktualisiert. Über den Link Webmin aktualisieren können Sie die gesamte Webmin-Installation auf den neuesten Stand bringen. Für die Aktualisierung können Sie eine lokale Datei, eine hochgeladene Datei oder einfach die letzte Version von der Webmin-Homepage installieren. Wie bei einer manuellen Aktualisierung werden alle Einstellungen und Module Dritter beibehalten. Dazu stehen Ihnen vier Formularbereiche zur Verfügung. Der Erste trägt die Bezeichnung Webmin aktualisieren. Hier bestimmen Sie die Installationsquelle. Sie haben dabei die Wahl zwischen folgenden Optionen: · Von lokaler Datei · Von heraufgeladener Datei · Von einer FTP- oder HTTP-URL · Letzte Version von www.webmin.com www.brain-media.de Webmin-Konfiguration 57 Der Installationsdialog stellt Ihnen eine Handvoll weiterer Optionen zur Auswahl. Wichtig ist, dass Sie die Option Überprüfe die GnuPG-Signatur des zu installierenden Paketes? aktiviert lassen. Die Einstellungen für die Webmin-Aktualisierung. Bei der Aktualisierung Ihrer Webmin-Installation werden neue Module automatisch einem oder mehreren Benutzern zugeordnet und für die Nutzung freigegeben. Mit dem Formular Zuordnung neuer Module können Sie diese Einstellung ändern und neue Module bestimmten Benutzern zuordnen. Es folgen zwei weitere Formulare für die Konfiguration der WebminAktualisierung. Das Formular Aktualisiere Module jetzt erlaubt Ihnen die Module Ihrer Installation (also nicht Webmin selbst) auf den neuesten Stand zu bringen. Mit Modul-Update werden meist funktionale Schwächen oder Sicherheitslücken geschlossen. Dies wird die aktuell installierten Module abgleichen mit den verfügbaren Update-Modulen und diese optional herunterladen und installieren. Die Modul-Aktualisierung führen Sie am einfachsten durch, indem Sie die Option Aktualisiere von www.webmin.com aktivieren und dann auf die Schaltfläche Aktualisiere Module klicken. Um den Rest kümmert sich Webmin. Dabei gibt Webmin entsprechende Hinweise aus, welche Module erneuert werden und warum dies erforderlich ist: Webmin-Module werden aktualisiert ... Update notwendig für Modul mailboxes auf Version 1.340. Webmin kompakt 58 Webmin-Module Löst folgendes Problem: When a user is restricted to only a subset of mailboxes and the system has more than 200 users, no users appear on the module's main page. Update notwendig für Modul mysql auf Version 1.340. Löst folgendes Problem: When attempting to backup a MySQL database as a non-root user, the following error appears: Access denied for user 'username'@'localhost' to database 'mysql' Es kommt noch besser: Sie können die Aktualisierung automatisieren und vollständig Webmin überlassen. Dazu konfigurieren Sie das Formular Aktualisiere Webmin nach Zeitplan. Auch wenn diese Automatisierung sehr nützlich ist, sollten Sie diese Funktion mit Bedacht einsetzen, da sie Angreifern möglicherweise erlaubt Ihr System zu übernehmen, wenn der Update-Server kompromittiert wurde. Die automatische Aktualisierung Ihrer Webmin-Installation. www.brain-media.de Webmin-Konfiguration 59 Damit Sie sich nicht weiter um die Aktualisierung kümmern müssen, aktivieren Sie zunächst die Option Klicken Sie hier, um eine Aktualisierung mit CRON zu aktivieren. Als Quelle sollten Sie www.webmin.com beibehalten. Stellt Ihnen Ihr Provider oder ein Netzwerkadministrator einen speziellen Download-Service zur Verfügung, geben Sie die URL in dem Textfeld Aktualisiere aus anderer Quelle ein. Bestimmen Sie außerdem den Zeitpunkt und das Intervall für die Aktualisierung. Es empfiehlt sich außerdem, eine E-Mail-Adresse zu hinterlegen, an die ein Bericht des Updates geschickt wird. Der Automatismus unterstützt auch den passwortgeschützten Zugriff auf den Update-Server. Geben Sie dazu einfach die Kennung unter Log-in und Passwort für Update-Server ein. Mit einem Klick auf die Schaltfläche Speichern und anwenden ist die Aktualisierung nach Zeitplan fertig konfiguriert. Über die Aktualisierungsfunktion können Sie außerdem einzelne Module aktualisieren. 2.3.10 Authentifizierung Webmin verfügt über eine Fülle an Funktionen, mit denen Sie die Authentifizierung steuern können. Damit legen Sie beispielsweise fest, wie das System bei mehreren misslungenen Log-in-Versuchen reagiert, wie sich Benutzer einloggen und wie Passwörter geprüft werden. Sie können die Authentifizierungs-Einstellungen auch nutzen, um Passwort-Timeouts zu setzen. Solche Time-outs können den Webmin-Server vor sogenannten Brute-Force-Attacken schützen, indem eine sich fortlaufend verlängernde Verzögerung nach einem fehlgeschlagenen Anmeldungsversuch eines Benutzers stattfindet. Generell gilt: Webmin zeichnet bei aktiver Authentifizierung alle Sitzungen aller Webmin-Benutzer auf, damit inaktive Benutzer automatisch abgemeldet werden können. Sie sollten außerdem beachten, dass das Aktivieren oder Deaktivieren der Authentifizierung dazu führen kann, dass sich alle Benutzer neu anmelden müssen. Webmin kompakt Webmin-Module 60 Für die Authentifizierung gibt es unzählige Einstellungen. Die verfügbaren Einstellungen sind sehr umfangreich – und aus Sicht der Sicherheit natürlich sehr wichtig. Daher schauen wir uns die einzelnen Optionen genauer an: · Passwort-Timeouts deaktivieren/aktivieren: Zunächst bietet Ihnen das Formular das Aktivieren bzw. Deaktivieren an. Sie sollten die Standardeinstellung (aktiv) nur in Ausnahmefällen ändern. · Rechner mit x fehlgeschlagenen Anmeldeversuchen für y Sekunden blockieren: Mit dieser Konfiguration sperren Sie nach der angegebenen Zahl an Fehlerversuchen den Zugang für diese Zeitspanne. Sie können die Standardwerte 5 Versuche und 60 Sekunden herunter bzw. höher setzen, wenn Ihnen diese Konfiguration nicht streng genug ist. In der Regel genügt sie. www.brain-media.de Webmin-Konfiguration 61 · Blockierte Rechner, Anmelde- und Authentifizierungsfehler im syslog protokollieren: Wenn Sie diese Option aktivieren, werden Authentifizierungsfelder in die zentrale Protokolldatei geschrieben. Sie sollten diese Option aktiviert lassen, um möglichen Eindringversuchen von Unberechtigten auf die Spur kommen zu können. · Authentifizierung deaktivieren/aktivieren: Als Nächstes können Sie die Authentifizierung ein- bzw. ausschalten. Ausschalten macht höchstens bei lokalen Test-, nicht aber bei Produktivitätssystemen Sinn. · Automatische Abmeldung nach x Minuten Inaktivität: Um sicher zu gehen, dass nicht inaktive Verbindungen zu einem späteren Zeitpunkt für eine Attacke genutzt werden, sollten Sie mit dieser Option für das Trennen inaktiver Verbindungen sorgen. Ein guter Wert ist sicherlich 10 Minuten. · "Kennung speichern" anbieten? NICHT EMPFOHLEN: Standardmäßig ist diese Option aktiv und sorgt dafür, dass der Log-in-Dialog die Option Anmeldung dauerhaft speichern anbietet. Die Log-inInformationen werden auf Seiten des Browsers in einem Cookie gespeichert, um einen späteren Zugriff zu vereinfachen. Es empfiehlt sich, diese Option zu deaktivieren, damit nicht Unberechtigte von Ihrem System aus Unfug mit dem Webmin-System treiben. · Zeige Hostnamen auf Anmeldebildschirm? Mit diesem Schalter legen Sie fest, ob der Hostname beim Login-Dialog angezeigt wird oder nicht. Für einen potenziellen Angreifer ist es natürlich schwieriger, das System zu attackieren, wenn es dessen exakte Adresse bzw. dessen IP-Adresse nicht kennt. Überall dort, wo Fremde auf den Server zugreifen können, sollten Sie diese Option ausschalten. · Zeige den echten Hostnamen anstelle eines Virtuellen Servernamens in der URL? Auch diese Option sollten Sie ausschalten, um möglichen Angreifern nicht mehr als unbedingt nötig Informationen zu liefern. · Speichere Ein- und Ausloggen in UTMP? Das Programm UTMP gibt Auskunft darüber, wer das System im Moment benutzt. Sie können das Ein- und Ausloggen in der zugehörigen Datei speichern. In der Regel ist das nicht erforderlich. · Keine zusätzliche Seite vor der Anmeldung anzeigen/ Eine zusätzliche Datei vor der Anmeldung anzeigen: Mit dieser Option, sofern Sie sie aktivieren, können Sie eine weitere Seite vor der eigentlichen Anmeldung anzeigen lassen. Falls Sie das wollen, geben Sie in das zugehörige Textfeld den Pfad zur HTML-Datei an. Mit dieser Datei können Sie einen BeWebmin kompakt Webmin-Module 62 nutzer beispielsweise mit Zusatzinformationen oder besonderen Hinweisen versorgen, bevor er sich einloggen kann. · Benutzernamen und Passwort immer erfragen: Diese Option sollten Sie aktiviert lassen, damit bei jedem Log-in-Vorgang Kennung und Passwort angegeben werden müssen. · Anmeldung ohne Passwort für passende Benutzer von localhost: Alternativ können Sie auch Benutzern von localhost den Zugang vereinfachen. · Benutze PAM für die Unix-Authentifizierung, wenn verfügbar: Sie können auf das PAM-System für die Authentifizierung zurückgreifen. Überall dort, wo PAM zum Einsatz kommt, sollte man das auch tun. · Benutze niemals PAM für die Unix-Authentifizierung: Mit diesem Schalter umgehen Sie permanent die Verwendung von PAM. · Wenn PAM nicht verfügbar oder abgeschaltet ist, lese Benutzer und Passwörter aus Datei/Spalte: Sollten Sie PAM nicht für die Authentifizierung nutzen oder der Sicherungsmechanismus deaktiviert sein, so bestimmen Sie hier die Datei, in der die Benutzer und Passwörter hinterlegt sind. In der Regel ist das /etc/shadow. · Wenn Unix-Authentisierung benutzt wird ...: Hier legen Sie fest, was mit Benutzern passiert, deren Passwort abgelaufen ist. Es empfiehlt sich, diese immer abzuweisen. Sie könnten auch zur Eingabe eines neuen Passwortes auffordern. · Externes Squid-ähnliches Authentifizierungs-Programm: Sie können auch ein externes Authenthifzierungsprogramm für das Log-in verwenden, beispielsweise Squid. Wenn Sie das wollen, geben Sie hier den Pfad an. · Benutze die Standard-Verschlüsselungsmethode/ MD5-Verschlüsselungsmethode für Webmin-Passworte: Hier sollten Sie sich für die stärkere Verschlüsselungsvariante MD5 entscheiden. Mit einem Klick auf Speichern ändern Sie die Einstellungen für die Authentifizierung. Generell empfiehlt es sich, die Zugangsmechanismen lieber ein wenig enger zu schnüren, als zu weit. www.brain-media.de Webmin-Konfiguration 2.3.11 63 Modulzuordnung und Kategorien Wenn Ihnen die von Webmin vorgegebene Modul- und Kategorienzuordnung nicht passt: Kein Problem, denn Sie können die installierten Module jeder beliebigen Kategorie zuweisen. Dazu wählen Sie aus der Modulliste den gewünschten Eintrag und weisen diesem über das Auswahlmenü die gewünschte Kategorie zu. Dieses Formular erlaubt die Neuordnung der Modul-Kategorie-Zuordnung. Es kommt noch besser: Sie können eigene Kategorien erzeugen und in diesen dann Ihre wichtigsten Module zusammenfassen. Dazu folgen Sie in der WebminKonfiguration dem Link Kategorien bearbeiten. Über dieses Formular können Sie nicht nur vorhandene Kategorien bearbeiten, sondern auch neue einführen. Um eine neue Kategorie zu erstellen, weisen Sie dieser unter ID einen internen Bezeichner und unter Angezeigte Beschreibung eine passende Bezeichnung zu. Mit einem Klick auf Kategorie speichern haben Sie eine Kategorie mehr. Webmin kompakt 64 Webmin-Module Über dieses Formular lassen sich eigene Kategorien erstellen. Womöglich wundern Sie sich, dass diese Kategorie nicht direkt nach dem Speichern in der Kategorienliste zu finden ist. Sie müssen dieser neuen Kategorie über das zuvor beschriebene Formular ein erstes Modul zuweisen. Erst dann taucht die neue Kategorie auch in der Kategorieleiste auf. 2.3.12 Modultitel anpassen Sie können weitere Modul-spezifische Anpassungen vornehmen. Die WebminKonfiguration erlaubt nicht nur die Neuordnung von Modulen, sondern Sie können auch die Modulbezeichnungen nach Ihren Vorlieben gestalten. Dazu folgen Sie dem Verweis Modultitel. Im zugehörigen Formular können Sie bis zu drei Modulbezeichnungen auf einmal ändern. Wählen Sie dazu in der Spalte Modul das Modul aus und weisen Sie diesem unter Neuer Titel die gewünschte Bezeichnung zu. Mit Speichern nehmen Sie die Änderungen vor. www.brain-media.de Webmin-Konfiguration 2.3.13 65 Webmin-Themes Mit den sogenannten Webmin-Themes bestimmen Sie das Erscheinungsbild der Webmin-Benutzerschnittstelle. Dazu gehören Eigenschaften wie Symbole, Farben, Hintergrundbilder und das Seitenlayout. Themes sind ähnlich wie die Module Erweiterungen der Webmin-Installation. Durch die Änderung des Themes erreichen Sie signifikante Änderungen der Webmin-Schnittstelle. Über die Funktion des Formulars Webmin-Themes können Sie das Standarddesign ändern, ein anderes Theme installieren und auch einen Export ausführen. Das Auswahlmenü Aktuelles Theme stellt Ihnen vier Gestaltungsformen zur Auswahl: · Standard-Webmin-Theme: Hierbei handelt es sich um ein sehr einfaches Theme, das noch von den ersten Webmin-Versionen stammt. · Caldera-Theme: Dieses Theme verwendet Frames, um die Kategorien und die zugehörigen Funktionen voneinander zu trennen. · MSC.Linux Theme: Dies ist das Standard-Theme. Es empfiehlt sich, dieses beizubehalten. · Blue Framed Theme: Mit Version 1.3x wurde dieser Theme-Typ eingeführt. Er präsentiert Ihnen in einer Explorer-ähnlichen Ansicht und einem deutlich moderneren Design die Funktionen. Nicht mehr in Webmin 1.3x enthalten ist das Simple Theme, das für Geräte entwickelt wurde, die keine besonderen Darstellungsfähigkeiten aufweisen, beispielsweise einfache Notebooks, PDAs etc. Wenn Sie sich die alternativen Vorlagen einmal ansehen, so werden Sie feststellen, dass diese alle den Link Benutzer wechseln aufweisen. Dieser ist im aktuellen Webmin-Theme nicht mehr integriert. Webmin kompakt 66 Webmin-Module Die umfangreichen Einstellungen zur Theme-Verwendung in Webmin. Sie sind keineswegs auf die vier Themes angewiesen, die Ihnen Webmin zur Verfügung stellt. Sie können auch Themes von anderen verwenden. Über die ThirdParty-Modules-Website (http://webmin.thirdpartymodules.com/) stehen zwanzig Themes zum Download bereit. Für die Installation von Dritt-Themes greifen Sie auf das zweite Formular zurück. Themes besitzen in der Regel die Dateierweiterung WBT und können von einer lokalen, einer hochgeladenen Datei oder von einer FTP- oder HTTP-URL installiert werden. Das Webmin-Themes-Formular erlaubt außerdem das Löschen und Exportieren von Themes. www.brain-media.de Webmin-Konfiguration 67 Das neue Theme Blue Framed Theme in Aktion. 2.3.14 Vertraute Verweise Mit einem Sicherheitsproblem haben alle Web-basierten Administrationswerkzeuge zu kämpfen: Mit einem Verweis wie dem Folgenden kann mit einem einzigen Klick ein Modul ausgeführt werden, das beispielsweise Dateien auf Ihrem System löscht: <a href=http://localhost:10000/proc/run.cgi?cmd=rm+*>Hier klicken</a> Um sich vor derlei bösen Überraschungen zu schützen, sollten Sie eine Freundesliste mit Sites erstellen, die Sie als vertrauenswürdig einschätzen. Mit der Funktion Vertraute Verweise erstellen Sie diese Liste. Zunächst sollten Sie allerdings sicherstellen, dass die Überprüfung aktiviert ist. Webmin kompakt 68 Webmin-Module In diesem Formular hinterlegen Sie die vertrauenswürdigen Websites. Stellen Sie außerdem sicher, dass die Option Links von unbekannten Websites vertrauen deaktiviert ist. Standardmäßig ist das nicht der Fall. 2.3.15 Anonymer Modulzugriff Bereits beim Modul Authentifizierung haben wir verschiedene Möglichkeiten kennengelernt, wie man den Zugriff auf Webmin steuert. Die Administrationszentrale bietet mit der Funktion Anonymer Modulzugriff eine weitere Besonderheit. Das zugehörige Formular erlaubt es Ihnen, Zugriffe auf ausgewählte WebminModule und Pfade zu gewähren, ohne dass sich die Benutzer anmelden müssen. Für jeden Modul-Pfad, den Sie freigeben wollen, müssen Sie den Namen des Webmin-Benutzers eingeben, dessen Rechte für den Zugriff auf die Module benutzt werden sollen. Sinn macht die Freigabe für anonyme Zugriffe beispielsweise für rein informative Module, die keine Änderungen erlauben oder lediglich die Ausführung „harmloser“ Befehle erlauben. Doch Vorsicht: Wenn Sie anonymen Zugriff gewähren, können eine unzureichende IP-Zugriffskontrolle oder der Zugriff auf die falschen Module Angreifern die Übernahme des Systems ermöglichen. Seien Sie daher sehr vorsichtig beim Einsatz dieser Funktion. www.brain-media.de Webmin-Konfiguration 2.3.16 69 Dateisperrung Eine weitere sicherheitsrelevante Einstellung trägt die Bezeichnung Dateisperrung. Webmin sperrt standardmäßig jede Datei, die sich in der Bearbeitung durch einen Benutzer befindet. So wird verhindert, dass sich zwei Benutzer gleichzeitig an der gleichen Datei zu schaffen machen. Mit dem Modul Dateisperrung können Sie diese Konfiguration bearbeiten und beispielsweise die Sperrung komplett aufheben oder nur bestimmte Dateien/Verzeichnisse sperren bzw. freigeben. Für Testzwecke kann eine Freigabe durchaus sinnvoll sein, in der Regel sollten Sie allerdings darauf verzichten. 2.3.17 Mobile Device Options In der aktuellen Version erlaubt Webmin auch die Konfiguration für mobile Geräte, die auf den Server zugreifen. Sie können das zu verwendende Theme vorgeben und die HTTP-Authentifizierung erzwingen. 2.3.18 Erweiterte Optionen Webmin bietet Ihnen einige erweiterte und experimentelle Optionen an. Hier finden Sie beispielsweise das Verzeichnis für temporäre Dateien. Standardmäßig sind diese im Verzeichnis /tmp/.webmin abgelegt. Über das Textfeld können Sie dies ändern. Entsprechend können Sie die temporären Verzeichnisse für die Module anpassen. Wählen Sie dazu einfach das Modul aus und bestimmen Sie das Verzeichnis. Die erweiterten Einstellungen bieten Ihnen zwei weitere Anpassungsmöglichkeiten an: · Webmin-Funktionsbibliotheken vorladen? Hier können Sie das Vorladen der Bibliotheken erzwingen, was gegebenenfalls zu einer etwas schnelleren Ausführung von Webmin führen kann. · Mache Passwort anderen Webmin-Programmen verfügbar? Außerdem können Sie Ihr Passwort für andere Webmin-Installationen zugänglich machen. In der Regel ist das nicht gewünscht. Beachten Sie, dass dieses Feature nicht funktioniert, wenn Sie die Session-Authentifizierung eingeschaltet haben. Webmin kompakt 70 Webmin-Module 2.3.19 SSL-Funktionen Die beiden letzten Funktionen der Webmin-Konfiguration dienen der Konfiguration der SSL-Funktionalität. Über den Link SSL-Verschlüsselung muss zunächst die Installation der Net::SSLeay-Perl-Komponenten erfolgen. Am einfachsten lassen Sie das Webmin mit einem Klick auf Herunterladen und installieren durchführen. Nachdem Download und der anschließenden Installation – oder der manuellen Installation der Komponenten –, können Sie die SSL-Funktionalität aktivieren und einen SSL-Schlüssel erzeugen (so wie es bereits im ersten Teil beschrieben wurde). Die Installation der SSL-Komponenten. 2.3.20 Zertifikatautorität Sie können Webmin auch als Zertifikatautorität einrichten, damit sich Clients von dieser Stelle SSL-Zertifikate anfordern können. Die zugehörigen Funktionen sind über den Link Zertifikatautorität verfügbar. Um diese Funktion allerdings nutzen zu können, müssen Sie erste die SSL-Unterstützung aktivieren. www.brain-media.de Webmin-Konfiguration 71 Um eine Autorität zu erstellen, müssen Sie ein CA-Zertifikat erzeugen. Dazu steht Ihnen ein einfaches Formular zur Verfügung, das Sie der Reihe nach mit folgenden Daten füttern: · Autoritätsname: Hier geben Sie den Namen des Anwenders an, der das Zertifikat erstellt, also beispielsweise Netzwerkadministrator. · E-Mail-Adresse: Hier hinterlegen Sie dessen E-Mail-Adresse. · Abteilung: Hier die Abteilung. · Organisation: Hier ist Platz für den Firmennamen oder eine vergleichbare Information. · Bundesland: Das Formular will auch das Bundesland des Standorts wissen. · Ländercode: In dieses Feld geben Sie beispielsweise GER für Deutschland ein. · RSA-Schlüsselgrösse: Abschließend bestimmen Sie die Schlüsselgröße. Mit dem Standardwert 512 Bits sind Sie in der Regel gut bedient. Das Erstellen eines neuen CA-Zertifikats. Verfügen Sie bereits über eine CA im PEM-Format, so können Sie diese einfach in das untere Textfeld kopieren. Wenn Sie eine erste CA erstellt haben, stellt Ihnen dieses Formular zusätzlich die Schaltfläche Zertifikatautorität herunterfahren zur Verfügung. Verwenden Sie diese Schaltfläche, damit Webmin keine existierenden Webmin kompakt Webmin-Module 72 Zertifikate mehr akzeptiert oder neue ausstellt. In diesem Fall zwingen Sie Benutzer, sich stattdessen mit Benutzernamen und Kennwort anzumelden. 2.3.21 Modulkonfiguration Wie die meisten anderen Module verfügt auch das Webmin-Konfigurationsmenü über eine Modulkonfiguration. Die Einstellungen für dieses Modul sind allerdings recht bescheiden: · URL der Standardmodul-Liste: Hier legen Sie fest, von welcher Quelle sich Ihre Webmin-Installation die Liste der Standardmodule holt. Beim Einsatz im Unternehmen kann es durchaus sinnvoll sein, dass Sie einen eigenen Satz an Standardmodulen zusammenstellen und diese dann anderen Webmin-Anwendern zur Verfügung stellen. · URL der Drittanbieter-Webmin-Modulliste: Entsprechend kann auch die Liste der Module von Drittanbietern definiert werden. · Zeige Aktualisierungszeiten als: Hier haben Sie die Wahl zwischen zwei Anzeigeformaten. · Hole Liste der Webmin-OSDN-Mirrorseiten? Standardmäßig holt sich die Webmin-Installation die Liste der Webmin-Spiegel. Das erleichtert den Zugriff auf Updates etc. Die Konfiguration des Webmin-Konfigurationsmoduls. 2.4 Webmin-Benutzer und -Gruppen Es versteht sich von selbst, dass es für so ein komplexes Programm wie Webmin am besten ist, spezielle Benutzer für unterschiedliche Aufgabenbereiche zu definiewww.brain-media.de Webmin-Benutzer und -Gruppen 73 ren. Dabei unterstützt Sie Webmin mit einer leistungsfähigen Benutzer- und Gruppenverwaltung. Schauen wir uns also an, wie man Benutzer erzeugt und diesen klare Grenzen setzt. Ein erster Blick auf die Webmin-Benutzerverwaltung. In der Webmin-Kategorie finden Sie den Eintrag Webmin-Benutzer, über den Sie alle benutzerspezifischen Aufgaben erledigen, und die Webmin-Gruppe RemoteAdmin. Standardmäßig kennt Ihre Webmin-Installation nur einen Benutzer, den Administrator, der den Benutzernamen admin besitzt. Dieser hat, wie der RootUser, Vollzugriff auf das System und kann alle erdenklichen Funktionen nutzen. Auf Einzelplatzsystemen, die von keinen weiteren Benutzern genutzt werden, mag das genügen, doch in der Regel wollen oder müssen andere Anwender mit Ihrer Webmin-Installation arbeiten. Dank der Webmin-Benutzerverwaltung können Sie administrative Aufgaben wunderbar delegieren, denn auch ein Remote-Zugriff auf die Webmin-Installation ist natürlich möglich. Da Sie diesen Hilfs-Administratoren nicht umfassende AdminRechte einräumen dürfen, sollten Sie sich mit der Webmin-Benutzerverwaltung auseinandersetzen. Hier einige Beispiele, was Sie alles mit der Benutzerverwaltung anfangen können: Webmin kompakt Webmin-Module 74 · Erzeugen eines Benutzers, der lediglich die Einstellungen von virtuellen Apache-Servern konfigurieren kann. · Beschränken des Zugriffs für einen oder mehrere Benutzer auf eine MySQL-Datenbank. · Erlauben, dass Benutzer Druckjobs starten und löschen können, nicht aber Zugriff auf die Druckereinstellungen haben. · Erlauben, dass ein Benutzer in eingeschränktem Rahmen neue Benutzer erstellen kann. Sie sehen: Es gibt eine ganze Menge Dinge, die Sie mit der Benutzerverwaltung sehr fein steuern können. Nun liegt es an Ihnen, diese Möglichkeiten effektiv auszuschöpfen. Generell sollten Sie sehr vorsichtig bei der Vergabe von weitreichenden Rechten sein, denn schnell sind die Restriktionen ausgehebelt. 2.4.1 Neuen Benutzer anlegen Webmin unterscheidet zwischen der Benutzer- und der Gruppenverwaltung. In der Benutzerübersicht präsentiert Ihnen Webmin den bislang einzigen Benutzer admin. Um einen weiteren Benutzer zu erstellen, klicken Sie auf Neuen Benutzer anlegen. Ein Blick auf das zugehörige Formular zeigt Ihnen, warum Sie so flexibel bei der Zuweisung von Benutzerrechten sind: Die Konfigurationsmöglichkeiten sind sehr umfangreich. Auf dem Formular weisen Sie dem neuen Benutzer zunächst einen Benutzernamen und ein Kennwort über die gleichnamigen Textfelder zu. Sind auf Ihrem System bereits erste Gruppen (oder zumindest eine erste) erstellt, so finden Sie neben dem Benutzernamensfeld die Gruppenauswahl. Sie können den neuen Benutzer also gleich auch einer bestimmten Gruppe zuweisen. Bei der Vergabe des Passworts sollten Sie die Option Unix-Authentifizierung verwenden, wenn der neue Benutzer den gleichen Namen wie ein bereits existierender Systembenutzer hat. In diesem Fall verwendet Webmin PAM bzw. die Datei /etc/shadow für die Authentifizierung. Wenn Sie verhindern wollen, dass sich ein Benutzer einloggen kann, wählen Sie die Option Kein Passwort akzeptieren. www.brain-media.de Webmin-Benutzer und -Gruppen 75 Das Anlegen eines Webmin-Benutzers. Die weiteren Einstellungen: · SSL-Zertifikatsname: Hier weisen Sie dem neuen Benutzer einen Zertifikatsnamen zu, der in der Zertifikatverwaltung hinterlegt ist. Die Authentifizierung erfolgt dann auf Grundlage dieser Angabe. · Sprache: Über diesen Schalter können Sie dem Benutzer eine andere als die Standardsprachvariante zuweisen. Bevorzugt einer Ihrer Benutzer beispielsweise die englische oder französische Variante, so weisen Sie diesem die entsprechende Variante zu. · Module in Kategorien aufteilen? Sollen dem Benutzer die für ihn freigeschalteten Module ebenfalls in der typischen Gruppierung präsentiert werden, so behalten Sie die Konfiguration Standard bei. · Zeit für Inaktivitätsabmeldung: Mit dieser Konfiguration können Sie einen Benutzer nach einer bestimmten Zeitspanne, in der keine Daten zwischen ihm und der Webmin-Installation übertragen werden, herauskicken. Dabei können Sie die Anzahl an Minuten definieren oder den oben definierten Standardwert verwenden. Webmin kompakt Webmin-Module 76 · Persönliches Design: Auch die Zuweisung eines der installierten Themes ist hier möglich. Wenn Sie wissen, dass ein Benutzer beispielsweise mit einem PDA oder einem Subnotebook auf das System zugreift, so können Sie ihm beispielsweise das „alte“ Webmin-Theme zuweisen. · IP-Zugriffskontrolle: Wenn Sie Webmin in einem lokalen Netzwerk betreiben oder die Zugreifenden über statische IP-Adressen verfügen, können Sie über dieses Feld diesen den Zugriff gewähren bzw. verwehren. Standardmäßig erlaubt Webmin den Zugriff von allen Adressen. · Allowed days of the week: Diese wie auch die folgende Option ist leider nicht eingedeutscht. Hier können Sie den Zugriff auf bestimmte Wochentage und Zeiten beschränken. Mitarbeiter, die nur zu „normalen“ Bürozeiten mit dem System arbeiten, sollten Sie entsprechend konfigurieren, damit Sie nicht am Wochenende Zugang zu dem System haben. · Module: Es folgt die umfangreiche Modulliste, in der Sie bestimmen, welche Module der neue Benutzer einsetzen darf. Die Module sind nach den bekannten Standardkategorien zusammengefasst. Am Fußende des Formulars finden Sie drei weitere nützliche Funktionen, mit denen Sie dem neuen User beispielsweise durch einen einzigen Mausklick globale Rechte einräumen können. Sie speichern die Einstellungen mit einem Klick auf Speichern. Das nachträgliche Bearbeiten der Benutzereinstellungen ist ebenfalls recht einfach: Öffnen Sie einfach die Konfiguration durch einen Klick auf den Benutzernamen. 2.4.2 Modulberechtigungen Wenn Sie sich die Beispiele für die Benutzereinstellungen in Erinnerung rufen, die oben aufgeführt sind, so fragen Sie sich vermutlich, wie man nun die feinen Steuerungen vornimmt. Mit der Auswahl eines Moduls hat der neue Benutzer zunächst einmal die gleichen Rechte wie der Admin. Also müssen Sie die zulässigen Berechtigungen pro Modul einschränken. Dies sollten Sie angehen, nachdem Sie den Benutzer erstellt, ihm Module zugewiesen und seinen Eintrag gespeichert haben. www.brain-media.de Webmin-Benutzer und -Gruppen 77 Die Modul-Zugriffskontrolle. Für jedes Modul steht Ihnen eine eigene Modul-Zugriffskontrolle zur Verfügung. Auf diese greifen Sie zu, indem Sie den Moduleintrag anklicken. In voranstehender Abbildung sind beispielsweise die verfügbaren Einstellungen für das MySQLModul dargestellt. Im Fall des MySQL-Datenbankservers können Sie zunächst einmal festlegen, ob der Benutzer die Moduleinstellungen bearbeiten darf. Als Nächstes können Sie eine Fülle weiterer Einstellungen bearbeiten. Dazu gehört beispielsweise, welche Datenbanken der Benutzer verwalten und löschen darf. Sie können dem Benutzer außerdem das Recht zuweisen, den Server anzuhalten oder zu starten bzw. Daten zu bearbeiten. Sie können weitere Berechtigungen definieren: · Darf neue Datenbanken anlegen? · Darf Rechte bearbeiten? · Anmelden an MySQL als Benutzername aus Modulkonfiguration · Erzeuge Datensicherung als Unix-Benutzer · Anlegen von Verzeichnis für Datensicherungen Webmin kompakt Webmin-Module 78 Welche Berechtigungen Sie dem neuen Benutzer zuweisen, ist natürlich maßgeblich von dessen Aufgabenbereich und dessen Kenntnissen abhängig. Damit Sie einen Eindruck von den vielfältigen Funktionen bekommen, schauen wir uns noch exemplarisch zwei weitere Module und deren Berechtigungen an: Samba und Netzwerkeinstellungen. 2.4.3 Samba-Modulberechtigungen Für Samba steht Ihnen ein sehr umfangreiches Set an Anpassungen zur Verfügung. Als Erstes steht die Standardfrage an, ob Sie dem Benutzer die Modulkonfiguration erlauben wollen. Erst wenn Sie dies mit Ja beantworten, stehen Ihnen die weiteren Einstellungen zur Verfügung. Ein Ausschnitt aus den umfangreichen Samba-Einstellungen. Die Konfiguration des Samba-Moduls besitzt vier Bereiche für unterschiedliche Aspekte. Zunächst sind die allgemeinen Samba-Zugriffskontrolleinstellungen dran. Hier können Sie folgende Berechtigungen zuweisen bzw. unterbinden: · Verbindungen anzeigen · Verbindungen trennen · UNIX-Einstellungen verändern www.brain-media.de Webmin-Benutzer und -Gruppen · Windows-Einstellungen ändern · Authentifizierungseinstellungen ändern · Druckereinstellungen verändern · Erweiterte Einstellungen bearbeiten 79 Es folgen drei weitere Bereiche: · Einstellungen für verschlüsselte Passwörter: Hier legen Sie beispielsweise fest, ob der Benutzer die SAMBA-Benutzerdatenbank anzeigen, Benutzer bearbeiten, konvertieren und synchronisieren darf. · Gruppen-Optionen: Entsprechend können Sie für den Benutzer festlegen, ob dieser Gruppen ansehen, betrachten oder editieren darf. Auch der Zugriff auf Datei- und Druckerfreigaben kann hier definiert werden. · Freigabebezogene ACLs: Hier legen Sie für die verschiedenen Freigaben (global, homes, profiles, users etc.) Zugriffs- und Freigabeeinstellungen fest. Sie können in der Regel den Zugriff gewähren, das Bearbeiten erlauben oder nur das Lesen der Daten bzw. Einstellungen zulassen. Generelles zu den Berechtigungen Nicht ganz so einfach ist die Frage zu beantworten, wie man am besten mit der Fülle an Einstellungen umgeht. Wenn Sie sich die Standardberechtigungen für das Samba-Modul ansehen, stellen Sie fest, dass diese eine Vielzahl, um genau zu sein die meisten Einstellungen und Anpassungen zulässt. Von derart „großzügigen“ Einstellungen sollten Sie sich verabschieden – zumindest, wenn Sie Webmin in einer Produktionsumgebung einsetzen. Sie sollten zunächst alle jene Einstellungen bzw. Beschränkungen setzen, von denen Sie wissen, dass Sie für den Benutzer nicht oder noch nicht benötigt werden. Berechtigungen, bei denen Sie unschlüssig sind, sollten sicherheitshalber deaktiviert werden. Schauen wir uns noch die Berechtigungen für die Netzwerkkonfiguration an. Diese stellt Ihnen rund vierzehn Einstellungen zur Verfügung. Über die Modulberechtigung legen Sie beispielsweise fest, ob der Benutzer Netzwerkschnittstellen bearbeiten darf oder nicht, und falls ja, welche Schnittstelleneinstellungen editierbar sind. Über das Textfeld Interfaces except legen Sie fest, welche nicht bearbeitet werden dürfen. Webmin kompakt Webmin-Module 80 Die Modul-Berechtigungen für die Netzwerkeinstellungen. Sie können den Benutzern außerdem die Anpassung der Host-Adressen, das Editieren der Netzmaske und der MTU erlauben. Auch hier gilt: Seien Sie behutsam mit der Freigabe weitreichender Einstellungen. Das Anlegen einer Webmin-Gruppe ist fast noch einfacher: Klicken Sie dazu auf den Link Erzeuge eine neue Webmin-Gruppe. Im zugehörigen Dialog weisen Sie dieser eine Bezeichnung und die Module zu. Wie Sie es von der Benutzerverwaltung kennen, können Sie der neuen Gruppe in einem Aufwasch alle Module zuweisen oder die Auswahl umkehren. Nachdem die erste Gruppe erzeugt wurde, können Sie auch bei dieser die Modulberechtigungen bearbeiten. Die Benutzerverwaltung stellt Ihnen fünf weitere benutzerspezifische Funktionen zur Verfügung, die Ihnen die Benutzerverwaltung vereinfachen: · Konvertiere Unix- zu Webmin-Benutzern: Über dieses Formular machen Sie bestehende Systembenutzer quasi per Knopfdruck zu WebminBenutzern. Einfacher geht es kaum. Sie können alle Unix-Benutzer, nur bestimmte User, Gruppen und Benutzer eines UID-Bereichs importieren. Wenn Sie eine Webmin-Gruppe erzeugt haben, können Sie die zu importierenden Benutzer gleich einer Gruppe zuweisen. · Konfiguriere Unix-Benutzer-Synchronisation: Mit den Funktionen dieses Formulars vereinfacht sich die zukünftige Benutzeradministration deutlich, denn Sie können Webmin- und Systembenutzer nach bestimmwww.brain-media.de Webmin-Benutzer und -Gruppen 81 ten Kriterien synchronisieren. Sie können insbesondere folgende Aktionen miteinander kombinieren: o Einen Webmin-Benutzer erzeugen, wenn ein Unix-Benutzer erzeugt wird. o Den zugehörigen Webmin-Benutzer löschen, wenn ein UnixBenutzer gelöscht wird. o Das Passwort für neue Benutzer auf das UNIX-Passwort setzen. Außerdem können Sie neue Benutzer immer auch direkt einer Webmin-Gruppe zuweisen: · Konfiguriere Unix-Benutzer-Authentifizierung: Hier können Sie Webmin so konfigurieren, dass die Anmeldeversuche gegen die SystemBenutzerliste und PAM abgeglichen werden. Dies kann nützlich sein, wenn Sie eine große Anzahl bestehender Unix-Benutzer haben, denen Sie Zugriff auf Webmin geben wollen. Auch bei diesem Formular können Sie wieder Restriktionen setzen. · Zeige angemeldete Sitzungen: Über diesen Link gelangen Sie zur Liste der aktuell angemeldeten Benutzer. Hier werden Ihnen neben der SessionID der Benutzername, die IP-Adresse und der Zeitpunkt der Anmeldung angezeigt. Außerdem können Sie die Ereignisse eines Benutzers abrufen. Ein Klick auf den Link Zeige Aufzeichnungen führt Sie zu der Übersicht der Aktionen, die der Benutzer durchgeführt hat (diese wird übrigens über die Ereignisanzeige konfiguriert). Über die Sitzungsliste können Sie die Benutzer auch dazu zwingen, sich neu anzumelden. Klicken Sie dazu einfach auf den Sitzungs-ID-Eintrag. · Setup RBAC: Die RBAC(Role Based Access Control)-Integration in die Webmin-Software unterstützt die Verlagerung von ACLs auf bestimmte oder alle Module in eine RBAC-Datenbank. Ist RBAC aktiviert, werden die zulässigen Benutzeraktionen durch RBAC und nicht mehr durch Webmin geregelt. Allerdings wird RBAC laut Webmin-Schnittstelle derzeit nur von der Solaris-Variante des Admin-Tools unterstützt. Webmin kompakt 82 Webmin-Module Über den Link Zeige Aufzeichnungen gelangen Sie zur Ereignisanzeige des jeweiligen Benutzers. 2.5 Die Webmin-Ereignisanzeige Ein wesentliches Element für die Überwachung Ihrer Webmin-Umgebung ist die Webmin-Ereignisanzeige. Vorausgesetzt, die Protokollierung ist in der WebminKonfiguration aktiviert, können Sie nahezu jede Aktion auf Ihrem System protokollieren und zu einem späteren Zeitpunkt verfolgen. Was genau aufgezeichnet wird, bestimmen Sie in der Webmin-Konfiguration. Standardmäßig werden beispielsweise alle Ereignisse der Benutzer und der Module aufgezeichnet. Definition der Ereignisanzeige. www.brain-media.de Webmin-Server 83 Das Formular für die Ausgabe der Ereignisanzeige sieht standardmäßig die Ausgabe aller Benutzeraktionen in jedem Modul vor. Mit dieser Konfiguration sind Sie gut bedient. Problematisch ist hingegen die Konfiguration des Aufzeichnungszeitpunkts, denn sie ist nur für den aktuellen Tag konfiguriert. Wenn Sie die Ereignisse eines längeren Zeitraums betrachten wollen, so verwenden Sie den Wert Zu jeder Zeit. Alternativ lässt sich die Anzeige auch auf einen bestimmten Zeitraum einschränken. Mit einem Klick auf die Schaltfläche Suche leiten Sie die Recherche ein. Die Protokolldaten stammen übrigens aus der Datei /var/webmin/webmin.log. Je nach Linux-Distribution oder Installationsvariante können Sie auch in einem anderen Verzeichnis zu finden sein, beispielsweise in /var/log/webmin. In der Ergebnisliste können Sie sich dann einen Eintrag genauer ansehen, indem Sie diesen anklicken. In der Detailansicht zeigt Ihnen Webmin folgende Informationen an: · Beschreibung · Webmin-Modul · Besitzer · Sitzungs-ID · Client-IP- oder Hostname · Datum und Uhrzeit Für die technisch interessierten Anwender ist sicherlich die Information Erzeugt von Skript interessant. Hier führt die Anzeige das ausgeführte Webmin-Skript samt Pfad (innerhalb der Webmin-Installation) auf. 2.6 Webmin-Server Wenn Sie ein großes Netzwerk verwalten, das beispielsweise die Infrastruktur für mehrere Abteilungen bereitstellt, so wisse Sie möglich bereits die Cluster-Bildung und zentrale Server-Administration zu schätzen. In der Webmin-Kategorie finden Sie mit dem Eintrag Webmin-Server die passenden Funktionen. Das Modul Webmin-Server kann prinzipiell zwei Aufgaben abdecken, eine komplexe und eine weniger komplexe. Sie können damit eine Art Webmin-ServerIndex erstellen, der alle in Ihrem Netzwerk betriebenen Webmin-Server aufführt. Webmin kompakt 84 Webmin-Module Über diesen Index haben Sie auch Zugriff auf die verschiedenen Server. Dazu muss natürlich auf dem jeweiligen System ein Webmin-Server installiert sein und der Server muss ein spezifisches RPC-Protokoll unterstützen. Die Serverliste, die Sie mit der zentralen Webmin-Installation verwalten. 2.6.1 Neuen Server hinzufügen Um einen neuen Server hinzuzufügen, führen Sie folgende Schritte aus: 1. Klicken Sie auf den Link Neuen Server registrieren. 2. In das Textfeld Hostname geben Sie die Server-Bezeichnung oder aber die zugehörige IP-Adresse ein. 3. Geben Sie als Nächstes unter Port den Port des gewünschten Servers an. In der Regel horcht dieser auf 10000. 4. Dann bestimmen Sie über das Auswahlmenü Server-Typ das Betriebssystem, das auf dem Rechner verwendet wird. Das Auswahlmenü stellt Ihnen alle relevanten Linux-Varianten zur Verfügung. www.brain-media.de Webmin-Server 85 5. Server-zu-Server-Verbindungen sollten möglichst per SSL gesichert werden. Dazu aktivieren Sie die Verwendung mit der gleichnamigen Option. Auch hierfür muss die Komponente Net::SSLeay installiert sein, da sonst kein gesicherter Verbindungsaufbau möglich ist. 6. Dann geben Sie optional in das Feld Beschreibung eine aussagekräftige Kennung für den Server an. Benennen Sie ihn beispielsweise nach der Abteilung, dem Raum, in dem er aufgestellt ist, oder nach seinem Aufgabenbereich. 7. Wenn Sie eine regelrechte Webmin-Server-Farm verwalten, so sollten Sie diese in Gruppen einteilen. Das vereinfacht die Verwaltung. Geben Sie gegebenenfalls eine Gruppenbezeichnung an. 8. Das Feld Verbindung ist das wichtigste Feld des gesamten Formulars, denn es legt fest, wie der neue Server verwendet wird. Es legt fest, ob der Server im Cluster- und im System-Modus verwendet wird. Sie haben die Wahl zwischen folgenden Optionen: 9. · Normale Verbindung zum Server: Bei dieser Option können keine RPC-Calls an den anderen Server übermittelt werden. Der Server-Eintrag stellt letztlich nicht mehr als einen „normalen“ Link dar. · Anmelden über Webmin mit Benutzername Passwort: Entscheiden Sie sich für diese Option, wenn Sie die RPCUnterstützung von Webmin für den Zugriff nutzen wollen. Für den Zugriff sind Benutzername und Passwort erforderlich. Der Benutzer muss in der Regel root oder admin heißen, da andere Benutzer nicht RPC nutzen dürfen (außer, Sie besitzen entsprechende Rechte). · Anmelden beim Klicken auf Button: Verwenden Sie diese Option, wenn ein Verbindungsaufbau per RPC nicht möglich ist. Wenn Sie sich für die Option Anmelden beim Klicken auf Button entschieden haben, können Sie schließlich festlegen, ob Webmin das neuere und schnellere RPC-Protokoll für die Verbindungsaufnahme verwenden soll oder nicht. Behalten Sie am besten die Standardeinstellung Entscheide automatisch bei. In diesem Fall handeln die beiden Webmin-Server untereinander aus, wie Sie miteinander kommunizieren. Webmin kompakt 86 Webmin-Module 10. Mit einem abschließenden Klick erzeugen Sie den neuen Server, den Sie dann in der Server-Liste finden. Ein neuer Server wird in die Server-Liste eingetragen. Die Server-Verwaltung hat noch weitere interessante Funktionen zu bieten, die Sie unterhalb der Server-Liste finden. Mit einem Klick auf die Schaltfläche Broadcast für Server macht sich Ihr Webmin-Server auf die automatische Suche nach weiteren Webmin-Servern in Ihrem lokalen Netzwerk. Das funktioniert aber erst ab Webmin 0.75. Sie können auch gezielt nach Servern suchen, indem Sie das Netzwerksegment angeben, in dem gesucht werden soll. Als Nächstes füttern Sie das Formular mit dem Benutzernamen und dem Passwort für den Zugriff auf den Server. Außerdem können Sie einen Suchautomatismus einführen, mit dem Ihr Netzwerk in regelmäßigen Abständen auf neue Server untersucht wird. Dazu klicken Sie auf die Schaltfläche Automatically find servers und füllen das nachfolgende Formular aus, in dem Sie beispielsweise das Netzwerk vorgeben, in dem gesucht werden soll. www.brain-media.de Modulkonfiguration 2.7 87 Modulkonfiguration Auch das Modul Webmin-Server besitzt wieder eine eigene Modulkonfiguration. In der legen Sie beispielsweise fest, ob die Adressen aufgelöst werden, in welcher Form die Server angezeigt werden (als Icons oder Tabelle) und in welcher Sortierung die Server aufgeführt werden (IP-Adresse, erstellte Reihenfolge etc.). Sie können außerdem den Standard-Server-Typ und den Standard-RPC-Modus bestimmen. Damit haben Sie alle Webmin-spezifischen Funktionen kennengelernt. Sie wissen, wie Sie den Server an Ihre Bedürfnisse anpassen, Benutzer verwalten und wie Sie die Ereignisanzeige nutzen können. Damit sind Sie bestens gerüstet, um sich den Systemeinstellungen zu widmen. Webmin kompakt 88 Webmin-Module www.brain-media.de 89 3 Benutzer und Gruppen Die Kategorie System ist so etwas wie die Systemsteuerung Ihres Linux-Systems. Hier steht Ihnen eine Vielzahl an Funktionen für die Konfiguration Ihrer LinuxInstallation zur Verfügung. Sie reichen von der Benutzerverwaltung über die Backup-Funktionen, die PAM-Authentifizierung, die verschiedenen Sicherheitsdienste und System-Protokolldateien. Sie sehen: Eine ganze Menge, meist sicherheitsrelevante Funktionen für die Anpassung des Systems. Die System-Einstellungen im Überblick. In der Systemkategorie von Webmin 1.3x finden Sie zwanzig verschiedene Einstellungen, die es zu erforschen und zu nutzen gilt. Webmin kompakt 90 3.1 Benutzer und Gruppen Benutzerverwaltung Benutzer sind in der Regel Anwender, die sich per Benutzername und Passwort auf einem System anmelden und auf bzw. mit diesem arbeiten. Benutzer können darüber hinaus weitere Eigenschaften besitzen, beispielsweise einen realen Namen, eine Gruppenzugehörigkeit oder auch ein „Verfallsdatum“. Als Linux-Anwender wissen Sie vermutlich, dass Ihr System über einige StandardAccounts wie admin, mail, ftp etc. verfügt. Sicherlich kennen Sie auch den Benutzer root mit seinen umfassenden Rechten. Vermutlich ist auch die Gruppenverwaltung nichts Neues für Sie. Die Benutzer- und Gruppeneinstellungen werden in der Regel im Verzeichnis /etc abgelegt. Konkret in /etc/passwd und /etc/shadow. Die Gruppeneinstellungen in der Datei /etc/group. Das Webmin-Modul Benutzer und Gruppen dient dem Editieren dieser Dateien. Die typische Benutzerliste. www.brain-media.de Benutzerverwaltung 91 Problematisch wird die Sache allerdings, wenn Sie Ihre Benutzer und Gruppen mit NIS oder LDAP verwalten. In diesem Fall ist das Modul leider nicht zu gebrauchen. Mit dem Benutzer- und Gruppen-Modul können Sie alle relevanten Aktionen bei der Benutzerverwaltung durchführen. Sie können neue Benutzer und Gruppen anlegen, bestehende bearbeiten und löschen. Wenn Sie auf das Modul zugreifen, listet es alle bestehenden Benutzer und Gruppen auf. Für jeden Eintrag können Sie verschiedene Einstellungen bearbeiten: 1. Benutzerdetails 2. Kennworteinstellungen 3. Gruppenzugehörigkeit 4. Speichern-Einstellungen Das Erstellen eines neuen Benutzers ist recht einfach. Führen Sie dazu einfach folgende Befehle aus: 1. Klicken Sie zunächst auf den Verweis Neuen Benutzer erstellen. In dem zugehörigen Formular stehen im Wesentlichen die gleichen Funktionen wie beim Editieren eines Beitrags zur Verfügung. 2. Unter Benutzerdetails bestimmen Sie den Benutzernamen, gegebenenfalls den tatsächlichen Namen (das empfiehlt sich, um Benutzer und realen Anwender besser zuordnen zu können). 3. Dann legen Sie fest, welche Shell dem Benutzer zur Verfügung stehen soll. Standardmäßig ist das /bin/sh. Über das Textfeld Andere können Sie einen alternativen Pfad angeben. 4. Damit Linux die Benutzer klar voneinander unterscheiden kann, benötigen diese eindeutige Bezeichner. Hier haben Sie die Wahl, ob die UserID, kurz UID automatisch bzw. errechnet werden soll oder ob Sie eine eigene Angabe verwenden wollen. Im Fall der automatischen Zuweisung wird dem Benutzer eine ID zugewiesen, die auf den bestehenden basiert. Wenn Sie sich für die Option Errechnet entscheiden, wird die ID mittels eines Prüfsummenalgorithmus errechnet. 5. Beachten Sie Folgendes: Root besitzt immer die UID Null. Wenn Sie einem anderen Benutzer ebenfalls die Null zuweisen, erhält er die gleichen Rechte wie Root. Webmin kompakt 92 Benutzer und Gruppen Ein neuer Benutzer wird angelegt. 6. Es folgen mit der Kennwort-Konfiguration die letzten Benutzerdetails. Sie haben die Wahl zwischen folgenden Optionen: · Kein Kennwort benötigt: In diesem Fall kann sich der Benutzer ohne Angabe eines Passworts einloggen. Diese Option sollten Sie höchstens zu Testzwecken verwenden. · Keine Anmeldung erlaubt: Mit diesem Schalter ist der Account gesperrt und der Benutzer kann sich nicht einloggen. · Klartextkennwort: Mit diesem Textfeld hinterlegen Sie das Passwort im Klartext, also unverschlüsselt. · Vorverschlüsseltes Kennwort: Hier geben Sie ein bereits verschlüsseltes Passwort ein, wie Sie es in der Datei /etc/shadow finden. In der Regel verwendet man die Option Klartextkennwort. Das genügt meist. Unabhängig von der Passwortvariante können Sie einen Account mit dem Schalter Login temporarily disabled deaktivieren, beispielsweise um Wartungsarbeiten durchzuführen. 7. Es folgen die Kennworteinstellungen. Hier legen Sie zunächst fest, wann das Kennwort das letzte Mal durch Webmin oder durch das passwdwww.brain-media.de Benutzerverwaltung 93 Programm geändert wurde. Sie können unter Ablaufdatum einen Zeitpunkt festlegen, an dem das Passwort nicht mehr gültig ist. Der Einsatz dieser Funktion ist beispielsweise bei temporären Accounts für Praktikanten oder externe Kräfte sinnvoll. 8. Die weiteren Kennworteinstellungen sprechen für sich: Mit Minimale und Maximale Anzahl an Tagen bestimmen Sie den Zeitraum, nach dem das Passwort geändert werden muss. Sie sollten den Anwender außerdem vor Ablauf des Passwortes warnen. Mit der Einstellung Inaktive Tage legen fest, wie viele Tage nach Ablauf des Werts Maximale Tage vergehen, bis der Account deaktiviert wird. Wenn Sie das Feld Inaktive Tage frei lassen, läuft der Account nie ab. 9. Dann sind die Einstellungen für die Gruppenzugehörigkeiten dran, wodurch Sie die primäre und gegebenenfalls die sekundäre Gruppe des neuen Linux-Anwenders bestimmen. Der neue Benutzer wird standardmäßig der Gruppe users hinzugefügt. Sie können aber auch mit dem Textfeld Neue Gruppe eine neue festlegen. 10. Es folgen die Beim-Erstellen-Einstellungen. Standardmäßig wird für den neuen Benutzer mit Erstelle Stammverzeichnis ein Home-Verzeichnis erzeugt. 11. Wenn Sie die Option Kopiere Dateien zu Stammverzeichnis wählen, so werden in dessen Home-Verzeichnis beispielsweise Dateien wie .profile oder Desktop erzeugt. 12. Soll der Benutzer auch andere Module nutzen können, so setzen Sie die letzte Option Benutzer in anderen Modulen anlegen auf Ja. 13. Sie speichern Einstellungen mit einem Klick auf Erstellen. Sie landen automatisch in der Benutzerübersicht, in der Sie nun auch den neuen Eintrag finden. Das Editieren eines Benutzers ist wieder sehr einfach: Klicken Sie auf den gewünschten Benutzereintrag und bearbeiten Sie die Einstellungen entsprechend Ihren Wünschen. Ebenso einfach ist das Löschen. Markieren Sie nicht mehr benötigte Benutzer und klicken Sie am Ende der Benutzerliste auf die Schaltfläche Lösche ausgewählte Benutzer. Webmin kompakt Benutzer und Gruppen 94 3.2 Gruppe erstellen Unterhalb der Benutzerliste finden Sie die Gruppenverwaltung. Um eine neue Gruppe zu erzeugen, gehen Sie wie folgt vor: 1. Folgen Sie dem Link Neue Gruppe erstellen. 2. Im Dialog Gruppe anlegen weisen Sie der Gruppe eine Bezeichnung zu. 3. Auch hier kann die Gruppen-ID-Vergabe automatisch oder manuell erfolgen. 4. Als Nächstes können Sie drei Kennworteinstellungen definieren (kein Kennwort, vorverschlüsseltes Kennwort, Klartextkennwort). 5. Über das Auswahlmenü Mitglieder weisen Sie der neuen Gruppe bereits bei ihrer Entstehung die ersten Mitglieder zu. Eine neue Benutzergruppe entsteht mithilfe von Webmin. Der Dialog für das Erstellen bietet eine letzte Einstellung, die Sie bereits von der Benutzerverwaltung kennen: Sie können die Gruppe in allen Modulen einrichten. Mit einem abschließenden Klick auf Erstellen ist die erste Gruppe erzeugt. In der Gruppenliste können Sie die Einträge ebenfalls wieder löschen und editieren. www.brain-media.de Log-ins abrufen 3.3 95 Log-ins abrufen Über die Benutzer- und Gruppenverwaltung können Sie weitere nützliche Aktionen durchführen. Am Fuße der Seite finden Sie die Schaltfläche Angemeldete Benutzer. Ein Klick auf sie zeigt die aktuell eingeloggten Linux-Benutzer. Mit einem weiteren Klick auf den Benutzernamen rufen Sie Details zum An- und Abmeldezeitpunkt ab. Wenn Sie sich für die Anmeldungen eines bestimmten Benutzers interessieren, so wählen Sie am Formularende über den Auswahldialog einen Benutzer aus und rufen mit einem Klick auf Zeige Anmeldungen für dessen Login-Vorgänge an. Dank Webmin können Sie auch Benutzer von Batch-Dateien erstellen. Ein weiteres Highlight: das Erstellen von Benutzern im Batchmodus. Folgen Sie dazu dem Link Benutzerverwaltung über Skript. Auf der zugehörigen Seite können Sie mehrere Benutzer auf einmal durch ein Skript anlegen, ändern oder löschen. Die Skriptdatei ist eine ASCII-basierte Datei, wobei jede Zeile in dieser Datei eine durchzuführende Aktion spezifiziert. Die möglichen Formate sind: create: username:passwd:uid:gid:realname:homedir:shell:min:max:warn:i nactive:expire Webmin kompakt Benutzer und Gruppen 96 modify: oldusername:username:passwd:uid:gid:realname:homedir:shell:mi n:max:warn:inactive:expire delete: username Diese bedürfen natürlich der Erläuterung: · Mit den create-Zeilen weist Webmin automatisch eine User-ID zu, falls das UID-Feld nicht ausgefüllt wird. Ist das GID-Feld leer, erzeugt Webmin eine neue Gruppe mit dem gleichen Namen wie der angegebene Benutzer. · Die Felder username, homedir und shell müssen immer ausgefüllt werden, alle anderen Angaben sind optional. Wenn Sie das passwd-Feld nicht ausfüllen, wird dem Benutzer kein Passwort zugewiesen. Wenn Sie in diesem Feld nur ein x eintragen, wird das entsprechende Benutzerkonto gesperrt. Ansonsten wird der Inhalt dieses Feldes als Klartextpasswort interpretiert und verschlüsselt. · In den modify-Zeilen bedeutet ein leerer Eintrag, dass das entsprechende Benutzerattribut nicht verändert werden soll. Schauen wir uns noch ein Beispiel an, das zeigt, wie man diese Funktionen nutzt: create: holger:geheim:1001::Holger Reibold:/home/holger:/bin/bash:::::: In diesem Beispiel wird der Benutzer holger mit dem Passwort geheim, der ID 1001 und dem Realnamen Holger Reibold erstellt. Alle Eigenschaften wie Ablaufdatum (expire) etc., die Sie nicht verwenden, bleiben einfach leer. Daher auch mehrere Doppelpunkte am Ende der Beispielzeile. Für die Ausführung des Skripts gibt es mehrere Möglichkeiten: Sie können es auf den Server uploaden, es von einer Datei auf dem Server ausführen oder aber den Code in das dafür vorgesehene Textfeld eingeben. Die Ausführung des Skripts starten Sie mit einem Klick auf die Schaltfläche Skript ausführen. Die weiteren Optionen für die Ausführung einer Batch-Datei: www.brain-media.de Log-ins abrufen 97 · Benutzer in anderen Modulen bearbeiten? Diese Option kennen Sie bereits von anderen Modulen und Webmin-Funktionen. Hier legen Sie fest, ob der oder die neuen Benutzer auch für andere Webmin-Module eingetragen werden. · Nur aktualisieren, wenn Stapelverarbeitungsdatei komplett ist? Diese Option ist standardmäßig auf Nein gesetzt. Die Benutzerverwaltung wird auch dann aktualisiert, wenn die Batch-Datei Lücken aufweist. · Erstelle Stammverzeichnis? Mit der Option Ja wird standardmäßig auch ein Home-Verzeichnis für den bzw. die neuen Benutzer erzeugt. · Kopiere Dateien zu Stammverzeichnis? Hier legen Sie fest, ob die Dateien ins Stammverzeichnis kopiert werden sollen. · Stammverzeichnis von geänderten Benutzern umbenennen? Mit der Batchdatei können Sie auch bestehende Benutzereinstellungen ändern. Falls Sie das tun, wird deren Home-Verzeichnis umbenannt. · User-ID von Dateien geänderter Benutzer anpassen? Mit der Option Ja wird die UID entsprechend den Einstellungen der Batch-Datei aktualisiert. · Gruppen-ID von Dateien geänderter Benutzer anpassen? Gleiches ist mit der Gruppen-ID möglich. · Stammverzeichnis gelöschter Benutzer löschen? Mit der Batchdatei ist auch das Löschen von Benutzern möglich. Standardmäßig werden beim Löschen von Benutzern auch deren Stammverzeichnisse vom System entfernt. · Passwörter sind bereits verschlüsselt? Wenn Sie bereits verschlüsselte Passwörter in der Batchdatei verwenden, so müssen Sie diesen Schalter auf Ja setzen. Die Optionen, die bei den Befehlen create, modify und delete verfügbar sind, kennen Sie von der Erstellung von Benutzern über das Formular Neuen Benutzer anlegen. Sie müssen daher nicht weiter beschrieben werden. Für Details sei auf obige Beschreibungen verwiesen. Wichtig ist lediglich die Zuordnung zu den jeweiligen Feldbezeichnungen: username: Benutzername passwd: Passwort uid: Benutzer-ID Webmin kompakt 98 Benutzer und Gruppen gid: Gruppen-ID realname: vollständiger Name homedir: Home-Verzeichnis shell: Shell min: minimale Anzahl von Tagen max: maximale Anzahl von Tagen warn: Warnung nach Tagen inactive: inaktive Tage expire: Ablaufdatum Lediglich für den Parameter oldusername gibt es kein Feld, da Sie einen Namen direkt im Benutzerformular ändern können. Der Export der Benutzerdaten in eine Webmin-Batchdatei. 3.4 Stapelverarbeitungsdatei exportieren Damit Sie Benutzerdaten auf anderen Systemen schnell wieder verfügbar haben, können Sie die Benutzerdaten in einer Stapelverarbeitungsdatei exportieren und diese dann auf einem Zweit- und/oder Drittrechner importieren. Das zugehörige Formular erreichen Sie über den Link Stapelverarbeitungsdatei exportieren der Benutzerverwaltung. www.brain-media.de Stapelverarbeitungsdatei exportieren 99 Sie können mit dem Formular eine Stapelverarbeitungsdatei erzeugen, die einige oder alle verfügbaren Benutzer Ihres Systems beinhaltet. Welche Daten exakt in der Exportdatei vorhanden sind, bestimmen Sie mit den verschiedenen Schaltern. Sie können beispielsweise Benutzer ausschließen, lediglich Benutzer einer Gruppe oder einen User-ID-Bereich bestimmen. Zunächst bestimmen Sie, ob der Export in eine Datei geschrieben oder im Browser geöffnet werden soll. Über das Auswahlmenü Stapelverarbeitungsdateiformat haben Sie die Wahl zwischen folgenden Optionen: · Nur klassische passwd-Datei · BSD-master.passwd-Datei · Standard-passwd- und shadow-Datei · Unixware passwd-Datei · AIX-passwd- und security-Datei · OpenServer-passwd- und kurze shadow-Datei · MacOXS-NetInfo-Datei Wenn Sie mit einem gängigen Linux-System wie SuSE Linux, Fedora oder Debian arbeiten, sollten Sie die Option Standard-passwd und shadow-Datei wählen, damit alle relevanten Benutzerdaten exportiert und gesichert bzw. auf einem zweiten System aufgespielt werden können. Ein typischer Export sieht wie folgt aus: create:root:$2a$05$Dx19m/6Z.Wn8VjerT7O5TOmHiaJtyMVpR5YB1ct5x6eCL dF9669V2:0:0:root:/root:/bin/bash::::: create:bin:*:1:1:bin:/bin:/bin/bash::::: create:daemon:*:2:2:Daemon:/sbin:/bin/bash::::: create:lp:*:4:7:Printing daemon:/var/spool/lpd:/bin/bash::::: create:mail:*:8:12:Mailer daemon:/var/spool/clientmqueue:/bin/false::::: create:games:*:12:100:Games account:/var/games:/bin/bash::::: create:wwwrun:*:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false::::: create:ftp:*:40:49:FTP account:/srv/ftp:/bin/bash::::: Webmin kompakt 100 Benutzer und Gruppen Die Modulkonfiguration für die Benutzer- und Gruppenverwaltung. 3.5 Modulkonfiguration Sehr umfangreich fällt die Modulkonfiguration für das Modul Benutzer und Gruppen aus. Damit lassen sich neben einer Fülle an Standardvorgaben weitere nützliche Funktionen realisieren. Mit zu den interessantesten Funktionen zählen die des Bereichs Durchzuführende Kommandos vor und nach Änderungen. Über die Textfelder Vor Änderungen durchführen und Nach Änderungen durchführen legen Sie fest, welche Aktionen vor bzw. nach der Änderung der Benutzereinstellung über das Webmin-Formular ausgeführt werden. Dazu stellt Ihnen Webmin eine Fülle an Funktionen zur Verfügung. Was kann man nun mit diesen Kommandos in der Praxis Sinnvolles anstellen? Sie könnten beispielsweise eine E-Mail an einen bestimmten Account verschicken, dass ein neuer Account erzeugt wurde. Dazu würden Sie beispielsweise folgende Anweisung verwenden: www.brain-media.de Modulkonfiguration 101 [ “$USERADMIN_ACTION“ = „CREATE_USER“ ] && echo “Fügt Benutzer $USERADMIN_USER ($USERADMIN_RAL)“ | mail –s “Neuer Benutzer hinzugefügt“ [email protected] Genauso gut könnten Sie Daten in eine Datei schreiben oder ein Fax starten. Ihrer Kreativität sind keine Grenzen gesetzt – außer Ihren Perl-Kenntnissen, denn die Programmierung muss in Perl erfolgen. Nachstehende Tabelle fasst die Umgebungsvariablen zusammen, die in diesen beiden Feldern zum Einsatz kommen: Umgebungsvariable Beschreibung USERADMIN_ACT ION Mit dieser Variablen bestimmen Sie, welche Aktionen durchgeführt werden. Mögliche Werte sind: CREATE_USER MODIFY_USER DELETE_USER CREATE_GROUP MODIFY_ GROUP DELETE_ GROUP USERADMIN_USE R Bestimmt den Benutzernamen, der erzeugt, verändert oder gelöscht wird. Es wird nicht verwendet, wenn Gruppen-spezifische Aktionen durchgeführt werden. USERADMIN_UID Bestimmt die Benutzer-ID des Users, der erzeugt, gelöscht oder bearbeitet wird. USERADMIN_GID Gibt die Gruppen-ID des Benutzers an, der bearbeitet oder gelöscht wird. USERADMIN_REA L Bestimmt den vollständigen Namen des Users, der erzeugt, gelöscht oder bearbeitet wird. USERADMIN_SHE LL Bestimmt die Shell des Users, der erzeugt, gelöscht oder bearbeitet wird. USERADMIN_HO ME Bestimmt das -ID des Users, der erzeugt, gelöscht oder bearbeitet wird. USERADMIN_PAS S Gibt das Passwort des Benutzers in Plaintext an, wenn eines verwendet wird. USERADMIN_SEC ONDARY Hier wird eine Komma-separierte Liste weiterer Gruppen hinterlegt, der der Benutzer ebenfalls angehört. Webmin kompakt Benutzer und Gruppen 102 Umgebungsvariable Beschreibung USERADMIN_GR OUP Gibt den Namen der Gruppe an, der hinzugefügt, gelöscht oder editiert wird. Bei benutzerspezfischen Aktionen kommt diese Variable natürlich nicht zum Einsatz. Die Funktionen für das Ausführen von Kommandos vor bzw. nach dem Ändern von Benutzer- bzw. Gruppeneinstellungen sind etwas für Fortgeschrittene und Profis, die sich dort nach Herzenslust austoben können. Es folgen die Home-Verzeichnis-Optionen, mit denen Sie eine Handvoll allgemeiner Eigenschaften für das Heimatverzeichnis der Benutzer definieren. Die Einstellungen im Einzelnen: · Berechtigungen für neue Home-Verzeichnisse (oktal anzugeben): Hier bestimmen Sie die Linux-Berechtigung für neue Heimatverzeichnisse im Oktal-Format. Der Standardwert lautet 0755. · Kopiere Dateien in neue Home-Verzeichnisse aus: Hier legen Sie fest, welche Dateien standardmäßig in das Home-Verzeichnis kopiert werden sollen. Die Standardkonfiguration sieht das Verzeichnis /etc/skel vor. In diesem Linux-Systemverzeichnis finden Sie beispielsweise Dateien wie .profiles, die dann auch den neuen Benutzern zur Verfügung stehen. · "Root-Verzeichnis" für Home-Verzeichnisse: Hier legen Sie den Pfad zum Home-Verzeichnis eines neuen Benutzers fest. Dieser lautet standardmäßig /home und muss in der Regel nicht angepasst werden. · Einrichtungsart für Home-Verzeichnisse: Über dieses Auswahlmenü legen Sie fest, nach welchem Schema die Home-Verzeichnisse erstellt werden. Standard ist /home/benutzername. Sie können aber auch andere Schemata nutzen, beispielsweise /home/primäre_gruppe/benutzername. Es folgen die Optionen für neue Benutzer. Hier legen Sie beispielsweise fest, nach welchen Verfahren die Benutzer- oder Gruppen-ID bei der automatischen IDVergabe erstellt werden oder ob Benutzer- und Gruppennamen eine maximale Länge aufweisen sollen. Die Einstellungen im Einzelnen: · Niedrigste User-ID für neue Benutzer: Wenn Sie mit Webmin einen neuen Benutzer einführen, so wird diesem eine ID zugewiesen, die höher als der hier angegebene Wert ist. Webmin gibt als Wert 1000 vor. Sie können aber natürlich auch bei 500 beginnen – eben so, wie es Ihnen am besten passt. www.brain-media.de Modulkonfiguration 103 · Niedrigste Gruppen-ID für neue Benutzer: Entsprechend können Sie auch die niedrigste Gruppen-ID definieren. · User-ID-, Gruppen-ID-Eingabemethode: Hier legen Sie fest, nach welchem Verfahren die IDs eingegeben werden. · User-ID-, Gruppen-ID-Errechnungsmethode: Für die automatische Berechnung der ID legen Sie hier das Verfahren fest. · Eine Gruppe für neue Benutzer anlegen? Wenn Sie diese Option auf Ja setzen, wird mit jedem neuen Benutzer auch eine neue Gruppe erzeugt. Das macht in der Regel wenig Sinn. Behalten Sie daher die Vorgabe Nein bei. · Gleiche ID für Benutzer und Gruppe? Manche Administratoren mögen es, wenn man neuen Benutzern und neuen Gruppen die gleiche ID zuweist. Wenn Sie das ebenfalls mögen, setzen Sie diese Option auf Ja. Einen echten Sinn hat die Funktion nicht. · Passwortverschlüsselungsmethode: Hier legen Sie fest, mit welchem Verschlüsselungsverfahren das Passwort gesichert werden soll. Mit MD5 oder Automatisch sind Sie gut bedient. · Überprüfe auf vorhandene Sendmail-Aliase? Wenn Sie diesen Schalter auf Ja setzen, so prüft Webmin die lokale Sendmail-Installation, ob ein Sendmail-Alias mit der gleichen Bezeichnung existiert. Das macht bei Sendmail-Installationen Sinn, um zu verhindern, dass es Zustellprobleme gibt. · Nur Dateien löschen, die dem Benutzer gehören? Wenn Sie diesen Schalter auf Ja setzen, so werden beim Löschen des Benutzers auch nur die Dateien entfernt, die dem zu löschenden Benutzer gehören. Lagern in dessen Home-Verzeichnis Dateien anderer Benutzer, so bleibt das HomeVerzeichnis samt diesen Dateien erhalten. · Maximale Länge von Benutzer- und Gruppennamen: Die Länge der Benutzer- und Gruppennamen ist standardmäßig unbegrenzt lang. Sie sollten Sie aber durch einen Wert von 50 oder 100 beschränken. · Perl "RegExp" für die Überprüfung von Benutzernamen: Sie können für die Überprüfung von Benutzernamen auch Perl-basierte reguläre Ausdrücke nutzen. In der Regel ist das nicht erforderlich. · Build list of shells from: Hier legen Sie fest, auf welchen Informationen die Shell-Liste basiert. Sie können auf drei Quellen zurückgreifen: Integrierte Liste, bestehende Benutzer und die Datei /etc/shells. Webmin kompakt Benutzer und Gruppen 104 · Show secondary groups on user form? Standardmäßig ist auch die Ansicht sekundärer Benutzergruppen in der Benutzerverwaltung aktiviert. Dies können Sie mit No ändern. Neben den Optionen für neue Benutzer kennt Webmin noch den Standard für neue User. Hier legen Sie insbesondere folgende Einstellungen fest, die bereits oben beschrieben wurden (sie sollen daher hier nicht noch einmal wiederholt werden): · Primäre Gruppe für neue Benutzer · Sekundäre Gruppen für neue Benutzer · Shell für neue Benutzer · Minimale Tage für neue Benutzer · Maximale Tage für neue Benutzer · Passwort-Warnung für neue Benutzer · Inaktive Tage für neue Benutzer · Default expiry date for new users · Create and update in other modules Für die Gestaltung der Benutzerkonfiguration sind hingegen die Anzeigeoptionen interessant. Damit können Sie verschiedenste Anpassungen der Benutzerverwaltung vornehmen. Konkret die Folgenden: · Maximale Anzeigeanzahl von Benutzer und Gruppen: Hier legen Sie die maximale Anzahl an Benutzern fest, die über Web-Schnittstelle angezeigt werden. In einem kleinen bis mittleren Netzwerk kommen Sie mit dem Standardwert 400 sicherlich aus. · Sortiere Benutzer und Gruppen nach: Die Modulkonfiguration erlaubt zudem die Anpassung der Sortierung. Standardmäßig werden sie nach der Anordnung in den Benutzer- bzw. Gruppendateien aufgeführt. Dort werden sie in der Reihenfolge ihrer Entstehung aufgeführt. Wenn Ihnen das zu unübersichtlich ist (und das ist es in der Regel), passen Sie die Anordnung an. Sie können folgende Sortierung verwenden: o Benutzername o Realname www.brain-media.de Modulkonfiguration o Familienname o Shell o UID oder GID o Verzeichnis 105 Für welche Reihenfolge Sie sich entscheiden, ist natürlich in erster Linie von Ihren Vorlieben abhängig. Die Sortierung nach der ID ist in jedem Fall eine übersichtlichere als die nach dem Entstehungszeitpunkt. Ein Blick auf die Anzeige- und Passworteinstellungen. · Anzahl der vorangegangenen Anmeldungen, die angezeigt werden: Beim Abruf der Anmeldungen wird Ihnen je nach Systemnutzung eine mehr oder minder lange Liste ausgegeben. Über dieses Feld können Sie die Anzahl der vorangegangenen Anmeldungen bestimmen. Wenn Ihr System intensiv von Ihren Anwendern genutzt wird, sollten Sie die Anzahl auf einen praktikablen Wert von 100 setzen. Webmin kompakt Benutzer und Gruppen 106 · Show last login in user list? Sie können in der Benutzerverwaltung immer auch den letzten Log-in-Vorgang eines Benutzers anzeigen. Wenn Sie das wollen, setzen Sie diese Option auf Yes. · Benutzer und Gruppen anzeigen: Die Benutzer und Gruppen werden standardmäßig in einer Tabelle aufgeführt, wobei ein Benutzer bzw. eine Gruppe samt Eigenschaften in einer Zeile gelistet wird. Sie können die Ansicht auch komprimieren, indem Sie von der Standardeinstellung Alle Details zu Nur den Namen wechseln. Mit der Option Kategorisiert nach Primärer Gruppe werden die Benutzer nach deren primärer Gruppe sortiert aufgeführt. · Plain-Text-Passworte verbergen? Wenn Sie diese Einstellung auf Ja setzen, werden die Plaintext-Passwörter nur noch als Sternchen dargestellt. Aktivieren Sie diese Option, wenn Sie befürchten, dass Ihnen Anwender über die Schulter schauen, um die Kennwörter Dritter auszuspionieren. · Ermittele Benutzer- und Gruppeninfo anhand von: Das Benutzermodul liest zwar relevante Benutzerdateien des Systems ein, um Benutzerund Gruppeninformationen aufzunehmen, doch kann es immer wieder zu Problemen bei der Benutzeridentifizierung kommen, die beispielsweise von Systemen wie NIS stammen. Sollten Sie ein solches Verhalten registrieren, so setzen Sie diese Option von der Standardkonfiguration Systemaufrufen auf Dateien. · Passworte für neue Benutzer generieren? Wenn Sie diese Option auf Ja setzen, erzeugt Webmin automatisch ein Passwort für neue Benutzer. Ob Sie die Passwortgenerierung Webmin überlassen oder ob Sie das Passwort selbst setzen, bleibt natürlich Ihnen überlassen. · Büro- und Telefondaten anzeigen? Sie können die Benutzerdaten, speziell das Feld Vollständiger Name, um weitere Informationen wie die Telefonnummer etc. erweitern. Wenn Sie das wollen, setzen Sie diese Option auf Ja. In diesem Fall stehen Ihnen drei weitere Felder zur Verfügung: · o Büro o Telefon (Arbeit) o Telefon (privat) Erlaube das Löschen von Systembenutzern- und Gruppen? Dieser Schalter steht standardmäßig auf Nein, damit die neuen Benutzer nicht www.brain-media.de Modulkonfiguration 107 wichtige Systembenutzer- und Gruppen löschen können. Dabei sollte es auch bleiben. Es folgen eine Handvoll Passwort-Einstellungen: · Minimale Passwortlänge: Hier legen Sie fest, ob das Passwort eine maximale Länge besitzen soll. Es empfiehlt sich, die Länge auf einen praktikablen Wert von 10 oder 20 Zeichen zu setzen. Mehr ist in der Regel nicht erforderlich. · Wörterbuchpassworte verhindern (wenn möglich)? Auch diese Option sollten Sie aktivieren, damit nicht „normale“ Wörter als Passwort verwendet werden, die einfach von einem Passwort-Cracker geknackt werden. Wenn Sie die Option aktiviert haben, und dennoch einen Begriff verwenden, den Webmin kennt, gibt das Adminwerkzeug folgende Fehlermeldung beim Erstellen eines neuen Benutzers aus: Fehler beim Speichern des Benutzers: Dieses Passwort wurde im Wörterbuch gefunden und wird abgewiesen. · Folgende "Regular Expression (Perl)" benutzen, um Passworte zu prüfen: Hier können Sie einen regulären Ausdruck angeben, den das Passwort erfüllen muss, damit es von Webmin akzeptiert wird. Mit dieser Funktion können Sie beispielsweise die Verwendung von Sonderzeichen im Passwort erzwingen. Webmin kompakt Benutzer und Gruppen 108 Den Abschluss der Modulkonfiguration bildet die Systemkonfiguration. · Passworte, die den Benutzernamen beinhalten, verhindern? Auch diesen Schalter sollten Sie auf Ja setzen, damit der Benutzername nicht im Passwort enthalten sein darf. · External password-checking program: Schließlich können Sie einen externen Passwort-Checker einbinden. Wenn Sie das wollen, geben Sie hier den Pfad zu dem Programm an. 3.6 Systemkonfiguration Den Abschluss der Benutzer-und-Gruppen-Modulkonfiguration bildet die Systemkonfiguration. Hier legen Sie insbesondere die Pfade zu den relevanten Benutzerund Passwort-Dateien fest. Die Einstellungen im Einzelnen: · Passwort-Datei: Hier geben Sie den Pfad zur Passwortdatei an. Der Standardwert lautet /etc/passwd. · Gruppen-Datei: Entsprechend geben Sie hier die Gruppendatei an. Bei einem Standard-Linux-System ist das /etc/group. · Shadow-Passwort-Datei: Hier den Pfad zur Shadow-Datei, in dem die Passwörter hinterlegt sind. Meist /etc/shadow. · BSD-Master-Passwort-Datei: Wenn Sie mit BSD arbeiten, bestimmen Sie hier den Pfad zu den Master-Passwort-Dateien. www.brain-media.de Systemkonfiguration 109 · Shadow-Gruppen-Datei: Hier den zur Gruppen-Shadow-Datei. · NetInfo Domain, die administriert werden soll: In diesem Feld können Sie den Pfad zur NetInfo-Datei anpassen. · Replace password for locked accounts with: Hier geben Sie die Ersetzung des Passworts gesperrter Accounts an. · Prepend to password for temporarily disabled accounts: Hier legen Sie fest, was temporär deaktivierten Accounts vorangestellt wird. · Command to restart nscd: In diesem Feld bestimmen Sie den Befehl für den Neustart von nscd. Der Standardeintrag lautet /etc/rc.d/nscd restart. Nscd (Name Service Cache Daemon) ist ein Prozess, der einen Cache für verschiedene übliche Namensanfragen bereithält. Webmin kompakt 110 Benutzer und Gruppen www.brain-media.de 111 4 Boot-Konfiguration Bei jedem Systemstart lädt der Rechner zunächst das BIOS, das dann verschiedene Speicher- und Hardware-Prüfungen durchführt, bis dann eine bestimmter Software-Block in den sogenannten Master-Boot-Record (MBR) geladen wird. Der MBR enthält eine Partitionstabelle, die die Aufteilung des Datenträgers beschreibt, und einen Boot-Manager, ein Programm, das ein Betriebssystem auf einer der Partitionen startet. Es gibt heute eine Vielzahl von Boot-Managern. Unter Linux kommen in der Regel LILO und GRUB zum Einsatz. Prinzipiell machen sie alle das Gleiche. Die Boot-Konfiguration. Webmin kompakt 112 4.1 Boot-Konfiguration Grundlegendes über den Boot-Vorgang Nachdem der Linux-Kernel geladen ist, mountet der Boot-Manager das RootDateisystem und führt das init-Programm aus. Init ist für den weiteren BootProzess zuständig, liest dabei seine Konfiguration aus der Datei /etc/inittab und führt dann die dort definierten Skripts aus, die meist mit rc beginnen. Der Boot-Manager bzw. die inittab-Datei definiert außerdem sogenannte Runlevel. Beim Systemstart durchläuft ein System mehrere abgestufte Systemzustände, die man als Runlevel bezeichnet. Jedem Runlevel sind bestimmte System-Dienste zugeordnet, die beim Booten als Prozesse in definierter Reihenfolge innerhalb des Betriebssystems gestartet werden. So werden Systemressourcen des Computers stufenweise in Betrieb genommen. Bei Beendigung des Betriebssystems (Shutdown) werden die Runlevel in umgekehrter Reihenfolge durchlaufen, die laufenden Prozesse werden stufenweise beendet, bis der Computer ausgeschaltet werden kann. Hier einige wichtige Runlevel für Linux. Unter anderen Betriebssystemen wie beispielsweise Solaris sehen diese anders aus. Nachstehende Tabelle fasst die Runlevel zusammen: Runlevel Beschreibung 0 Shutdown. Dabei werden alle Netzverbindungen geschlossen, Dateipuffer geschrieben und Partitionen umounted. S Single-User-Runlevel. Dies ist der niedrigste Systemzustand für Wartungsarbeiten, in dem ausschließlich Systemressourcen wie Festplatten oder Dateisysteme aktiv sind. 1 Der Einzelnutzerbetrieb ohne Netzwerkunterstützung mit ausschließlich lokalen Ressourcen. 2 Hier ist lokaler Mehrnutzerbetrieb ohne Netzwerkunterstützung mit ausschließlich lokalen Ressourcen möglich. Allerdings gibt es Unterschiede zwischen den Linux-Distributionen. So wird bei Debian beispielsweise in Runlevel 2 auch das Netzwerk konfiguriert. 3 Netzwerkbetrieb, über das Netzwerk erreichbare Ressourcen sind nutzbar, eine grafische Oberfläche steht nicht zur Verfügung. Firewalls sollten aktiviert werden. 6 Reboot. Bei diesem Level werden alle Netzverbindungen geschlossen, Dateipuffer geschrieben etc. Mithilfe des Moduls Boot-Konfiguration können Sie verschiedene Einstellungen bearbeiten. www.brain-media.de Grundlegendes über den Boot-Vorgang 113 Wenn Sie das erste Mal auf die Boot-Konfiguration zugreifen, so präsentiert Ihnen Webmin eine umfangreiche Prozessliste samt ID, Status, Ausführungslevel (Runlevel), Aktion und zugehörigem Prozess. Diese Liste präsentiert die Daten der Initab-Datei. Um einen Prozess zu bearbeiten, klicken Sie auf die Prozess-ID. Es öffnet sich der Dialog Prozeßdetails, in dem Sie den Status, den Runlevel, die Aktion und den Prozessnamen ändern können. Das Bearbeiten eines Prozesses. Die Vergabe der ID ist bereits erfolgt. Über Aktiviert können Sie den Prozess beispielsweise deaktivieren und ihm unter Ausführungs-Level einen anderen Level zuweisen. Am interessantesten sind die Optionen, die Sie über das Auswahlmenü Aktionen zuweisen können. Hier ist eine Vielzahl von Einstellungen auswählbar: · Neu starten · Warten · Einmal im Level · Immer, wenn A, B, C · Nach dem Systemstart · Während des Systemstarts · Beim Stromausfall · Beim Stromausfall ohne Warten · Stromversorgung ist wiederhergestellt Webmin kompakt Boot-Konfiguration 114 · Stromausfall · Strg-Alt-Entf · Spezielle Schlüsselkombination · Beim Booten, warten bis Beendigung · Beim Booten · Nichts tun Mit einem Klick auf Speichern übernehmen Sie die Einstellungen. Sie landen dann wieder in der Init-Tabelle. In der Init-Konfiguration übernehmen Sie dann die Änderungen durch einen abschließenden Klick auf Init-Konfiguration anwenden. Diese führt den Befehl telinit q aus. Sie sollten sich allerdings bewusst sein, dass Konfigurationsfehler das System unbrauchbar machen können. Es gibt übrigens in der Webmin-Systemsteuerung ein zweites Modul, mit dem Sie Start- und Stopp-Eigenschaften von Prozessen bestimmen. Dort ist auch das Bearbeiten der Init-Skripts möglich. 4.2 Modulkonfiguration Die Modulkonfiguration kennt lediglich zwei Anpassungen: Sie können den Pfad zur inittab-Datei und zum telinit-Kommando anpassen. Da Webmin diese Daten bei der Installation einliest, sind hier in der Regel keine Änderungen erforderlich. www.brain-media.de Modulkonfiguration 115 5 Dateisystem-Back-up Unter Linux gibt es wie bei anderen Betriebssystemen verschiedene Möglichkeiten, um Daten zu sichern und wiederherzustellen. Sie können beispielsweise Daten klonen oder mittels tar auf einem bestimmten Laufwerk sichern. Aber nur dump kann auch wichtige Dateitypen wie symbolische Links und Eigenschaften wie ACLs oder Dateiattribute sichern. Außerdem taugt dump fürs klassische Back-up und Restore. Das Tool unterstützt auch inkrementelle Back-ups, bei denen nur die seit der letzten Sicherung geänderten Dateien gesichert werden. Die noch leere Sicherungsliste. Allerdings unterliegen die Funktionalitäten von dump auch gewissen Einschränkungen. So ist leider keine Komprimierung der zu sichernden Daten möglich. Dazu muss man wieder zu tar greifen. Außerdem gibt es Probleme beim Wiederherstellen von Daten, die per NFS gemountet werden. Um Daten auf Ihrem System zu sichern, klicken Sie auf das Modul DateisystemBackup. Voranstehende Abbildung zeigt die einfache Schnittstelle, über die Sie die noch zu erstellenden Sicherungen verwalten. Außerdem führen Sie hier die Wiederherstellung aus. Um eine erste Sicherung zu erstellen, wählen Sie zunächst das zu sichernde Verzeichnis aus und klicken dann auf die Schaltfläche Sicherung eines Verzeichnisses hinzufügen. Es empfiehlt sich, die Daten mittels tar auf der Zielpartition zu packen. Aktivieren Sie dazu die Option Im TAR-Format. Stellen Sie allerdings sicher, dass tar auch installiert ist und der Anwender über die notwendigen Rechte verfügt. Webmin kompakt Dateisystem-Back-up 116 Die Eigenschaften der Sicherung. In dem recht umfangreichen Formular für die Sicherungskonfiguration legen Sie zunächst die sogenannten TAR-Dateisystemsicherungsdetails, dann die Back-upOptionen und schließlich die zeitliche Steuerung fest. Unter TAR-Dateisystemsicherungsdetails finden Sie den zuvor ausgewählten Ordner, den Sie sichern wollen. Wenn Sie weitere Dateien oder Verzeichnisse in den Sicherungsvorgang einbinden wollen, so müssen Sie diese in je einer neuen Reihe aufführen. Also beispielsweise wie folgt: · /home · /ordner1 · /ordner2 Mit Sichern nach bestimmen Sie, ob die Sicherung als Datei oder auf einem Bandlaufwerk (z. B. /dev/st0) gespeichert wird. Sie können die Daten auch auf einem Remote-Host sichern. Dieser muss allerdings das RSH-Protokoll für den Zugriff unterstützen, das meist aus Sicherheitsgründen deaktiviert ist. Wichtig ist immer, dass Sie den genauen Pfad bzw. den exakten Dateinamen angeben, also beispielsweise /tmp/sicher1.tar, da die Sicherungsfunktion sonst eine Fehlermeldung ausgibt. www.brain-media.de Back-up-Optionen 117 Anstelle des Standards RSH für die Sicherung auf einem Remote-Rechner können Sie auch SSH verwenden. Das funktioniert allerdings nur, wenn die SSHKonfiguration des Root-Benutzers das passwortlose Log-in erlaubt. Wenn Sie SSH verwenden wollen, aktivieren Sie die gleichnamige Option. 5.1 Back-up-Optionen Es folgen die recht umfangreichen Back-up-Optionen. Hier können Sie verschiedene Einstellungen bearbeiten. Die Einstellungen sind allerdings optional. Zunächst sollen Sie einen aussagekräftigen Sicherungsnamen angeben, anhand dessen Sie die Sicherung schnell zuordnen können. Dabei können Sie beispielsweise die Systembezeichnung, das Verzeichnis und das Datum miteinander kombinieren. Unter Bandgröße können Sie dessen Kapazitäten automatisch ermitteln lassen oder einen Wert in KB angeben. Die Wertangabe ist nur dann sinnvoll, wenn die automatische Erkennung fehlschlägt oder Fehler produziert. Sie können das Archiv außerdem mit GZIP bzw. der Variante BZIP komprimieren. Wenn Sie die Daten auf klassischen Bandlaufwerken sichern, ist eine Komprimierung in der Regel nicht erforderlich, weil die Bandlaufwerke oft ein eigenes Verfahren nutzen. Wenn Sie ein Dateisystem wie EXT2 verwenden, dass nur relativ kleine Dateien zulässt, sollten Sie die Option Über mehrere Dateien verteilen? aktivieren. In diesem Fall wird die Sicherung in mehrere Dateien mit der Bezeichnung wie sicher1, sicher2 etc. aufgeteilt. Standardmäßig ist auch das Verfolgen von symbolischen Links mit der Option Folge symbolischen Links? deaktiviert. Wenn Sie die Option aktivieren, werden die Links als Dateien mit in die Sicherung aufgenommen. Den Schalter Prompt for new tape if needed? sollten Sie in jedem Fall auf Ja belassen, damit dump bei der Sicherung ein neues Band anfordert, wenn eines beschrieben ist. Wenn Sie die Option Remount with noatime option during backup? aktivieren, reduziert sich die Festplattenaktivität. In der Regel kann die Option allerdings auch ausgeschaltet bleiben. Mit der Option Attempt test restore after backup to verify? können Sie außerdem eine Verifizierung des Back-ups durchführen. Auch das ist nicht zwingend erforderlich. Für Profis ist sicherlich auch die Funktion Extra Kommandozeilenparameter interessant, mit der Sie die Ausführung von dump mit weiteren Schaltern steuern können. Außerdem können Sie auch bei dieser Funktion Befehle vor bzw. nach Webmin kompakt 118 Dateisystem-Back-up der Sicherung ausführen. Die Ausgabe wird übrigens auch in den Sicherungsbericht eingefügt. 5.2 Back-up-Zeitplan Es folgen die Einstellungen für den Back-up-Zeitplan. Mit diesem können Sie einen Cronjob erstellen, der die Sicherung zu einem bestimmten Zeitpunkt durchführt. Um die zeitgesteuerte Sicherung nutzen zu können, müssen Sie zuerst die Option Geplante Sicherung aktiviert einschalten. Wählen Sie Aktiviert, zu den unten ausgewählten Zeiten, um über die darunterliegenden Schalter die Sicherungszeiten zu bestimmen. Sie können die Sicherung beispielsweise täglich, wöchentlich oder auch einmal pro Monat durchführen. Wenn Sie die Zeitsteuerung nutzen, bietet sich der Einsatz einer weiteren Funktion an. In dem Eingabefeld E-Mail von geplanter Sicherung nach können Sie eine EMail-Adresse hinterlegen, an die der Sicherungsbericht verschickt wird. Außerdem können Sie einen eigenen Betreff der E-Mail im gleichnamigen Feld angeben. Webmin verwendet standardmäßig den Betreff Dump of Verzeichnisname. Die Konfiguration der zeitgesteuerten Sicherung. www.brain-media.de Daten wiederherstellen 119 Abschließend können Sie mit einem Klick auf die Schaltfläche Erstellen lediglich die Back-up-Konfiguration sichern. Wenn Sie gleichzeitig eine erste Sicherung erstellen wollen, klicken Sie auf Erstellen und jetzt sichern. Webmin gibt bei der Durchführung der Sicherung den Jetzt-sichern-Bericht aus, der beispielsweise wie folgt aussieht: Sicherung von /home nach /tmp/sicher1.tar wird ausgeführt .. tar: Removing leading `/' from member names .. Sicherung komplett. Nachdem die Sicherung erfolgreich abgearbeitet wurde, finden Sie den ersten Eintrag in der Sicherungsliste. 5.3 Daten wiederherstellen Über die Liste können Sie dann die Daten wiederherstellen, indem Sie sie markieren und dann auf die Schaltfläche Restore backup of filesystem klicken. Wenn Sie bereits eine Sicherung ausgewählt haben, müssen Sie das Feld Von Datei oder Gerät wiederherstellen nicht ausfüllen. Die Optionen für das Restore. Webmin kompakt Dateisystem-Back-up 120 Sehr sorgfältig sollten Sie allerdings bei der Wahl des Wiederherstellungspfades sein, den Sie im Feld Wiederherstellen nach Verzeichnis bestimmen. Die Auswahl vereinfacht sich durch das Auswahlmenü am Ende des Eingabefelds. Ob Sie die Option Keine Dateien überschreiben bei der Standardkonfiguration belassen, ist in der Regel abhängig von der Umgebung und dem Grund für die Wiederherstellung. Gleiches gilt für die Option Dateizugriffsrechte. In der Regel können diese Einstellungen auf Nein belassen werden. Auch das Back-up- und Restore-Modul verfügt über eine eigene Modulkonfiguration, über die Sie verschiedene Anpassungen vornehmen können. Die Modulkonfiguration für die Back-up- und Restore-Funktion. Die Konfigurationsmöglichkeiten im Einzelnen: · strftime-Substitution der Backup-Ziele? Wenn Sie diese Option auf Ja setzen, so werden Platzhalter wie %d, %m, %Y und %u für die Definition des Back-ups verwendet. Diese werden dann durch den Tag, den Monat und das Jahr ersetzt, an dem die Sicherung erzeugt wurde. Der Einsatz dieser Funktion ist insbesondere dann sinnvoll, wenn Sie an einem Tag mehrere Sicherungen erstellen, da sie so besser auseinandergehalten werden können. · Sende E-Mail über SMTP-Server: Hier legen Sie fest, wie die RestoreBerichte verschickt werden. · Starte Backups im: Hier bestimmen Sie, ob der Wiederherstellungsvorgang im Vorder- oder Hintergrund durchgeführt wird. www.brain-media.de Daten wiederherstellen 121 · Neues Band anfordern, wenn das eingelegte voll ist? Bei dieser Option sollte der Standard Ja beibehalten werden, wenn für die Sicherung ein neues Band erforderlich ist. · Benutze immer TAR-Format für Backups? Sie können die Verwendung des TAR-Formats auch deaktivieren. In der Regel macht das keinen Sinn. · Sende Benachrichtigungs-E-Mail: Hier legen Sie fest, ob eine BerichtE-Mail immer oder nur beim Auftreten von Fehlern versendet werden soll. Behalten Sie die Standardeinstellung Immer bei. Zu viele Benachrichtigungen sind immer noch besser als zu wenige. Die „einfache“ Zeitsteuerung. · Schedule selector format: Wenn Ihnen die Zeitsteuerung zu komplex ist, können Sie die vereinfachten Varianten aktivieren, indem Sie diese Option auf simple setzen. In diesem Fall steht Ihnen ein einfaches Auswahlmenü mit folgenden Einträgen zur Verfügung: o Stündlich o Täglich (um Mitternacht) o Wöchentlich (Sonntags) o Monatlich (am Ersten) o Jährlich (am 1. Januar) Meist kommt man mit diesen Möglichkeiten auch aus. Webmin kompakt 122 Dateisystem-Back-up www.brain-media.de 123 6 Festplatten-Quotas Aus Sicht der Systemsicherheit sind die sogenannten Disk-Quotas ein wichtiges Hilfsmittel, um die Sicherheit des Systems zu festigen. Dabei handelt es sich um Begrenzungen des Speicherplatzes auf Festplatten, der für die einzelnen Benutzer oder Gruppen zur Verfügung steht. Bei der Verwendung von Quotas werden in der Regel zwei Grenzen definiert: das Softlimit (darf für kurze Zeit überschritten werden) und das Hardlimit (darf gar nicht überschritten werden). Zusätzlich wird der Zeitraum festgelegt, für den das Softlimit überschritten werden darf. Die Verwendung dieser Funktion ist recht einfach. Öffnen Sie einfach das Modul, das Ihnen die aktiven Benutzer- und Gruppenbeschränkungen aufführt. Ist bereits für eine Partition eine Beschränkung gesetzt, so wird das in der Statusspalte entsprechend gekennzeichnet (inaktiv bzw. aktiv). Um die Werte für Hard- und Softlimit zu setzen, editieren Sie einfach den entsprechenden Benutzereintrag und geben die Werte in das dafür vorgesehene Formular ein. Dank Webmin können Sie auch mehreren Benutzern die gleichen Quotas zuweisen. Dazu öffnen Sie die Einstellungen eines Benutzers, klicken auf Copy Quotas und bestimmen dann die Ziele: · Alle Benutzer · Ausgewählte Benutzer · Mitglieder bestimmter Gruppen · Mit einem abschließenden Klick auf Copy ist die Zuweisung perfekt. Auch das Quota-Modul verfügt über eine Modulkonfiguration. Mit dieser legen Sie beispielsweise die Anzahl der anzuzeigenden Benutzer und Gruppen fest, bestimmen deren Sortierung und bestimmen den E-Mail-Inhalt, der verschickt wird, wenn der Speicherplatz eines Benutzers sich dem Grenzwert nähert. Webmin kompakt 124 Festplatten-Quotas Die Konfiguration des Quota-Moduls. www.brain-media.de 125 7 Zeitsteuerung mit Cron und AT Mithilfe von Webmin können Sie wiederkehrende Aufgaben per Zeitsteuerung automatisiert ausführen. Dazu stehen Ihnen die beiden Module Geplante Aufträge (AT) und Geplante Aufträge (Cron) zur Verfügung, wobei die Cron-Variante die wichtigere ist. Bei der Cron-Variante ist der Cron-Daemon für die Jobsteuerung wiederkehrender Aufgaben zu einem bestimmten Zeitpunkt zuständig. Die auszuführenden Befehle werden in einer benutzerdefinierten Tabelle, der sogenannten crontab, gespeichert. Mithilfe von Cronjobs können Sie eigentlich alles steuern, was Sie mit Ihrem System anfangen können. Es bietet sich an, beispielsweise temporäre Dateien regelmäßig zu löschen, die Systemzeit mit einem Zeitserver zu synchronisieren, Daten zu sichern etc. Die Cron-Tabelle wird in der Regel im Verzeichnis /var/spool/cron abgelegt. Allerdings kann es hier Unterschiede zwischen Linux-Distributionen geben. Für jeden Benutzer wird eine eigene Datei/Tabelle angelegt. Außerdem finden Sie in /etc Aufträge, die bestimmten Paketen zugeordnet sind. Die Cronjob-Verwaltung. Auf die Cronjob-Verwaltung greifen Sie zu, wenn Sie in der WebminSystemverwaltung auf Geplante Aufträge (Cron) klicken. Es öffnet sich die Cronjob-Verwaltung, in der die anstehenden Aufträge samt ihren Eigenschaften den verschiedenen Benutzern aufgeführt sind. In der Übersicht wird neben dem Status (aktiv/inaktiv) auch der zugehörige Befehl inklusive aller Optionen und Parameter angezeigt. Die Übersicht erlaubt das Erstellen neuer Aufträge und das Bearbeiten bestehender. Webmin kompakt 126 7.1 Zeitsteuerung mit Cron und AT Neuen Cronjob erstellen Um einen neuen Cronjob zu erstellen, führen Sie folgende Schritte aus: 1. Klicken Sie auf den Verweis Einen neuen Cron-Auftrag erstellen. 2. Unter Auftrag-Details bestimmen Sie den Benutzer, dem der Auftrag zugeordnet wird. 3. Als Nächstes bestimmen Sie, ob der Auftrag direkt aktiviert werden soll oder nicht. 4. In das Eingabefeld Befehl geben Sie dann das eigentliche Kommando ein. Ein neuer Cronjob in der Entstehung. 5. Mit dem Feld Eingabe an Befehl können Sie dem auszuführenden Kommando erforderliche Parameter mit auf den Weg geben. 6. Sie sollten außerdem eine Beschreibung im Feld Description hinterlegen, damit Sie beim späteren Zugriff auf das System erkennen, um welche Aufgabe es sich im Einzelnen handelt. www.brain-media.de Neuen Cronjob erstellen 127 7. Legen Sie als Nächstes fest, wann der Auftrag immer ausgeführt werden soll. Sie können diesen beispielsweise täglich oder wöchentlich ausführen lassen oder aber den Zeitpunkt selbst bestimmen. 8. Alternativ bestimmen Sie über die folgenden Auswahlfelder den Zeitpunkt manuell. 9. Ein weiteres Highlight: Über den Bereich Date range to execute können Sie einen Zeitraum festlegen, in dem der Cronjob ausgeführt wird. 10. Mit einem abschließenden Klick auf Erstellen speichern Sie den zeitgesteuerten Auftrag, den Sie dann in der Cronjob-Liste finden. In der Liste können Sie dann über die neue Spalte Verschieben die Reihenfolge anpassen. Die Konfiguration des Cron-Zugriffs. Über die Cronjob-Liste können Sie zudem die Zugriffsberechtigung ändern. Dazu folgen Sie dem Link Benutzerzugriff auf Cron-Aufträge kontrollieren. Hier können Sie festlegen, welche Benutzer Aufträge anlegen und ausführen dürfen. Das zugehörige Formular erlaubt standardmäßig allen Benutzern das Erstellen von Cronjobs. Diese Einstellung sollten Sie in jedem Fall ändern, und nur Benutzern mit entsprechenden Fähigkeiten und Kenntnissen erlauben. Nur so schützen Sie sich vor Angreifern, die durch einen Cronjob beispielsweise automatisch Ihren neu erstellten löschen oder auf ein anderes System kopieren. Das Löschen von Cronjobs ist ebenfalls recht einfach. Markieren Sie die Aufträge, die Sie nicht mehr benötigen, und klicken Sie dann auf die Schaltfläche Delete selected jobs. Webmin kompakt Zeitsteuerung mit Cron und AT 128 Die Modulkonfiguration des Cronjob-Moduls. 7.2 Modulkonfiguration Recht umfangreich fallen die Funktionen für die Modulkonfiguration aus. Sie besteht aus zwei Teilen: den konfigurierbaren Einstellungen und der Systemkonfiguration. Die einen sind, wie Sie der Bezeichnung entnehmen können, anpassbar, die anderen werden durch das Linux-System vorgegeben. Die konfigurierbaren Einstellungen im Einzelnen: · Maximale Kommandozeilenanzahl die angezeigt wird: Hier legen Sie fest, wie viele Kommandozeilen maximal in der Übersicht angezeigt werden. Der Standardwert von 80 scheint etwas zu hoch. Weniger reicht sicherlich auch. · Zeige Prozess-Zeiten? Hier können Sie die Prozesszeiten aktivieren. · Show job comments? Wenn Sie den Kommentar zu dem Auftrag auch in der Job-Liste anzeigen wollen, setzen Sie diesen Schalter auf Yes. www.brain-media.de Modulkonfiguration 129 · Zeige den Status aller Aufträge an? Standardmäßig wird der Status der Cronjobs in der Übersicht aufgeführt. Mit der Option Ja erlauben Sie auch das Starten und Stoppen der Aufträge. · Finde Prozesse durch: Hier legen Sie fest, ob der Prozess durch das Kommando und Argumente oder nur durch das Kommando gefunden wird. Sie sollten die Standardeinstellung beibehalten. · Benutzernamen zusätzlich ermitteln beim Finden von Prozessen? Sie können auch das Finden des Benutzernamens beim Auffinden von Prozessen aktivieren. In der Regel kommt man auch ohne diese Information aus. · Alle Unterprozesse zusätzlich zum Prozess selbst töten? Was diese rabiate Einstellung macht, ist leider nicht klar. In den Systemkonfigurationsinformationen finden Sie die Systemeinstellungen, die Webmin Ihrem System entnimmt. Die Einstellungen im Überblick: · Crontab-Verzeichnis: Hier wird das Verzeichnis aufgeführt, in dem die Cronjob-Tabelle gespeichert ist. Sie sollten die Tabelle nicht manuell, sondern besser mit Webmin editieren. Der Wert lautet meist /var/spool/cron/tabs. Wie bereits erwähnt, wird für jeden Benutzer eine eigene Tabelle erstellt, die dann beispielsweise die Bezeichnung root trägt. · Befehl zum Lesen der Cron-Aufträge eines Benutzers: Hier finden Sie den Befehl zum Einlesen der Cronjobs eines Benutzers. Der Standardwert lautet crontab -u USER –l. An dieser, wie auch den meisten weiteren Einstellungen sollten Sie keine Änderungen vornehmen. Sie dienen mehr Ihrer Information als der Anpassung. · Befehl zum Bearbeiten der Cron-Aufträge eines Benutzers: Hier wird entsprechend der Befehl für das Editieren von Aufträgen angezeigt. Dieser lautet standardmäßig crontab -u USER –e. · Befehl zum Akzeptieren eines Cron-Auftrags eines Benutzers auf stdin: Diese Option können Sie anpassen, indem Sie den Befehl für die Verarbeitung von Benutzereingaben über die Standardeingabe akzeptieren. Das ist standardmäßig nicht vorgesehen. · Befehl zum Löschen eines Cron-Auftrages eines Benutzers: Hier finden Sie den Befehl für das Löschen eines Cronjobs. Dieser lautet crontab -u USER –r. Webmin kompakt Zeitsteuerung mit Cron und AT 130 · Cron unterstützt Eingaben zu Cron-Aufträgen: Die CronjobFunktionalität ist so konfiguriert, dass sie standardmäßig auch Eingaben zu Aufträgen erlaubt. · Datei die erlaubte Benutzer enthält: Hier finden Sie den Pfad zu der Datei, die die Nutzer enthält, die Cronjobs erstellen dürfen. Bei SuSE 10.1 lautet der Pfad beispielsweise /var/spool/cron/allow. · Datei die abgelehnte Benutzer enthält: Hier finden Sie den Pfad zu der Datei mit den abgelehnten Benutzern. Der Pfad kann beispielsweise /var/spool/cron/deny lauten. · Rechte ohne Allow- oder Deny-Dateien: Kommen weder die Allownoch die Deny-Datei zum Einsatz, so legen Sie über die drei folgenden Schalter fest, wer Zugriff hat. Sie haben die Wahl zwischen: Verweigere alle, Verweigere alle außer Root und Erlaube alle. · Unterstützt Vixie-Cron-Erweiterungen: Hier legen Sie fest, ob der Einsatz der Vixie-Cron-Erweiterungen zulässig ist. Diese erlauben beispielsweise die Sicherung um Mitternacht oder die tägliche Sicherung. Behalten Sie diese Einstellung daher bei. · Pfad zur Vixie-Cron System Crontab-Datei: Hier führt die Modulkonfiguration den Pfad zu Vixie-Cron auf. Der lautet beispielsweise /etc/crontab. · Path to single user crontab file: Hier wird der Pfad zur Single-UserCrontab-Datei angezeigt. · Pfad zum Verzeichnis mit zusätzlichen Cron-Dateien: In diesem Textfeld finden Sie den Pfad zu weiteren Cron-Dateien. · run-parts Befehl: In diesem Feld können Sie einen Run-parts-Befehl an Cron übergeben. Der Run-parts-Befehl dient dazu, alle Skripte auszuführen, die sich in einem Verzeichnis befinden. Das hat den Vorteil, dass man mit einem Aufruf mehrere Skripte auf einmal erfassen kann. Die Syntax lautet runparts Verzeichnis. Die Einstellungen speichern Sie mit einem Klick auf Speichern, worauf Sie wieder in der Liste der Cronjobs landen. www.brain-media.de 131 8 Zeitsteuerung mit AT-Befehlen Neben Cron können Sie für die zeitlichgesteuerte Ausführung bestimmter Aktionen auch zu AT greifen. Der Unterschied zu Cron: AT führt die Aktion lediglich einmal aus – im Unterschied zu Cron, das für die sich wiederholende Ausführung konzipiert ist. Die Funktionalität des AT-Formulars ist naturgemäß deutlich einfacher als die des Cronjob-Formulars. Die Nutzung der AT-Steuerung, die übrigens nichts mit den AT-Modem-Befehlen zu tun hat, ist recht einfach. Zunächst legen Sie mit Ausführen als Benutzer den Anwender fest, der den Befehl ausführt. Es folgt die Definition des Ausführungszeitpunkts, des Ausführungsverzeichnisses und der auszuführenden Befehle. Im zweiten Bereich des Formulars legen Sie den oder die Benutzer fest, die die geplanten Aufträge ausführen dürfen. Das war’s auch schon. Auch das AT-Modul besitzt eine Modulkonfiguration. Diese führt ähnlich wie die Cronjob-Modulkonfiguration die wichtigsten Eigenschaften des AT-Befehls auf. Webmin kompakt 132 Laufende Prozesse www.brain-media.de 133 9 Laufende Prozesse Für den sicherheitsbewussten Administrator ist die Prozessverwaltung ein wichtiges Hilfsmittel, um festzustellen, welche Prozesse auf dem System laufen, welche Benutzer für welche Prozesse verantwortlich sind und wie es um die Speicherauslastung steht. All das – und mehr – erfahren Sie im Webmin-Prozessmanager, den Sie mit einem Klick auf Laufende Prozesse öffnen. Ein erster Blick auf den Prozessmanager. Jedes Programm, jeder Server und jeder Befehl, der auf Ihrem System ausgeführt wird, ist ein Prozess. Im Normalbetrieb sind auf Ihrem System nicht selten Duzzende Prozesse aktiv. Bei einigen handelt es sich um Programme, mit denen Webmin kompakt Laufende Prozesse 134 Sie interagieren, andere Prozesse laufen im Hintergrund, wieder andere führen System-Aufgaben durch. Bekanntlich besitzt ein Prozess eine Prozess-ID, gehört einem Benutzer und kann mehreren Gruppen zugeordnet sein. Die Gruppenzugehörigkeit bestimmt in erster Linie die Privilegien, die ein Prozess besitzt. Wenn Sie den Prozessmanager öffnen, so stellen Sie fest, dass er Ihnen zunächst eine Vielzahl von Informationen präsentiert. Sie können die Ansicht über die Anzeigezeile sortieren, und zwar nach der PID, nach Benutzern, dem Speicher und der CPU-Auslastung. Außerdem steht Ihnen eine Suchfunktion zur Verfügung und Sie können über den Link Ausführen gezielt Prozesse starten. Die Übersicht zeigt Ihnen außerdem die durchschnittliche CPU-Auslastung der letzten, der letzten fünf und der letzten fünfzehn Minuten in der Zeile CPU load averages an. Sie finden in der Übersicht außerdem den CPU-Typ des Systems. Wenn Sie die Sortierung beispielsweise nach der Prozess-ID ändern wollen, klicken Sie unter Anzeige auf PID. In dieser Ansicht werden Ihnen vier Informationen angezeigt: · Prozess-ID · Besitzer · Zeitpunkt des Starts · Befehl Wenn Sie die Benutzeransicht aktivieren, finden Sie eine etwas andere Reihenfolge vor: · Prozess-ID · CPU-Auslastung · Zeitpunkt des Starts · Befehldetails In der Speicheransicht werden Ihnen folgende Daten präsentiert: · Prozess-ID · Besitzer · Größe www.brain-media.de Prozessdetails · 135 Befehlsdetails Ein Problem stellt leider die Aktualität der Informationen dar. Diese scheinen nicht kontinuierlich aktualisiert zu werden. Auch eine manuelle Aktualisierung ist im Prozessmanager nicht möglich. Damit schränkt sich der Einsatzbereich dieses Webmin-Moduls leider selbst stark ein. Sie können das leicht nachvollziehen, indem Sie auf eine Prozess-ID klicken. Bei vielen Prozesseinträgen wird als Prozessinformation Dieser Prozess läuft nicht mehr ausgeben. Die Prozessliste entspricht übrigens der Ausführung des Befehls ps x. 9.1 Prozessdetails Generell rufen Sie Prozessdetails ab, indem Sie auf die Prozess-ID klicken. Sofern der Prozess noch aktiv ist, zeigt Ihnen Webmin immer das Feld Prozessinformationen und verschiedene Schaltflächen, mit denen Sie einen Prozess killen können an. Prozesse, die Unterprozesse erzeugen, werden in einem zweiten Bereich angezeigt. Die Prozessdetails von init. Den Prozessdetails können Sie den zugehörigen Befehl, die Prozess-ID, den Benutzer, die Größe, die Gruppenzugehörigkeit, die CPU-Beanspruchung, die Laufzeit und die Prozessgruppen-ID entnehmen. Webmin kompakt Laufende Prozesse 136 Eine Besonderheit stellt das Auswahlmenü Nicelevel dar. Mit dem Nicelevel bestimmt man die Priorität eines Prozesses. Je höher dieser Level ist, desto eher lässt der Prozess anderen Prozessen den Vortritt. Ein Nicelevel von 20 stellt den „freundlichsten“ Prozess dar, bei dem fast immer andere Prozesse Vorrang haben. Ein Level von -20 bewirkt sehr unfreundliche Prozesse, die den Vorrang beanspruchen. Die negativen Level sollte man daher Systemprozessen und root belassen. Es macht Sinn allen Benutzerprozessen einen positiven Nicelevel zu geben. Über das Auswahlmenü können Sie den Level des geöffneten Prozesses ändern. Dabei können Sie aus dem Wertebereich von -20 bis 20 schöpfen. Mit einem Klick auf Ändern speichern Sie die Einstellungen. Unterhalb der Prozessinformationen finden Sie sieben Schaltflächen, über die Sie verschiedene Prozess-spezifische Aktionen durchführen können: · Sende Signal: Mit diesem Kommando können Sie verschiedene Befehle an den Prozess senden. Mit HUB wird beispielsweise die Prozesskonfiguration neu eingelesen, mit STOP halten sie an, bis Sie sie mit CONT wieder fortsetzen. · Terminieren: Hiermit terminieren Sie den Prozess. · Killen: Dient dem „Abschießen“ des Prozesses. · Außer Kraft setzen: Mit einem Klick halten Sie den Prozess an. · Wiederaufnehmen: Hiermit führen Sie ihn wieder aus. · Prozess verfolgen: Hiermit öffnen Sie eine Java-basierte Prozessansicht, die zeigt, wann welche Aufrufe erfolgen und welche Rückgabe erfolgte. · Dateien und Verbindungen: Dieser Link zeigt Ihnen Informationen zu offenen Dateien und Verbindungen, die mit dem Prozess zu tun haben. Der Prozessmanager zeigt auch Informationen zu offenen Dateien an. www.brain-media.de Suche 9.2 137 Suche Einen sehr guten Eindruck hinterlässt die Suchfunktion des Prozessmanagers. Mit dieser können Sie verschiedenste Suchkriterien für die Recherche verwenden. Sie öffnen sie Suche mit einem Klick auf den gleichnamigen Link. Die komfortable Suchfunktion des Prozessmanagers. Wie Sie voranstehender Abbildung entnehmen können, erlaubt das Suchformular die Kombination der Kriterien Benutzer, Dateisystem, Datei, Port, Protokoll und IP-Adresse. Sie können außerdem eine beliebige Zeichenfolge und die CPUBelastung eines Prozesses als Suchkriterium heranziehen. Das Suchergebnis wird in tabellarischer Form ausgegeben und erlaubt den direkten Zugriff auf die gefundenen Prozesse. 9.3 Prozess ausführen Der Prozessmanager stellt Ihnen eine weitere Funktion zur Verfügung: Über das Ausführen-Formular steht Ihnen eine recht überschaubare Funktion zur Verfügung, mit der Sie innerhalb von Webmin typische Aktionen wie die Ausgabe des Verzeichnisinhalts oder auch die Prozessliste ausgeben können. Sie können dabei auch den ausführenden Benutzer und weitere Optionen definieren. 9.4 Modulkonfiguration Auch der Prozessmanager verfügt über eine Modulkonfiguration. Deren Einstellungen sind recht überschaubar. Sie können dort beispielsweise den StandardproWebmin kompakt 138 Laufende Prozesse zesslistenstil anpassen. Konkret ist damit die Sortierreihenfolge anpassbar. Außerdem zeigt die Konfiguration das aktuelle Betriebssystem an. www.brain-media.de Logrotate einsetzen 139 10 Logfile-Rotation Über die Systemsteuerung von Webmin ist auch die Logfile-Rotation möglich. Dabei greift das Administrationswerkzeug auf logrotate zurück. Die auf Ihrem Linux-System installierten Daemons und Programme protokollieren standardmäßig je nach Konfiguration Hinweise und Fehler in einer oder auch mehreren LogDateien. Diese sind meist im Verzeichnis /var/log oder einem weiteren Unterverzeichnis zu finden. Das Problem: Die Protokolldateien haben die Eigenschaft, immer weiter zu wachsen. Durch die zunehmende Größe werden sie unhandlich bei der Auswertung und irgendwann ist der Speicherplatz des Systems bzw. der jeweiligen Partition erschöpft. Einige Daemons wie beispielsweise Samba bieten intern die Möglichkeit, die Größe zu begrenzen, doch leider nicht alle. Da die Protokolldateien an unterschiedlichen Speicherplätzen liegen und oft auch noch leicht unterschiedliche Syntax verwenden, ist eine Lösung gefragt, die den Umgang mit den Protokolldateien vereinfacht. 10.1 Logrotate einsetzen Hier kommt Logrotate ins Spiel. Das bietet die Möglichkeit, den Umgang mit Logdateien u. a. bzgl. Anzahl der aufzubewahrenden Logdateien und RotationsRhythmus wie Zeit oder Größe zu konfigurieren. Die Logfile-Rotation funktioniert häufig nach folgendem Schema: 1. Ältere Logdateien bzw. die Sequenz der Logdateien werden an einen anderen Speicherplatz kopiert, beispielsweise einen externen Netzwerkserver. 2. Dann wird dem Prozess ein Signal gesendet, damit er die aktuell verwendete Logdatei schließt und das Loggen kurzfristig unterbricht oder Daten puffert. 3. Als Nächstes werden die Daten der aktuellen Logdatei in eine neue Datei, z. B. logfile.1, übertragen. 4. Dann löscht oder trunkiert man die aktuelle Logdatei. 5. Nun kann der Prozess das Loggen wieder aufnehmen. Webmin kompakt Logfile-Rotation 140 6. Schließlich werden die Dateien aufgeräumt, komprimiert oder nicht mehr benötigte Dateien gelöscht. All das ist über das Logfile-Rotations-Modul von Webmin möglich. Beim Zugriff auf das Modul stellen Sie fest, dass es einen zweiten Reiter rechts oben besitzt. Dort werden das zugrunde liegende Programm und die Version angezeigt. Je nach Systemkonfiguration finden Sie bereits bei einer neuen Linux-Installation eine Fülle an Rotationsaufträgen. Neben der Logrotate-Version, die zum Einsatz kommt, zeigt Ihnen das WebminModul alle bereits angelegten Rotationsaufträge an. Selbst bei einer Neuinstallation können diese bereits recht umfangreich sein. Zu jedem Auftrag werden drei Informationen angezeigt: · die Protokolldatei samt Pfad · die Rotationsperiode · der Befehl, der nach der Rotation ausgeführt wird www.brain-media.de Logrotate einsetzen 141 Die Eigenschaften eines Rotationseintrags öffnen Sie durch einen Klick auf die Protokolldateibezeichnung. Der zugehörige Dialog entspricht dem, den Sie beim Erstellen eines neuen Auftrags erstellen. Um einen neuen Rotationsauftrag zu erstellen, folgen Sie einfach dem Link Neu zu rotierende Logdatei erstellen. Ein editierter Logrotationsauftrag. Schauen wir uns die verschiedenen Einstellungen an, die Sie beim Erstellen bzw. Editieren eines Rotationsauftrags nutzen können. Die Einstellungen im Einzelnen: · Logdateipfad: In diesem Eingabefeld geben Sie den Pfad zur Protokolldatei an. Dieses lautet beim NTP-Dienst beispielsweise /var/log/ntp. Webmin kompakt Logfile-Rotation 142 · Rotationszeitplan: Hier legen Sie fest, wie oft die Rotation durchgeführt wird. Sie haben die Wahl zwischen folgenden Einstellungen: o Standard (Wöchentlich) o Täglich o Monatlich Für welche Option Sie sich entscheiden, sollte von der Nutzung des Prozesses und dem Umfang der erzeugten Protokolldateien abhängig sein. Sie können beispielsweise die Protokolldateien eines intensiv genutzten Apache-Webservers täglich und die des Zeitservers monatlich rotieren lassen. · Maximale Größe der Logdatei, bevor diese rotiert wird: Hier legen Sie die maximale Größe der Protokolldatei fest, bevor sie ausgetauscht wird. Sie können dabei eine Größenangabe in Kilo- oder Megabyte verwenden. Die entsprechenden Angaben könnten beispielsweise wie folgt aussehen: 100k bzw. 100 M. · Anzahl an alten Logdateien, die aufbewahrt werden sollen: Hier legen Sie fest, wie viele Protokolldateien aufbewahrt werden, bevor sie gelöscht oder per E-Mail verschickt werden. Wenn Sie den Wert Null verwenden, werden alte Versionen gelöscht anstatt rotiert. Webmin bietet Ihnen den Standardwert 4 an. · Komprimiere alte Logdateien? Mit diesem Schalter legen Sie fest, ob die alten Logdateien komprimiert werden sollen oder nicht. Für die Komprimierung greift Webmin zu gzip. Bei sehr umfangreichen Protokolldateien empfiehlt es sich, die Komprimierung zu aktivieren. · Führe Komprimierung erst im nächsten Zyklus aus? Mit diesem Schalter können Sie die Komprimierung auf den nächsten Zyklus verschieben. In der Regel ist das nicht erforderlich. · Kürze Logdatei entsprechend? Sie können eine Protokolldatei kürzen. Auch das ist in der Regel nicht erforderlich. · Logdatei rotieren, auch wenn sie leer ist? Auch die Rotation einer leeren Logdatei ist möglich. In der Regel macht das keinen Sinn. Eine Rotation beim Erreichen einer bestimmten Speicherplatzbelegung erscheint sinnvoller. · Ignoriere Logdatei, wenn sie nicht existiert? Sollte die Protokolldatei nicht existieren, so kann logrotate diese ignorieren. Setzen Sie diese Einstellung auf Nein, damit gegebenenfalls eine Fehlermeldung ausgegeben www.brain-media.de Logrotate einsetzen 143 wird, sollte die Protokolldatei nicht gefunden werden, weil beispielsweise die Pfadangabe nicht korrekt ist. · Erzeuge eine neue Logdatei nach der Rotation? Hier legen Sie fest, ob und wenn ja, mit welchen Rechten eine neue Logdatei nach der Rotation erzeugt wird. Behalten Sie die Einstellung Standard (Ja, mit bisherigen Rechten) bei. · Speichere alte Logdateien in: Mit diesem Feld legen Sie fest, wo die rotierten Dateien gespeichert werden. Standardmäßig werden sie im gleichen Verzeichnis gespeichert. Sie sollten sie in ein anderes Verzeichnis verschieben. Wichtig ist allerdings, dass dieses das gleiche Dateisystem verwendet, wie das, auf dem sie erzeugt wurden. · Dateiendung für die rotierten Logdateien: Hier legen Sie fest, welche Dateierweiterung die rotierten Dateien erhalten. Wenn die Kompression aktiviert ist, bekommen die Logdateien die Kompressionserweiterung (.gz bei gzip) nach der angegebenen Erweiterung. · Maile die Logdatei bevor sie gelöscht wird? Soll die Logdsatei vor dem Löschen per E-Mail verschickt werden, so geben Sie hier die E-MailAdresse an. Standardmäßig wird sie nicht verschickt. · Logdatei, der per E-Mail versendet werden soll: Hier legen Sie fest, welche Protokolldateien verschickt werden sollen. Behalten Sie die Standardeinstellung Standard (Älteste, die danach gelöscht wird) bei. · Befehl, der vor der Rotation ausgeführt wird: Sie können Befehle vor der Rotation ausführen. Diese geben Sie in diesem Eingabefeld an. Sie könnten beispielsweise die Rechte bearbeiten. · Befehl, der nach dem Rotieren ausgeführt werden soll: Entsprechend können Sie auch Befehle nach der Rotation ausführen. Auch hier sind insbesondere Kommandos für das Bearbeiten der Zugriffsrechte zu nennen. Beim NTP-Prozess ist es beispielsweise chmod 644 /var/log/ntp. · Lasse die Skripte nur einmal für alle Dateien laufen? Schließlich können Sie festlegen, ob die Kommandos für alle Dateien einmal ausgeführt werden sollen. Hier ist Vorsicht geboten, damit Sie bei der Befehlsausführung nicht versehentlich Dateien löschen oder eine andere ungewollte Aktion ausführen. Am Fuße des Formulars finden Sie zwei wichtige Schaltflächen: Über Speichern nehmen Sie die Änderungen vor, über Rotate Now erzwingen Sie eine direkte Rotation. Webmin kompakt 144 Logfile-Rotation Die Rotationsübersicht erlaubt zwei weitere wichtige Aktionen: Über die Schaltfläche Editiere Zeitplan können Sie einen Cronjob für die Rotation einrichten. Dazu klicken Sie auf die Schaltfläche Editiere Zeitplan. Außerdem können Sie über die Schaltfläche Force Log Rotation eine unmittelbare Rotation aller Protokolldateien erzwingen. 10.2 Modulkonfiguration Die Modulkonfiguration für das Modul Logdatei-Rotation fällt recht bescheiden aus. Sie können insbesondere die Sortierung der Logdateien anpassen. Standardmäßig werden sie nach der Reihenfolge in der Konfigurationsdatei aufgeführt. Sie können aber auch eine alphabetische Sortierung mit der Option Logdateiname wählen. Die Modulkonfiguration für den Logfile-Austausch. Außerdem zeigt Ihnen die Modulkonfiguration den Pfad zur logrotateKonfigurationsdatei logrotate.conf und den Pfad zu logrotate. www.brain-media.de 145 11 Dateisysteme Dateisysteme sind ein wesentliches Element eines jeden Betriebssystems, denn im Dateisystem sind die Daten eines Computers in Form von Dateien gespeichert. Das Dateisystem selbst ist ein Ordnungs- und Zugriffssystem für diese Daten. Zugriffsroutinen für Dateisysteme sind Bestandteil des Betriebssystems. Meist wird auch das Betriebssystem des Computers ebenfalls in einem Dateisystem gespeichert. Unter Linux werden Dateien in einer Baumhierarchie gespeichert, die dem rootVerzeichnis untergeordnet ist. Laufwerksbuchstaben wie man sie von Windows kennt, gibt es bei Linux nicht. Unter Linux wird mit dem Begriff Mountpoint der Ort in der Verzeichnisstruktur bezeichnet, an dem ein Datenträger eingehängt wird. Um dies zu erreichen, muss ein Verzeichnis vorhanden sein, unter dem die Verzeichnisstruktur des entsprechenden Datenträgers, beispielsweise ein CD-ROM-Laufwerk, eingebunden wird. Danach kann über dieses Verzeichnis auf die CD-ROM zugegriffen werden. Die für das System wichtigen Datenträger bzw. Partitionen werden automatisch beim Systemstart gemountet und beim Herunterfahren wieder ungemountet. Die Dateien, die durch einen Mountpoint eingebunden werden, bezeichnet man als Dateisystem. Nun unterstützt Linux alle relevanten Dateisysteme. Insbesondere das Hinzufügen neuer Mounts ist möglich. Mountpoints werden in der Datei fstab (Filesystem Table) angegeben, in der auch Eigenschaften wie Benutzerrechte, Schreibrechte, Leserechte etc. vordefiniert werden können. Sie finden die fstab-Datei in der Regel in /etc/fstab. Der Zugriff auf diese Informationen erfolgt über das Modul Lokale und NetzwerkDateisysteme. Wie Sie der Modulbezeichnung entnehmen können, erlaubt es nicht nur das Bearbeiten und Erstellen von lokalen Dateisystemen, sondern auch von Netzwerkdateisystemen. Webmin kompakt Dateisysteme 146 Die Übersicht der auf dem System vorhandenen Dateisysteme. Beim Zugriff auf das Dateisystemmodul präsentiert Ihnen dieses folgende Informationen: · Gemountet als: Hier wird die Bezeichnung des Dateisystems bzw. des virtuellen Speichers angegeben. · Typ: Hier listet die Tabelle den Dateisystemtyp auf, also beispielsweise Reiser, Windows NT Filesystem etc. · Ort: Hier erfahren Sie, wo sich das Dateisystem befindet. Neben Partitionen auf Festplatten können auch wie bereits erwähnt Netzwerklaufwerke wie Samba-Shares aufgeführt werden. · Z.Z. benutzt? Zeigt an, ob das Dateisystem in Verwendung ist oder nicht. · Permanent? Zeigt an, ob das Dateisystem permanent aktiv oder deaktiviert ist. Wenn Sie ein neues Dateisystem hinzufügen wollen, so bestimmen Sie zunächst aus dem mächtigen Auswahlmenü den gewünschten Typ. Die für das Erstellen und www.brain-media.de ext3-Dateisystem erstellen 147 für die Konfiguration des jeweiligen Dateisystemtyps verfügbaren Einstellungen sind naturgemäß unterschiedlich. Das Hinzufügen eines NFS-Dateisystems. Wir wollen uns daher das Erstellen von verschiedenen Dateisystemen etwas genauer ansehen. Wenn Sie diese kennengelernt haben, sind Sie problemlos in der Lage, einen der anderen Typen zu erstellen. 11.1 ext3-Dateisystem erstellen Beginnen wir mit einen ext3-Dateisystem, das bei vielen Linux-Systemen als Standarddateisystem verwendet wird. Wählen Sie dazu den Eintrag New Linux Native Filesystem (ext3) aus und klicken Sie auf die Schaltfläche Füge Mount hinzu. Die Einstellungen im Einzelnen (verschiedenen Einstellungen werden Sie bei anderen Dateisystemtypen immer wieder begegnen): · New Linux Native Filesystem Mount-Details: Hier legen Sie allgemeine Eigenschaften des neuen Systems fest. Webmin kompakt Dateisysteme 148 · Gemountet als: Hier legen Sie das Verzeichnis für das neue Dateisystem fest. Existiert es nicht, wird es erstellt. · Speichere Mount? Wenn Sie wollen, dass Ihr neues System beim nächsten Systemstart automatisch gemountet wird, aktivieren Sie die Option Speichern und Mounten beim Bootup. Das Anlegen eines neuen Dateisystems. · Jetzt mounten? Wenn Sie das Dateisystem direkt nutzen wollen, wählen Sie die Option Mounten. · Überprüfe Dateisystem beim Bootup? Mit diesem Schalter legen Sie fest, ob das Dateisystem mit fsck beim Booten überprüft werden soll – und zwar vor dem Mounten. Dazu aktivieren Sie die Option Überprüfe zuerst. Mit der Option Überprüfe als zweites findet der Check nach dem Mounten statt. · New Linux Native Filesystem: Über dieses Auswahlmenü bestimmen Sie die Festplatte bzw. ein anderes Gerät, auf dem die Partition erzeugt werden soll. www.brain-media.de ext3-Dateisystem erstellen 149 Es folgen die erweiterten Mount-Einstellungen, mit denen Sie die allgemeinen Mount-Optionen und die spezifischen ext2- bzw. ext3-Optionen anpassen können. Zuerst sind die allgemeinen Mount-Optionen dran: · Schreibgeschützt? Hier legen Sie fest, ob das Dateisystem schreibgeschützt ist oder nicht. Dabei kommen die Mount-Optionen ro bzw. rw zum Einsatz. · Gepuffertes Schreiben auf dem Dateisystem? Hier bestimmen Sie, ob der Input bzw. Output zum Dateisystem synchronisiert erfolgt oder nicht. Ein synchrones Mounten stellt eine gute Methode dar, die Zuverlässigkeit des Systems zu erhöhen, kann aber auch negative Auswirkungen auf die Performance haben. Die Mount-Option ist sync bzw. async. · Erlaube Gerätedateien? Hiermit legen Sie fest, ob auch Gerätedateien (dev) auf dem neuen Dateisystem gespeichert werden dürfen oder nicht. Die Mount-Option ist dev für das Aktivieren bzw. nodev für das Deaktivieren der Gerätedateiunterstützung. Die Option nodev verhindert, dass Device-Dateien als solche interpretiert werden. Die Option ist aus Sicherheitsgründen insbesondere für CD-ROM-, DVD- und Diskettenlaufwerke sinnvoll. · Erlaube das Ausführen von Programmen? Mit dieser Option legen Sie fest, ob die Ausführung von Programmen zulässig ist oder nicht. Die relevanten Mount-Optionen sind exec bzw. noexec. Diese Optionen legen fest, ob auf dem Dateisystem befindliche Programme unter Linux ausgeführt werden dürfen oder nicht. Bei den meisten Dateisystemen gilt standardmäßig die Einstellung exec. Sicherheitsbewusste Administratoren vergeben für CD-ROM-, DVD- und Diskettenlaufwerke aber die Option noexec. · Verbiete Setuid-Programme? Hier legen Sie fest, dass SUID- und SGID-Bits nicht interpretiert werden. Die zugehörigen Mount-Optionen sind suid und nosuid. · Erlaube Benutzern das Mounten des Dateisystems? Mit dieser Einstellung legen Sie fest, wer das Dateisystem einhängen darf. Wenn Sie die Option Ja verwenden, darf ein normaler Benutzer das Dateisystem einhängen. Ansonsten darf dies nur root. Wenn Sie Nein wählen, darf nur root das Dateisystem einhängen. Die Mount-Optionen lauten user und nouser. Webmin kompakt Dateisysteme 150 Es folgen die ext2/ext3-spezifischen Optionen. Dies sind: · Reservierte Blöcke in Dateisystemgröße einrechnen? Hiermit legen Sie fest, ob die reservierten Blöcke verwendet werden dürfen oder nicht. Die entsprechenden ext-Optionen sind resgid und resuid. · Aktion bei Fehler: Über dieses Auswahlmenü bestimmen Sie, wie bei Fehlern vorzugehen ist. Sie können beispielsweise das Mounten weiter durchführen oder in den Panikmodus wechseln. · Dateien erben übergeordnete GID? Hier legen Sie fest, ob die Dateien die übergeordnete Gruppen-ID erben. In der Regel ist das nicht gewünscht. · Benutze Quoten? Hier bestimmen Sie, ob Sie Speicherplatzbeschränkungen für Benutzer oder Gruppen verwenden wollen. · Reserviere Platz für Benutzer/Gruppe: Mit den beiden letzten Einstellungen bestimmen Sie, ob Sie Speicherplatz für bestimmte Benutzer oder Gruppen reservieren wollen. 11.2 Windows-Dateisystem Befindet Sie auf Ihrem System eine Windows-Partition, so können Sie auch diesen Dateisystemtyp mit Webmin mounten. Windows-Partitionen verwenden entweder das vat- (Windows 95 und seine Nachfolger) oder das NTFS-Dateisystem (Windows 2000, XP und deren Nachfolger). Linux unterstützt beide Typen. Dazu wählen Sie einfach auf der Typenliste Windows Filesystem (vfat) oder Windows NT Filesystem (ntfs). Die Einstellungen für ein NTFS-Dateisystem. www.brain-media.de Automounter 151 Wenn Sie sich die Einstellungen für das NTFS-Dateisystem genauer ansehen, stellen Sie fest, dass diese weit weniger umfangreich ausfallen. Sie finden eigentlich nur zwei NTFS-spezifische Einstellungen: · Benutzerdateien gehören: Hier legen Sie fest, wem die Benutzerdaten gehören. · Gruppendateien gehören: Und hier, wem die Gruppendateien gehören. 11.3 Automounter Wenn Sie bereits mit Windows gearbeitet haben, kennen Sie vermutlich die Autostart-Funktion, die beim Einlegen einer neuen CD oder DVD den geeigneten Player oder das Installationsprogramm startet. Auch unter Linux steht Ihnen eine entsprechende Funktion zur Verfügung: der Automounter. Besitzt Ihr System keine entsprechende Konfiguration, so können Sie diese erzeugen. Mit Automounter können Sie sogar auf einen NFS-Server zugreifen. Das Anlegen eines Automounters. Das Anlegen eines Automounters ist ebenfalls recht einfach. Wählen Sie aus dem Auswahlmenü den Typ New Automounter Filesystem (autofs). Bezeichnen Sie dann das Dateisystem und weisen Sie ihm gegebenenfalls die AutoFS-spezifischen Einstellungen zu. Webmin kompakt 152 Dateisysteme 11.4 Samba-Freigabe Das smbfs ist ein Windows-Protokoll, das den Zugriff auf WindowsNetzwerkfreigaben erlaubt. Wenn Sie in Ihrem Netzwerk Daten für Windows- und Linux-Clients zur Verfügung stellen wollen, so ist dies eine praktikable Lösung. Um ein smbfs-Dateisystem zu erstellen, wählen Sie zunächst den Typ Windows Networking Filesystem (smbfs) aus dem Auswahlmenü aus. Die Konfiguration des smb-Dateisystems. Unter Mount-Details bestimmen Sie zunächst die Bezeichnung und geben dann unter Servernamen den Namen des Servers bzw. dessen IP-Adresse ein, gefolgt von dem Freigabenamen. Da der Zugriff auf eine Windows-Netzwerkfreigabe eigentlich durch eine Kennung und ein Passwort gesichert sein sollte, geben Sie unter den erweiterten MountEinstellungen den Anmeldenamen und das Passwort an. www.brain-media.de Modulkonfiguration 153 11.5 Modulkonfiguration Auch das Modul Lokale und Netzwerk-Dateisysteme besitzt eine Modulkonfiguration, in der Sie verschiedene Einstellungen bearbeiten bzw. einsehen können. Wie Sie es von anderen Modulkonfigurationen kennen, erlaubt diese die Anpassung verschiedener Einstellungen und präsentiert Ihnen verschiedene systemspezifische Konfigurationen. Die konfigurierbaren Optionen: · Server, von dem Browser-Liste geholt werden soll: Hier legen Sie fest, von wo sich Webmin die Informationen zu Windows-Freigaben holt. · Benutze lange Dateisystem-Typen: Standardmäßig werden lange Dateisystemtypen verwendet. · Sortiere Dateisysteme nach: Hier legen Sie die Sortierung der Dateisysteme fest. Sie haben die Wahl zwischen folgenden Optionen: · o Einhängepunkt o Art o Reihenfolge in Datei Delete directory when un-mounting if under: Schließlich können Sie das Löschen des Verzeichnisses erzwingen. Die Konfiguration des Dateisystemmoduls. Webmin kompakt 154 Dateisysteme Unter Systemkonfiguration erfahren Sie schließlich, wo die fstab-Datei zu finden ist. Außerdem werden die Pfade zum smbclient und zu nmblookup aufgeführt. www.brain-media.de 155 12 PAM-Authentifizierung Über Webmin ist auch die Steuerung der PAM-Authentifizierung möglich. Die zugehörigen Funktionen finden Sie hinter dem gleichnamigen Link in der Webmin-Systemsteuerung. PAM (Pluggable Authentication Modules) ist eine Softwarebibliothek, die eine allgemeine Programmierschnittstelle (API) für Authentisierungsdienste zur Verfügung stellt. Die Funktionsweise von PAM ist recht einfach: Statt die Einzelheiten der Authentisierung in jeder Applikation neu zu formulieren, bietet die PAM-API einen standardisierten Dienst in Form von Modulen an. Die PAM-Übersicht. Webmin kompakt PAM-Authentifizierung 156 In einer Konfigurationsdatei kann der Systemadministrator die Authentisierungsmodule einzelnen Diensten zuordnen, ohne dafür die Software, die diese Dienste realisiert, neu kompilieren zu müssen. Damit vereinfacht sich die Zuweisung von Berechtigungen natürlich erheblich – vorausgesetzt, man kann die Technik richtig einsetzen. 12.1 PAM-Basics Um das PAM-Modul effektiv einsetzen zu können, muss man sich zumindest mit den Grundlagen von PAM ein wenig auseinandersetzen. PAM verwendet mehrere Konfigurationsdateien, die in der Regel im Verzeichnis /etc/pam.d/ liegen. Ein Beispiel für die PAM-Konfiguration des Cron-Daemons: # # The PAM configuration file # for the cron daemon # auth sufficient pam_rootok.so auth include common-auth account include common-account password include common-password session common-session include Für jedes Programm ist dort jeweils eine Konfigurationsdatei zu finden. Diese Konfigurationsdateien enthalten pro Zeile eine Anweisung bzw. einen Kommentar oder eine Leerzeile. Eine Anweisung besteht aus drei oder mehr Argumenten. Das erste Argument vom Typ type zeigt PAM, welche Art von Authentifikation für ein Modul vollzogen werden soll. Auch die Nutzung mehrerer Module der gleichen Art ist möglich. In einem solchen Fall muss der Benutzer alle Anforderungen der verschiedenen Module erfüllen. PAM kennt vier verschiedene Typen vom Typ type: · account: Spezifiziert, ob sich ein Benutzer einloggen darf. · auth: Prüft, ob ein Benutzer auch derjenige ist, für den er sich ausgibt. · password: Erlaubt dem Benutzer über diese Applikation sein Passwort zu ändern. www.brain-media.de PAM-Basics · 157 session: Setzt dem Benutzer nach der Authentifizierung seine Umgebung. Das zweite Argument vom Typ control bestimmt, welche Aktion unternommen wird, wenn die Authentifizierung fehlschlägt. Hierfür gibt es folgende Möglichkeiten: · requisite: Ein Authentifizierungsfehler in diesem Modul führt zu direkten Abbruch der kompletten Authentifizierung. · required: Ein Authentifizierungsfehler in diesem Modul führt zu einem Abbruch der Authentifizierung, aber Module mit dem gleichen Typ können noch abgearbeitet werden. · sufficient: Ist die Authentifizierung mit diesem Modul erfolgreich, ist es die Authentifizierung auch, selbst wenn ein vorheriges Modul nicht erfolgreich war. · optional: Dieses Modul ist nur signifikant, wenn es das einzige Modul für diesen Dienst ist. Das dritte Argument bestimmt, welches Modul PAM verwenden soll und optional, wo dieses zu finden ist. Die meisten Konfigurationsanweisungen enthalten nur den Namen. In diesem Fall schaut PAM in dem vorgegebenen Konfigurationsverzeichnis nach. Ansonsten wird im vollqualifizierten Pfad nach dem Modul gesucht. PAM kann außerdem noch weitere Optionen für die jeweiligen Module verwenden. Wird beispielsweise die Option pam unix.so übergeben, so werden leere Passwörter akzeptiert. Beim Zugriff auf das PAM-Modul listet das Modul all jene Dienste auf, die bereits für das Zusammenspiel mit PAM konfiguriert sind. Wenn Sie einen neuen PAMDienst erstellen wollen, klicken Sie auf Add a new PAM service, geben den Servicenamen und eine Beschreibung an. Außerdem legen Sie fest, welche PAMModule zum Einsatz kommen. Mit einem Klick auf Erstellen landen Sie in der RAM-Dienstliste, über die Sie den neuen Eintrag editieren können. Webmin kompakt PAM-Authentifizierung 158 Ein editierter PAM-Eintrag. Sie editieren einen Eintrag, indem Sie auf dessen Service-Bezeichnung klicken. In der editierten Ansicht erkennen Sie sehr schön die Einstellungen für die vier Schritte Authentifizierung, Verifizierung, Session-Einstellungen und Passwortänderung. Jedem dieser Schritte können Sie nun PAM-Module zuweisen. In voranstehender Abbildung ist beispielsweise der CUPS-Dienst editiert. Diesem ist bereits das Modul common-auth zugewiesen. Um Einstellung zu ändern, wählen Sie ein neues Modul aus der Auswahlliste aus und bestätigen mit Add Step for. Es öffnet sich ein weiterer Dialog, in dem Sie die Eigenschaften des Moduls bestimmen. In den Moduloptionen werden Ihnen drei Einstellungen angezeigt: · Über das Auswahlmenü Failure level bestimmen Sie eine der vier Aktionen, die beim Fehlschlagen der Authentifizierung durchgeführt werden. Die möglichen Aktionen (Required, Requisite, Sufficient und Optional) sind bereits oben beschrieben. Außerdem können Sie über das Feld Module arguments weitere Schalter an das Modul übergeben. Für eine detaillierte Beschreibung sei auf die PAM-Dokumentation verwiesen, über die Sie in der PAM-Liste (Suche in der Hilfe) zugreifen. www.brain-media.de Modulkonfiguration 159 Die Eigenschaften des neuen PAM-Moduls. · Über die PAM-Moduloptionen können Sie diese aktuelle Konfiguration auch löschen. Dazu klicken Sie am rechten Rand auf die Schaltfläche Löschen. · Mit einem Klick auf Speichern landen Sie wieder im Editiermodus. Wenn Sie in einem Schritt mehrere PAM-Module zugewiesen haben, können Sie deren Reihenfolge über die Spalte Move verändern. Sollten Sie den PAM-Service nicht mehr benötigen, so öffnen Sie dessen Eigenschaften und klicken auf die Schaltfläche Delete PAM Service am unteren Ende des Formulars. 12.2 Modulkonfiguration Die Modulkonfiguration für das PAM-Modul liefert Ihnen verschiedene Informationen über den Pfad des PAM-Konfigurationsverzeichnisses und die PAMBibliotheken. Außerdem können Sie die zu ignorierenden Dateien und die äquivalenten Module festlegen. Die PAM-Modulkonfiguration. Webmin kompakt 160 PAM-Authentifizierung www.brain-media.de 161 13 Umgang mit Passwörtern Über die Webmin-Systemverwaltung können Sie außerdem recht einfach das Benutzerpasswort ändern. Webmin stellt Ihnen hierfür eine Schnittstelle zum Kommando passwd zur Verfügung. Mit einem Klick auf Passwort ändern öffnet sich die Liste der bereits vorhandenen Systembenutzer. Um beispielsweise Root ein neues Passwort zuzuweisen, klicken Sie auf den Root-Eintrag. Um dem Benutzer ein neues Passwort zuzuweisen, geben Sie es in das Passwortfeld ein und wiederholen die Eingabe im Feld Neues Passwort (bestätigen). Damit die Änderung auch in anderen Modulen greift, sollten Sie die Option Das Passwort auch in anderen Modulen ändern aktivieren. Das Ändern eines Benutzerpassworts. Die Modulkonfiguration erlaubt vier Anpassungen: · Maximalanzahl anzuzeigender Benutzer: Hier legen Sie fest, wie viele Benutzer maximal in der Übersicht angezeigt werden. Der Standardwert lautet 200 und muss gegebenenfalls nach oben korrigiert werden. · Art der Benutzerauswahl: Das Passwort-ändern-Modul präsentiert die Benutzer standardmäßig als Textfeld. Sie können diese aber auch über ein Webmin kompakt Umgang mit Passwörtern 162 Auswahlmenü auswählen, indem Sie sich für die Option Auswahlfeld entscheiden. · Sortiere Benutzer nach: Hier bestimmen Sie die Reihenfolge, in der die Benutzer aufgeführt werden. Standardmäßig werden Sie in der Reihenfolge angezeigt, in der Sie in der Benutzerdatei eingetragen sind. Sie können die Sortierung aber auch nach dem Benutzernamen ändern. · Befehl zur Passwort-Änderung: Hier legen Sie fest, ob die Änderung direkt in die Systemdateien geschrieben wird oder ob Sie ein benutzerdefiniertes Kommando bevorzugen. www.brain-media.de 163 14 Software-Pakete Ein Linux-System – unabhängig davon, ob Sie es als Server oder Workstation einsetzen – lebt von Anwendungen. Diese werden durch Software-Pakete bereitgestellt, die mehr oder minder komplexe Aufgaben erledigen. Manche Anwendungen sind abhängig von anderen und nur mit der Installation notwendiger Komponenten lauffähig. Alles in allem ist die Software-Verwaltung eine komplexe Sache. Für die Installation und Deinstallation von Programmen bieten sich mehrere Wege an. Sie können das manuell oder mithilfe eines Paketmanagers erledigen. Der Wichtigste ist RPM (Red Hat Paket Manager). Dieses Installationskonzept wurdevon Red Hat entwickelt und als Open-Source der Linux-Gemeinschaft zur Verfügung gestellt. Die RPM-Technik erlaubt es, Software zu installieren, zu deinstallieren, zu aktualisieren oder eine Installation zu prüfen. Die Webmin-Software-Verwaltung. Webmin kompakt 164 Software-Pakete Webmin stellt Ihnen über seine Webschnittstelle eine einfache SoftwareVerwaltung zur Verfügung, die auf den Funktionen des RPM-Managers basiert. 14.1 Umgang mit dem Paketmanager Der Paketmanager stellt Ihnen zunächst einmal die Suchfunktion zur Verfügung, mit der Sie prüfen können, ob ein bestimmtes Paket verfügbar ist. So können Sie schnell prüfen, ob eine gewünschte Anwendung oder Komponente bereits installiert ist. Wird die Suche fündig, gibt sie Ihnen einen mehr oder minder umfangreichen Bericht aus, dem Sie beispielsweise entnehmen können, welche Version installiert ist und wann sie installiert wurde. Die Paketdetails, die von der Suche ausgegeben werden. Über die Schaltfläche Dateien auflisten können Sie außerdem die Paketdateien ausgeben. Auch die Deinstallation des Pakets ist über die gleichnamige Schaltfläche möglich. Die Suchfunktion unterliegt allerdings einer erheblichen Einschränkung: Wird die Suche nicht fündig, gibt Sie lediglich eine kurze Meldung aus, dass keine Pakete gefunden werden konnten. Eine Installation ist nicht möglich – im Unterschied zu YaST und anderen Lösungen. www.brain-media.de Umgang mit dem Paketmanager 165 Neben der Suche finden Sie eine weitere nützliche Funktion: den Paketbaum (Package Tree). Mit diesem Baum können Sie durch die verschiedenen Paketäste navigieren. Der Paketbaum. Die Installation eines neuen Pakets ist recht einfach, solange es sich um ein RPMPaket handelt. Unter Neues Paket installieren bestimmen Sie den Speicherort der RPM-Datei. Sie haben die Wahl zwischen: · lokaler Datei · heraufgeladener Datei · FTP- oder HTTP-Server · Suche in rpmfind Wenn Sie die Datei ausgewählt haben, klicken Sie einfach auf Installieren. Webmin kompakt Software-Pakete 166 Die folgenden Installationsoptionen sind von Linux-Distribution zu LinuxDistribution unterschiedlich. In der Regel können Sie Abhängigkeiten ignorieren (was Sie aber nicht tun sollten), eine neuere Version durch eine ältere ersetzen und Dateien überschreiben. Für welche Option Sie sich am besten entscheiden, muss im Einzelfall abgewägt werden. Die Dateiinformationen verraten Ihnen, zu welchem Paket ein Befehl gehört. Wenn Sie zwar einen Befehl eines Pakets kennen, nicht aber dessen Paketbezeichnung, so können Sie diese durch das Suchfeld Datei identifizieren herausfinden. Angenommen Sie wollen wissen, zu welchem Paket der Passwortbefehl passwd gehört, dann uchen Sie nach passwd. Das Ergebnis verrät Ihnen, dass der Befehl zu den pwutils gehört. 14.2 Modulkonfiguration Auch das Software-Paket-Modul besitzt eine Modulkonfiguration, in der Sie zwei Anpassungen vornehmen können: · System-Paket-Managementsystem: Hier legen Sie fest, ob Sie RPM oder ein anderes Paketmanagementsystem verwenden. · Update-System: Hier legen Sie fest, welches Update-System zum Einsatz kommen soll. Es empfiehlt sich, die Standardvorgabe Detect automatically beizubehalten. www.brain-media.de Modulkonfiguration 167 15 System-Protokolldateien Für den Systemadministrator sind die System-Protokolldateien eine der wichtigsten Informationsquellen, wenn er wissen will, wie es einem System so geht. Da in Linux-Systemen nahezu jede Aktion protokolliert werden kann, kann man (fast) immer nachvollziehen, was wann wo passiert oder eben schiefgelaufen ist. Logging wird gerade aus Sicherheitsgründen immer wichtiger, denn man kann beispielsweise im Nachhinein erkennen, wann und wo im System ein Einbruchsversuch gelaufen ist. Einziges Problem: Der Standard-Syslog-Daemon unter Linux ist in vielerlei Hinsicht sehr eingeschränkt. Er wurde inzwischen durch die Weiterentwicklung Syslog-NG abgelöst. Inzwischen nutzen alle wichtigen Distributionen diese Variante. Dank Webmin haben Sie auch Zugriff auf die von Syslog-NG produzierten Daten. Über das Webmin-Modul können Sie Syslog-NG entsprechend Ihren Anforderungen anpassen. Sie können Log-Sourcen erstellen, Filter und Ziele definieren. Die zugehörigen Protokolldateien finden Sie in der Regel im Verzeichnis /var/log. Die Konfigurationsdatei für Syslog-NG (syslog-ng.conf) ist unter /etc/syslog-ng zu finden. Über die Syslog-NG-Funktionen passen Sie nicht nur die Syslog-Einstellungen und die zu protokollierenden Prozesse an, sondern Sie können die Protokolldateien auch einsehen. Webmin kompakt 168 Bevor Sie sich mit den Protokolldateien auseinandersetzen, machen Sie sich am besten zunächst an die Protokolloptionen. Überfliegen Sie die Standardeinstellungen, ob diese Ihren Vorstellungen entsprechen. Die Konfiguration der Protokollierung. Für den Anfang genügt es, wenn Sie die Standardeinstellungen beibehalten. www.brain-media.de 169 16 Systemstart Hinter dem Link System-Start und Stop verbergen sich die Anpassungsmöglichkeiten für das Booten und das Herunterfahren Ihres Systems. Konkret geht es also darum, welche Anwendungen beim Systemstart in welchen Einstellungen geladen werden. Die Einstellungen für das Booten und Herunterfahren Ihres Systems. Mit diesem Webmin-Modul können Sie die Skripts editieren und bearbeiten, die beim Starten bzw. Herunterfahren Ihres Systems ausgeführt werden. Wenn Sie auf das Modul zugreifen, listet es Ihnen eine Vielzahl von Aktionen auf, die bereits in den Systemstart eingebunden sind bzw. in diesen eingebunden werden können. Webmin kompakt Systemstart 170 Neben der Aktion führt das Formular den Status (ob die Aktion beim Systemstart ebenfalls gestartet wird oder nicht) und eine Kurzinfo auf. 16.1 Dienst bearbeiten Schauen wir uns genauer an, welche Funktionen dieses Modul zu bieten hat. Der Einfachheit halber schauen wir uns die Einstellungen eines Dienstes an, von dem wir wissen bzw. vermuten, dass er beim Systemstart geladen wurde. Nehmen wir beispielsweise das Drucksystem, das bei Standardsystemen immer installiert ist. Suchen Sie in der Aktionsliste einfach den Eintrag cups. In der Statusspalte sollte die Info Ja zu finden sein, die Ihnen anzeigt, dass das Drucksystem gestartet ist. Das Bearbeiten des CUPS-Dienstes. Der Editierdialog führt zunächst die Dienstbeschreibung und dann das eigentliche Skript auf. Wichtig für die Ausführung ist der Schalter Start beim Systemstart. Hier legen Sie fest, ob der Dienst nun automatisch gestartet wird oder nicht. Es folgen verschiedene nützliche Schaltflächen, über die Sie den Dienst steuern können: · Speichern: Mit einem Klick übernehmen Sie Änderungen an dem StartSkript. · Jetzt starten: Diese Schaltfläche erlaubt das manuelle Starten des Dienstes. www.brain-media.de Dienst bearbeiten 171 · Jetzt neu starten: Erlaubt das erneute Starten des Dienstes. · Zeige Status: Mit dieser Prüffunktion können Sie den Status des Druckdienstes abrufen. Der kann beispielsweise Running für Laufend ausgeben. · Jetzt stoppen: Mit einem Klick halten Sie den Dienst sofort an. Diese Funktion benötigen Sie beispielsweise, wenn Sie Änderungen an dem Startskript durchführen wollen. · Löschen: Mit der letzten Schaltfläche können Sie schließlich den Dienst löschen. Hier erfahren Sie, wie es um den Status des CUPS-Dienstes bestellt ist. Die Anpassung eines Start-Skripts ist sicherlich nichts für unbedarfte Anwender. Hier ist eine Menge Hintergrundwissen zum jeweiligen Dienst und zum BootVorgang als solchem erforderlich. Damit Sie einen Eindruck bekommen, wie ein solches Skript aussehen kann, hier ein Ausschnitt aus dem CUPS-Skript: # /etc/init.d/cupsd # # and symbolic its link # # /sbin/rccupsd # # System startup script for the CUPS printer daemon # ### BEGIN INIT INFO # Provides: cupsd Webmin kompakt 172 Systemstart # Required-Start: $local_fs $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Should-Start: slpd printbill hplip earlykdm hotplug named portmap ptal # Should-Stop: portmap # Default-Start: 2 3 5 # Default-Stop: 0 1 6 # Description: Start CUPS printer daemon ### END INIT INFO # Source SuSE config, only if exists with size greater zero test -s /etc/rc.config && \ . /etc/rc.config # Shell functions sourced from /etc/rc.status: # rc_check status check and set local and overall rc # rc_status status check and set local and overall rc # rc_status -v status ditto but be verbose in local rc # ditto and clear the local rc status rc_status -v -r # rc_failed failed set local and overall rc status to # rc_failed <num> <num><num> set local and overall rc status to # rc_reset mains) clear local rc status (overall re- # exit appropriate to overall rc status rc_exit CUPSD_BIN=/usr/sbin/cupsd test -s /etc/rc.status && \ www.brain-media.de Dienst bearbeiten 173 . /etc/rc.status test -s /etc/sysconfig/cups && \ . /etc/sysconfig/cups test -x $CUPSD_BIN || exit 5 # First reset status of this service rc_reset # Return values acc. to LSB for all commands but status: # 0 - success # 1 - generic or unspecified error # 2 - invalid or excess argument(s) # 3 - unimplemented feature (e.g. "reload") # 4 - insufficient privilege # 5 - program is not installed # 6 - program is not configured # 7 - program is not running # # Note that starting an already running service, stopping # or restarting a not-running service as well as the restart # with force-reload (in case signalling is not supported) are # considered a success. # change umask to avoid problems in wrong file permission of /etc/printcap # (SuSE buzilla #16567) umask 022 case "$1" in Webmin kompakt Systemstart 174 start) echo -n "Starting cupsd" … … Am Fuße der Dienstliste finden Sie weitere wichtige Funktionen. Am unteren Ende des Formulars finden Sie verschiedene weitere nützliche Funktionen, mit denen Sie insbesondere typische Aktionen auf mehrere Dienste anwenden können. Konkret stehen Ihnen folgende Funktionen zur Verfügung: · Starte ausgewählte: Mit einem Klick auf diese Schaltfläche starten Sie all die Dienste, die Sie in der linken Spalte markiert haben. · Stoppe ausgewählte: Entsprechend können Sie alle markierten Dienste mit einem Klick anhalten. · Restart selected: Ein Klick führt einen Neustart der ausgewählten Dienste durch. Der Einsatz dieser Funktion ist beispielsweise sinnvoll, wenn Sie an mehreren Diensten Änderungen vorgenommen haben und deren Wirkung im Zusammenspiel testen wollen. www.brain-media.de Dienst bearbeiten 175 · Aktiviere ausgewählte zur Bootzeit: Mit einem Klick auf diese Schaltfläche sorgen Sie dafür, dass die ausgewählten Dienste beim nächsten Systemstart ebenfalls gestartet werden. So können Sie den Boot-Vorgang einfach um weitere Dienste erweitern. · Deaktiviere ausgewählte zur Bootzeit: Auch der umgekehrte Weg steht Ihnen offen. Wenn Sie markierte Dienste aus dem Boot-Vorgang herausnehmen wollen, markieren Sie die Dienste und klicken auf diese Schaltfläche. · Jetzt starten & zur Bootzeit aktivieren: Ein Klick startet die aktivierten Dienste und führt sie zudem beim nächsten Systemstart automatisch aus. · Jetzt stoppen & zur Bootzeit deaktivieren: Entsprechend können Sie Dienste manuell anhalten und für die Zukunft aus dem Boot-Vorgang herausnehmen. Das Formular für das Erstellen eines neuen Start- und Stopp-Dienstes. Über den Link Einen neuen Start- und Stop-Dienst erstellen können Sie die Standardliste um weitere Dienste erweitern. Dazu folgen Sie dem Link und geben in Webmin kompakt Systemstart 176 das zugehörige Formular der Reihe nach eine Bezeichnung, eine Beschreibung sowie die Start- und dann die Herunterfahren-Kommandos an. Schließlich bestimmen Sie, ob der neue Dienst beim nächsten Systemstart gestartet werden soll oder nicht. Es folgen drei weitere Funktionen: · Wechsle zum Runlevel: Mit dieser Funktion können Sie Ihr System vom aktuellen zum ausgewählten Runlevel umschalten. Die Funktion stoppt alle Dienste im aktuellen Runlevel und startet danach alle Dienste des neuen Runlevels. Achtung: Es kann sein, dass Webmin nach der Ausführung nicht mehr zur Verfügung steht! Seien Sie daher vorsichtig bei Änderungen des Runlevels. · System neu starten: Klicken Sie auf diese Schaltfläche, um das System sofort neu zu starten. Alle im Moment eingeloggten Benutzer werden vom System getrennt und alle Dienste werden neu gestartet. · System herunterfahren: Ein Klick auf diese Schaltfläche fährt das System jetzt sofort herunter. Dabei werden alle Dienste gestoppt, alle Benutzer getrennt und das System abgeschaltet (vorausgesetzt, Ihre Hardware unterstützt das). 16.2 Modul-Konfiguration Auch das System-Start- und -Stopp-Modul verfügt über eine Modulkonfiguration, mit der Sie verschiedenste Anpassungen vornehmen können. Die Modulkonfiguration umfasst drei Bereiche mit jeweils mehr oder minder vielen Einstellungen: · Konfigurierbare Optionen: Hier finden Sie die Einstellungen, die über Webmin anpassbar sind. Sie können beispielsweise die Sortierreihenfolge anpassen, und zwar alphabetisch und nach der Boot-Reihenfolge. · Systemkonfiguration: Hier finden Sie die Einstellungen für die Bootund Herunterfahren-Konfiguration Ihres Linux-Systems. Konkret beispielsweise die Kommandos für den Shutdown oder die Verzeichnisse, in denen die Init-Skripts liegen. · OSX system configuration: Hier können Sie verschiedene OSXEinstellungen anpassen. www.brain-media.de Modul-Konfiguration Die Modulkonfiguration. Webmin kompakt 177 178 Systemstart www.brain-media.de 179 17 Systemdokumentation Mit dem letzten System-spezifischen Webmin-Modul können Sie Anpassungen der Systemdokumentation vornehmen. Konkret erlaubt Ihnen dieses Modul, die System-Handbücher so zu durchsuchen, als ob Sie den man-Befehl benutzen. Die Einstellungen für die Systemdokumentation. Die Handhabung der Funktion ist einfach: Geben Sie einfach den Befehl oder die Funktion in das Suchfeld Suche nach ein, zu der Sie Informationen suchen. Bestimmen Sie mit den Schaltern Alle Worte bzw. Beliebige Worte, ob Sie nach einer exakten Übereinstimmung für den Befehlsnamen oder ein Wort in der Beschreibung suchen. Dann bestimmen Sie, ob Titel oder Titel und Inhalt der Manpages durchsucht werden sollen, wählen den Handbuchbereich für die Suche und drücken die Suchen-Schaltfläche. Webmin kompakt 180 Systemdokumentation Über Suche in können Sie neben den Manpages auch die Webmin-Hilfe, Paket-, KDE-, und Perl-Modul-Dokumentationen und sogar die Google-Suchmaschine für Ihre Recherche einbinden. Wenn Sie nach einer exakten Übereinstimmung suchen, wird die Handbuchseite für den Befehl oder die Funktion angezeigt, wenn sie gefunden wird. Wenn Sie nach einer Beschreibung suchen, wird Ihnen eine Liste der übereinstimmenden Handbücher angezeigt, damit Sie die anzuzeigenden Befehle/Funktionen auswählen können. Sie sehen: Auch die weitere Informationssuche zu spezifischen Themen ist mit Webmin kein Problem. www.brain-media.de 181 18 Apache-Webserver Neben der Systemkonfiguration taugt Webmin zur zentralen Steuerung wichtiger Server. Die zugehörige Funktion für die Konfiguration von über zwanzig gängigen Servern ist über die Server-Kategorie zugänglich. Ein erster Blick auf die Server-Übersicht. Sie können mit Webmin beispielsweise den Apache-Webserver, den MySQLDatenbankserver und auch den Samba-Server administrieren. Es liegt in der Natur der Sache, dass die Funktionalität der Webmin-Module sich nicht mit Spezialisten wie phpMyAdmin für die MySQL-Administration messen kann. Doch das ist in der Praxis meist auch nicht erforderlich. Die Webmin-Module beschränken sich auf zentrale Aufgaben, denen Sie sich im Admin-Alltag stellen müssen. Für Sie als sicherheitsbewussten Administrator ist in diesem Zusammenhang wichtig, dass Sie neben kritischen Systemen wie einem Apache-Webserver auch Webmin kompakt 182 Apache-Webserver Sicherheitsspezialisten wie den SSH-Server, Spamassassin und den Squid-ProxyServer verwalten können. Über den Apache-Server und seine Bedeutung für moderne IT-Infrastrukturen muss man an dieser Stelle sicherlich nicht viele Worte verlieren. Er ist ein essenziell wichtiges Tool für nahezu jedes Netzwerk. Da er immer häufiger auch als Grundlage von Business-Anwendungen wie Content-Managementsystemen, Online-Shops, CRM-Systemen und dergleichen mehr dient, kommt man als Admin kaum um den Server herum. Die Funktionen des Apache-Moduls. Mithilfe des Webmin-Moduls können Sie alle wichtigen Konfigurationen erstellen und bearbeiten. Selbst das Erstellen von virtuellen Servern und Benutzern/Gruppen ist mit Webmin einfach durchzuführen. Das Webmin-Modul präsentiert Ihnen auf seiner Übersicht mehrere Register: Auf dem Register Global configuration erfolgt die allgemeine Apache-ServerKonfiguration, auf den Registern Existing virtual hosts und Create virtual host verwalten und erstellen Sie virtuelle Server. In der Regel ist keine Modulanpassung bei Einsatz des Apache-Moduls erforderlich, denn Webmin liest meist die bestehenden Apache-Konfigurationen korrekt ein. Sollte noch kein Apache-Webserver installiert sein, weist Sie das Modul auf eine fehlerhafte Modulkonfiguration hin, die ihren Grund auch im Fehlen des Servers haben kann. Im Kopfbereich finden Sie neben der Modulkonfiguration zwei weitere Links, über die Sie den Apache starten bzw. anhalten und die Apache-relevanten Dokumente durchstöbern können. www.brain-media.de Globale Apache-Einstellungen 183 Die Funktionen des Apache-Moduls. 18.1 Globale Apache-Einstellungen Widmen wir uns zunächst der Server-übergreifenden Konfiguration. Die globale Apache-Konfiguration umfasst zehn Konfigurationsbereiche. Über den Link Prozesse und Grenzwerte können Sie den Apache in seine Grenzen weisen. Hier können Sie insbesondere die maximale Anzahl an Server-Prozessen definieren. Bei Standardinstallationen sind an den Voreinstellungen meist keine Anpassungen erforderlich. Wie Sie im weiteren Verlauf dieses Kapitels noch sehen werden, können Sie für virtuelle Server spezifischere Einstellungen vornehmen. Hinter dem Link Netzwerk und Adressen verbergen sich die Netzwerkeinstellungen Ihres Apache-Systems. In dem zugehörigen Formular legen Sie fest, auf welche Adressen und Ports Ihr Server lauscht – und auf welche nicht. Diese tragen Sie einfach in das Adressenfeld samt zugehörigem Port ein. Sie können außerdem Adressen für die Namen der virtuellen Server und die maximal zulässige Anzahl an Requests pro Verbindung bestimmen. Die letztgenannte Konfiguration ist wichtig, um sich vor Attacken von außen zu schützen. Webmin kompakt Apache-Webserver 184 Die Netzwerkeinstellungen für Ihren Apache-Webserver. Hinter dem Link MIME-Typen sind die gleichnamigen Typen definiert. Sie definieren, um welche Art von Daten es sich handelt. Ein MIME-Typ besteht aus zwei Teilen: der Angabe eines Medientyps und der Angabe eines Subtyps. Beide Angaben werden durch einen Schrägstrich voneinander getrennt (z. B. application/ghostview oder image/jpeg). Es gibt folgende Medientypen: · text – für Text · image – für Grafiken · video – für Videomaterial · audio – für Audiodaten · application – für uninterpretierte binäre Daten, Mischformate oder Informationen, die von einem bestimmten Programm verarbeitet werden sollen · multipart – für mehrteilige Daten · message – für Nachrichten, beispielsweise message/rfc822 · model – für Daten, die mehrdimensionale Strukturen repräsentieren www.brain-media.de Globale Apache-Einstellungen 185 Die Konfiguration der MIME-Typen. Die Apache bekannten MIME-Typen samt den oben erwähnten Typinformationen finden Sie in der globalen MIME-Typenliste. Wie Sie dem Formular entnehmen können, werden die Einstellungen in der Datei /etc/apache2/mime.types verwaltet. Über den Link Einen neuen MIME-Typ hinzufügen können Sie durch Angabe der Typenbezeichnung und der Erweiterung die Liste erweitern. Die Benutzer- und Gruppeneinstellungen für Ihren Apache. Es folgt der Link Benutzer und Gruppe. Dessen Einstellungen sind ebenfalls recht einfach. Hier können Sie den Benutzernamen und den Gruppennamen des ApacheWebmin kompakt 186 Apache-Webserver Servers einsehen und ändern. Die Benutzer- und Gruppen-ID werden nicht angezeigt, können allerdings über das gleichnamige Eingabefeld geändert werden. Wenn Sie wissen wollen, welches die aktuellen IDs sind, wechseln Sie zur Kategorie System und öffnen Sie das Modul Benutzer und Gruppen. Dort finden Sie die Systembenutzer und -gruppen. Unter Verschiedenes können Sie eine Handvoll Anpassungen vornehmen. So können Sie beispielsweise bestimmen, welche Informationen im Header enthalten sind. Standardmäßig sind im HTTP-Header die Apache-Version und das Betriebssystem enthalten. In den meisten Fällen sind auch bei den Apache-übergreifenden CGI-Einstellungen keine Änderungen vorzunehmen. Für die allgemeine Zugriffssteuerung ist die Konfiguration der Per-DirectoryEinstellungsdateien wichtig. Durch zusätzliche Per-Directory-Einstellungen können Sie diese in jedem Verzeichnis durch eine Datei (meist .htaccess) definieren. Diese Einstellungen betreffen alle Dateien in dem Verzeichnis und in allen Unterverzeichnissen, soweit sie nicht von einer anderen Optionsdatei überschrieben werden. Es empfiehlt sich allerdings, die Beschränkungen für jeden virtuellen Server gesondert zu definieren. Über dieses Formular konfigurieren Sie installierte Module neu. www.brain-media.de Globale Apache-Einstellungen 187 Wichtig für die funktionale Erweiterung Ihrer Apache-Installation sind die Einstellungen, die sich hinter dem Link Installierte Module neu konfigurieren verbergen. Auf den zugehörigen Seiten zeigt Ihnen Webmin eine Liste mit allen von Webmin unterstützten Apache-Modulen an. Die aktuell installierten werden durch eine Häkchen bzw. Kreuz markiert. Falls Sie dynamisch geladene Module benutzen, können Sie diese auswählen. Diese Funktion ist beispielsweise dann wichtig, wenn Sie den Apache-Webserver auch als Proxy-Server nutzen wollen. Dazu später mehr. Etwas für Apache-Kenner ist die Funktion Definierte Parameter bearbeiten. Wenn Apache gestartet wird, können Parameter mit der Befehlzeilenoption -D an den Server übergeben werden. Weil diese Parameter die Direktiven beeinflussen, die in Ihren Konfigurationsdateien vorkommen, muss Webmin wissen, welche Parameter dem Apache beim Start übergeben werden. Geben Sie die in Ihrem System benutzten Parameter in das Textfeld ein, das Ihnen diese Funktion präsentiert. Das Apache-Modul erlaubt auch manuelle Eingriffe in die Apache-Konfigurationsdateien. Webmin kompakt 188 Apache-Webserver Schließlich sieht die globale Apache-Konfiguration das Editieren der verschiedenen Apache-Konfigurationsdateien vor. Folgen Sie dazu einfach dem Link Bearbeite Konfigurationsdateien und wählen Sie aus dem Auswahlmenü die Datei aus, die Sie einsehen und eventuell bearbeiten wollen. Das Auswahlmenü zeigt Ihnen den vollständigen Pfad zu den Dateien an. Änderungen übernehmen Sie mit einem Klick auf die Schaltfläche Speichern. So richtig interessant wird es eigentlich erst, wenn Sie sich dem Bereich Virtuelle Server widmen. Dort finden Sie bereits einen Eintrag: Standard-Server. Dieser definiert die Standardeinstellungen für alle anderen virtuellen Server und beantwortet alle unbehandelten Anfragen. Die Einstellungen für den virtuellen Standard-Server. Bevor wir uns den Einstellungen und dem Erstellen eines virtuellen Servers widmen, schauen wir uns noch kurz an, wo die Dateien zu finden sind bzw. abgelegt werden, die über Ihren Apache publiziert werden. Bei einer Standardinstallation sind Ihre Inhalte über http://localhost bzw. über http://Hostname erreichbar. Der Standardport lautet 80 und muss im Browser nicht angegeben werden. Auf Ihrem Linux-System lagern die Seiten für den Standardserver beispielsweise im Verzeichnis /srv/www/htdocs/. Den konkreten Pfad finden Sie in der Apache- www.brain-media.de Virtuellen Server erzeugen 189 Modulkonfiguration. Standardmäßig wird beim Zugriff auf den Server die Datei index.html geladen. Um Dateien auf dem Apache-Server zu publizieren, können Sie einen FTP-Client oder auch Webmin verwenden. Der Einsatz von Webmin ist allerdings nur beim Hochladen von einzelnen Seiten sinnvoll. Greifen Sie dazu zum Java-basierten Dateimanager, der in Webmin integriert ist. Sie finden diesen in der Kategorie Sonstiges. 18.2 Virtuellen Server erzeugen Da die Einstellungen des bereits existierenden Standardservers und die eines neuen virtuellen Servers prinzipiell identisch sind, erzeugen wir hier einen ersten neuen virtuellen Server und schauen uns die wichtigsten Einstellungen an. Das Erstellen eines virtuellen Servers ist recht einfach. Sie finden im unteren Bereich des Apache-Moduls das Formular zum Anlegen eines solchen. Hier nehmen Sie eine Handvoll Einstellungen vor, die Sie dann im weiteren Verlauf verfeinern können. Ein neuer virtueller Server entsteht. Webmin kompakt Apache-Webserver 190 Zunächst stehen Ihnen verschiedene Einstellungen zur Behandlung von Verbindungen zum virtuellen Server zur Verfügung. Konkret legen Sie hier fest, ob es sich um einen Namen- oder um einen Host-basierten Server handelt. Soll der virtuelle Server einem anderen Anwender gehören, so sollten Sie diesen zunächst in der Webmin-Benutzer- und Gruppenverwaltung erzeugen. Erzeugen Sie dann ein Unterverzeichnis www in dessen Home-Verzeichnis. In der Regel können Sie den Standard-Port (80) beibehalten. Wenn Sie einen anderen Port verwenden wollen, müssen Sie diesen im Apache-Modul unter Netzwerk und Adresse zunächst eintragen. Für das Anlegen eines IP-basierten virtuellen Servers tragen Sie die IP-Adresse in das Feld Definierte Adresse ein. Im Falle eines namenbasierten Servers sind Sie mit der Standardeinstellung Jede Adresse bereits richtig. Die beiden folgenden Optionen sollten Sie aktiviert lassen: · Füge den Namen einer virtuellen Serveradresse hinzu (wenn benötigt) · Lausche auf Adresse (wenn benötigt) Bei einem namenbasierten Server sollte die erste Option aktiviert bleiben. Im Eingabefeld Dokument-Root geben Sie das Wurzelverzeichnis für den virtuellen Server an. Dies kann beispielsweise /home/username/www/ lauten. Als Nächstes ist der Servername dran. Sie können diesen selbst bestimmen oder aber auch durch den Webmin-Automatismus definieren lassen. Sie können übrigens auch mehrere Servernamen in das Formularfeld eingeben. Unter Hinzufügen eines Virtuellen Servers zu Datei bestimmen Sie, ob dessen Einstellungen in die Standard-Apache-Konfigurationsdatei hinzugefügt oder ob eine neue Datei im Verzeichnis erzeugt wird, in dem die Konfigurationen für die Server hinterlegt sind. Standardmäßig ist das /etc/apache/vhosts.d. Mithilfe des Formulars können Sie auch Server-Einstellungen einfach klonen. Dazu verwenden Sie das Auswahlmenü Kopiere Direktiven von und wählen einen Eintrag eines bereits erzeugten virtuellen Servers aus. Mit einem abschließenden Klick auf Jetzt erzeugen wird der neue Server angelegt. Sie finden den neuen Eintrag anschließend in der Modulübersicht. www.brain-media.de Virtuellen Server erzeugen 191 Zwei neue virtuelle Server sind bereits mithilfe von Webmin erzeugt. Nachdem Sie den ersten virtuellen Server erzeugt haben, können Sie für diesen eine Vielzahl weiterer Anpassungen vornehmen. Einige dieser Einstellungen wie beispielsweise den Port haben Sie selbst definiert. Alle anderen basieren auf denen des Standard-Servers. Um die Einstellungen eines Servers zu bearbeiten, klicken Sie einfach auf den zugehörigen Eintrag im Webmin-Apache-Modul. Ihnen stehen insgesamt sechzehn Einstellungen zur Verfügung, um die Detailkonfiguration vorzunehmen. Einigen dieser Einstellungen sind wir bereits bei der globalen Apache-Konfiguration begegnet. Neben den allgemeinen Einstellungen für den virtuellen Server können Sie die bereits erwählten Per-Directory-Einstellungen vornehmen. Webmin kompakt 192 Apache-Webserver Die Funktionen für die Detailkonfiguration des virtuellen Servers. 18.3 Protokolleinstellungen Standardmäßig protokolliert der Apache jeden bearbeiteten Request in einem Standardformat in seinen Logfiles. Welche Ereignisse für Ihren virtuellen Server aufgezeichnet werden, bestimmen Sie in den Protokolleinstellungen. In der Standardkonfiguration werden alle Protokollinformationen für virtuelle Server in eine Protokolldatei geschrieben. Wenn Sie allerdings viele Server zu managen haben, so wird diese Protokolldatei schnell sehr groß und entsprechend unübersichtlich. Das Herauslesen relevanter Informationen über Engpässe oder andere Probleme wird somit immer schwieriger. Es empfiehlt sich daher, für die einzelnen virtuellen Server eigene Protokolldateien anzulegen. Sie sollten außerdem prüfen, welcher Fehlerlevel für die Protokollierung der richtige ist. www.brain-media.de Protokolleinstellungen 193 Die Konfiguration der Protokolle. Mit der ersten Einstellung Protokolliere Fehler nach bestimmen Sie, ob Sie die Standardprotokollierung beibehalten, oder eine andere Variante nutzen wollen. In der Regel ist es sinnvoll, für jeden Server eine eigene Protokolldatei zu erzeugen, die dann mit einem Spezialisten wie AWStats (http://www.awstats.org) ausgewertet wird. Sie können auch ein externes Programm verwenden. Dazu geben Sie die gewünschten Kommandos in das Eingabefeld Programm ein. Es folgt die Konfiguration des zu protokollierenden Fehlerlevels. Sie haben hier die Wahl zwischen folgenden Einstellungen: · Notfälle – System ist unbrauchbar (emerg) · Es müssen sofort Maßnahmen ergriffen werden (alert) · Fehler (error) · Warnungen (warn) · Normale, aber signifikante Vorfälle (notice) · Informativ (info) · Debug-Level-Nachrichten (debug) Webmin kompakt 194 Apache-Webserver Für welchen Level Sie sich entscheiden, ist abhängig vom Einsatzbereich des virtuellen Servers. Wenn Sie beispielsweise einen Online-Shop implementieren und sich noch in der Testphase befinden, kann es sinnvoll sein, dass Sie bis auf Weiteres den Level Debug-Level-Nachrichten verwenden. Im „normalen“ Server-Betrieb ist der Level Error meist ausreichend. Dabei wird Ihre Protokolldatei nicht mit unnötigen Informationen zugemüllt. Es folgt die Auswahl des Protokollformats. In der Apache-Konfiguration sind bereits verschiedene Standardformate wie common und combined definiert. In der Regel kommen Sie mit dem Standardformat gut aus. Unter Zugang zu den Protokolldateien können Sie schließlich das Format und die Datei bestimmen. Auch hier kommen Sie meist mit den Standardeinstellungen aus. Die Dokumentoptionen für Ihren Server. Wenn Sie dem Link Dokumentoptionen folgen, so können Sie das DokumentenRoot- und das Benutzerverzeichnis für den Server ändern. Standardmäßig ist der Server beispielsweise für jedermann zugänglich. Sie können den Zugriff aber auch gezielt beschränken, indem Sie entweder Benutzer ausschließen oder den Zugriff nur bestimmten Anwendern erlauben. Tragen Sie dazu die Benutzer in das zugehörige Feld ein. Es muss sich dabei um System-Benutzer handeln. www.brain-media.de Fehlerbehandlung 195 Mindestens genauso interessant sind die Anpassungsmöglichkeiten, die Ihnen der Bereich Verzeichnisoptionen bietet. Hier können Sie verschiedene sicherheitsrelevante Einstellungen bearbeiten. So können Sie beispielsweise die Ausführung von CGI-Programmen und Server-Side-Includes und das Erzeugen von VerzeichnisIndizes aktivieren bzw. deaktivieren. Da standardmäßig alle Verzeichnisoptionen deaktiviert sind, ist Ihr virtueller Server zumindest für derlei Gefahren nicht anfällig. Die Fehlerbehandlung erlaubt das Erstellen von benutzerdefinierten Fehlermeldungen. 18.4 Fehlerbehandlung Versucht ein Besucher des virtuellen Servers auf ein Dokument zuzugreifen, das nicht existiert oder die Datei bzw. das Verzeichnis passwortgeschützt ist, so gibt der Apache-Webserver standardmäßig eine typische Fehlermeldung aus. Das sieht nicht immer sonderlich professionell aus. Um Ihren Benutzern ansprechendere Informationen beim Auftreten eines Fehlers präsentieren zu können, folgen Sie dem Link Fehlerbehandlung. In dem einfachen Formular können Sie benutzerdefinierte Fehlermeldungen erstellen. Dazu geben Sie zunächst in der Spalte Fehlercode einen Apache-Fehlercode ein (beispielsweise 403, 403, 401 oder 500) und bestimmen dann in der Spalte Meldung, ob der Benutzer beim Auftreten des Fehlers zu einer anderen Seite (URL) geführt oder ob ihm eine kurze Hinweismeldung angezeigt wird. Die URL oder die Nachricht geben Sie in das Eingabefeld ein und speichern die Einstellungen mit einem Klick auf Speichern. Webmin kompakt Apache-Webserver 196 18.5 Aliasse und Umleitungen Bei einer typischen Apache-Installation besteht eine direkte Beziehung zwischen der URL, mit der ein Dokument oder eine Datei angefordert wird, und der Datei, die an den Browser des Benutzers zurückgegeben wird. Fordert ein Benutzer beispielsweise im Browser folgenden http://www.testserver.de/bilder/testbild.gif an, so wird die Datei aus dem Verzeichnis /home/test/bilder/testbild.gif bezogen. Die Konfiguration der Aliasse und Umleitungen. Mithilfe der Funktion Aliase und Umleitungen können Sie diesen – und mehr – ändern. Die Einstellungen im Einzelnen: · Dokumentverzeichnis Aliase: In diesen Feldern bestimmen Sie das Mapping von Verzeichnis und Alias. Typische Paare könnten wie folgt aussehen: /error/ /usr/share/apache2/error /icons/ /usr/share/apache2/icons/ www.brain-media.de Aliasse und Umleitungen · 197 Regulärer Ausdruck für den Dokumentenverzeichnis-Alias: Das Erzeugen von Aliassen vereinfacht sich durch die Verwendung von regulären Ausdrücken. Hier ein Beispiel: ^/manual(?:/(?:de|en|fr|ja|ko|ru))?(/.*)?$ /usr/share/apache2/manual$1 Umleitungen sind den Aliassen sehr ähnlich, allerdings erfüllen sie einen anderen Zweck und haben eine andere Aufgabe. Konkret können Sie mit diesem Mechanismus beispielsweise einen Benutzer von A nach B umleiten. Sie könnten beispielsweise alle Requests an http://www.testserver.de/webmin/ an die Adresse http://www.webmin.com umleiten. In der Praxis wird bei der Umleitung ein 302-Status-Code an den Browser übermittelt, der den Benutzer über die Umleitung informiert. Ob dieser die Umleitung akzeptiert, ist natürlich dessen Entscheidung, denn schließlich könnte es sich auch um eine getarnte Attacke handeln, die den Anwender zu einer speziell präparierten Site führt. Über das Aliasse- und Umleitungsformular können Sie vier Umleitungen aktivieren: · Standard-Umleitung · Verwendung eines regulären Ausdrucks für die Umleitung · Permanente Umleitung · Temporäre Umleitung Testen Sie in jedem Fall die Umleitung und Aliasse, bevor Sie diese der Allgemeinheit zugänglich machen, damit Sie auch den gewünschten Effekt erzielen. Webmin kompakt 198 Apache-Webserver Webmin erlaubt auch die Konfiguration der CGI-Umgebung. 18.6 CGI-Konfiguration Mithilfe der CGI-Schnittstelle lassen sich externe Anwendungen in den ApacheWebserver integrieren. Aus Sicht der Systemsicherheit ist das CGI immer problematisch, weil Schwachstellen für Angreifer beliebte Ziele sind. Außerdem ist die Ausführung von Anwendungen recht langsam. CGI-Skripts können in unterschiedlichen Programmiersprachen entwickelt werden, beispielsweise in Perl. Die CGI-Skripts werden in der Regel im CGI-Verzeichnis abgelegt oder aber erhalten die Dateierweiterung CGI, damit sie als Skripts erkannt und entsprechend behandelt werden. Für welchen Weg Sie sich entscheiden, bleibt Ihnen überlassen. Der eine Anwender findet es bequemer, alle CGI-Skripts in einem Ordner zu verwalten. Ein anderer zieht es vor, Skripts in die jeweiligen Verzeichnisse zu packen, in denen auch die relevanten HTML-Dokumente und sonstigen Dateien lagern. Um Dateien mit der Erweiterung CGI als CGI-Skripts zu registrieren, gehen Sie wie folgt vor: 1. Öffnen Sie die Einstellungen des Standard-Servers. 2. Wechseln Sie dann zu den Per-Directory-Einstellungen und öffnen Sie das Verzeichnis, für das Sie die CGI-Einstellungen bearbeiten www.brain-media.de CGI-Konfiguration 199 wollen. Auf die Per-Directory-Einstellungen kommen wir später noch zu sprechen. 3. Wenn Sie ein neues Verzeichnis anlegen wollen, für das diese Einstellungen gelten, wählen Sie im Feld Einstellungen anwenden auf … den Typ Verzeichnis, geben den Pfad an und klicken auf Speichern. 4. Nachdem Sie zu dem gewünschten Verzeichnis gewechselt sind, klicken Sie auf Dokumentoptionen und aktivieren die Option CGIProgramme ausführen. 5. Speichern Sie die Änderung mit einem Klick auf Speichern. Nun weiß der Apache schon einmal, dass die CGI-Unterstützung aktiviert ist. 6. Nun wechseln Sie zu den MIME-Typ-Einstellungen. Im Auswahlmenü Content Handler wählen Sie den Eintrag cgi-script und geben in das Eingabefeld Erweiterungen cgi ein. 7. Mit einem Klick auf Speichern weiß der Apache-Webserver jetzt, dass alle Dateien mit der Dateierweiterung cgi in diesem Verzeichnis (samt Unterverzeichnissen) CGI-Skripts sind. Wenn Sie wollen, dass diese Einstellung Apache-weit greift, müssen Sie nur die höchste Verzeichnisebene entsprechend konfigurieren. Die CGI-Konfiguration erlaubt Ihnen auch das Erstellen eines zentralen CGIVerzeichnisses. Dazu führen Sie folgende Schritte aus: 1. Öffnen Sie den Standard-Server und klicken Sie auf das Icon CGIProgramme. 2. Unter CGI-Verzeichnis-Aliasse erzeugen Sie ein Mapping, das beispielsweise wie folgt aussieht: /cgi-bin/ 3. /srv/www/cgi-bin/ Sichern Sie die Konfiguration mit einem Klick auf Speichern. Sie können nun Ihre Skripts in den Ordner /cgi-bin legen, damit diese Apache-weit verfügbar sind. Webmin kompakt 200 Apache-Webserver 18.7 Verzeichnisindizierung Hinter dem Link Verzeichnisindizierung verbergen sich die sogenannten IndexOptions-Einstellungen. Diese bestimmen das Erscheinungsbild der vom Server erstellten Verzeichnislisten durch das Hinzufügen von Symbolen und Dateibeschreibungen usw. Ist diese Funktion aktiviert, was standardmäßig der Fall ist, so kann Ihr Webserver eine Verzeichnisliste erstellen, wenn er eine HTTP-Anforderung wie die folgende empfängt: http://ihre _domain/Verzeichnis/ Dabei sucht der Server in diesem Verzeichnis nach einer Datei aus der Liste, die nach der DirectoryIndex-Anweisung angegeben ist (z. B. index.html). Kann er keine der Dateien finden, wird eine HTML-Verzeichnisliste der in dem Verzeichnis enthaltenen Unterverzeichnisse und Dateien erstellt. Mit bestimmten Anweisungen (z. B. mit IndexOptions) können Sie in httpd.conf das Erscheinungsbild dieser Verzeichnisliste anpassen. Die Konfiguration der Verzeichnisindizierung. www.brain-media.de Mehr Sicherheit dank SSL 201 In der Standardkonfiguration ist FancyIndexing aktiviert. Wenn FancyIndexing aktiviert ist, werden durch Klicken auf die Überschrift der Spalte in der Verzeichnisliste die Einträge entsprechend dieser Spalte sortiert. Ein weiterer Klick auf dieselbe Überschrift schaltet von aufsteigender zu absteigender Reihenfolge um und umgekehrt. IndexOptions hat eine Reihe von weiteren Parametern, die zur Festlegung des Erscheinungsbilds der vom Server erstellten Verzeichnisse verwendet werden können. Zu diesen Parametern gehören beispielsweise die Icon-Höhe und -Breite, die Ansicht des Datums der letzten Änderung, das Einfügen von horizontalen Linien und dergleichen mehr. Sie können mit dem Formular außerdem festlegen, welches die Index-Dateien für die Server-Verzeichnisse sind (z. B. index.html oder index.php) und welche Icons für die unterschiedlichen Dateientypen verwendet werden und welches die Dateierweiterungen sind. 18.8 Mehr Sicherheit dank SSL Wenn Sie auf Ihrem Webserver einen Online-Shop oder einen anderen wichtigen Dienst bereitstellen, der erhöhten Schutz bei der Datenübermittlung zwischen Client und Server benötigt, sollten Sie die SSL-Unterstützung aktivieren. Die Konfiguration der SSL-Unterstützung des virtuellen Servers. Webmin kompakt 202 Apache-Webserver Die Verwendung der SSL-Funktionalität setzt zunächst einmal die Installation der OpenSSL-Komponenten voraus. Sollten diese nicht installiert sein, gibt Ihnen die Webmin-Schnittstelle einen entsprechenden Hinweis aus. Am einfachsten holen Sie die Installation mit einem Paketmanager nach. Außerdem muss das Apache-SSL-Modul installiert und über das Apache-WebminModul (Installierte Module neu konfigurieren) aktiviert sein. Das Herzstück der SSL-Technik sind die Zertifikate, durch die sichergestellt ist, dass beide Seiten über einen sicheren Kommunikationskanal miteinander kommunizieren. Im Idealfall besitzen Sie bereits die erforderlichen Schlüssel. Falls nicht, sollten Sie sich bei Verisign & Co. welche besorgen. Ihr Provider kann Sie im Zweifelsfall dabei unterstützen. Zu Testzwecken können Sie auch eigene Zertifikate mit openssl erzeugen. Die taugen aber natürlich nur zu Testzwecken. Wenn Sie das Zertifikat und den privaten Schlüssel besitzen, können Sie sich an die SSL-Konfiguration für Ihren Server machen. In der Praxis ist es am besten, wenn Sie für die Nutzung von SSL einen neuen virtuellen Server erzeugen, der die Verbindungen auf dem SSL-Port 443 entgegennimmt. Der Vorteil dieser Vorgehensweise: Bestehende Virtuelle-ServerKonfigurationen sind von der SSL-Aktivierung nicht betroffen. Führen Sie folgende Schritte aus: 1. Wechseln Sie zunächst zur Apache-Modul-Seite und öffnen Sie die Einstellungen Netzwerk und Adressen. 2. Unter Lausche auf Adressen und Ports aktivieren Sie in der zweiten Spalte die Option all und geben unter Port 443 ein. Speichern Sie die Konfiguration mit einem Klick auf den Button Speichern. 3. Als Nächstes wechseln Sie wieder zur Apache-Hauptseite und erzeugen über das Feld Einen neuen virtuellen Server anlegen einen neuen Server. 4. Wichtig ist, dass Sie hier die Adressoption auf Jede Adresse und den Port auf 443 setzen. 5. Unter Dokument-Root können Sie das Verzeichnis definieren, das der Benutzer beim SSL-Zugriff zu sehen bekommt. 6. Im Feld Server-Name geben Sie die Bezeichnung des SSLgesicherten virtuellen Servers an. 7. Mit einem Klick auf Jetzt erzeugen wird der virtuelle Server angelegt, der automatisch in der Server-Liste aufgeführt wird. www.brain-media.de PHP-Konfiguration 203 8. Öffnen Sie als Nächstes den neuen Virtuellen-Server-Eintrag und greifen Sie auf die SSL-Optionen zu. 9. Setzen Sie dann den Schalter Aktiviere SSL? auf Ja. Damit weiß der virtuelle Server, dass er alle Verbindungen als SSL-Verbindungen behandelt. 10. Im Feld Zertifikatdatei geben Sie den Pfad zur Datei pem.cert an. 11. Dann ist das Feld Private Key-Datei dran. Hier geben Sie den Pfad zur Datei key.pem an. 12. Hinterlegen Sie außerdem unter Password for SSL key Ihr Passwort. 13. Die drei übrigen Einstellungen können Sie mit Standard beibehalten. 14. Mit einem abschließenden Klick auf Speichern übernehmen Sie die Änderungen. Wird keine Fehlermeldung ausgegeben, dürfen Sie davon ausgehen, dass die Konfiguration erfolgreich verlaufen ist. Prüfen Sie dennoch mit einem Standard-Browser, ob die Konfiguration beim Zugriff korrekt funktioniert. 18.9 PHP-Konfiguration Sie können für Ihre virtuellen Server auch einige PHP-Einstellungen bearbeiten. Konkret sind es vier Anpassungen: · PHP-Administrations-Einstellungen · PHP-Konfigurationswerte · PHP-Administrations-Flags · PHP-Konfigurationsflags Leider ist nirgends vernünftig dokumentiert, welche Einstellungen hier Sinn machen. 18.10 Filter Mit dem Apache 2.0 wurde die sogenannte Filterfunktion eingeführt. ApacheModule können als Filter entwickelt und zur Filterung des ein- und ausgehenden Datenstroms des Servers eingesetzt werden. Webmin kompakt 204 Apache-Webserver Mithilfe dieser Funktion kann beispielsweise die Ausgabe von CGI-Skripts durch den INCLUDES-Filter von mod_include bearbeitet werden und so Server-SideInclude-Anweisungen ausgeführt werden. Das Modul mod_ext_filter erlaubt externen Programmen als Filter zu agieren, in der gleichen Weise wie CGI-Programme als Eingabe dienen können. Die Filter-Konfiguration. Damit Sie diese Funktionalität nutzen können, muss das Apache-Modul mod_include installiert und aktiviert sein. Das Filterformular erlaubt Ihnen die Aktivierung von Eingangs- und Ausgangsfiltern sowie das Setzen von IncludesErweiterungen. www.brain-media.de Sprachen und Zeichensätze 205 Ein Blick auf die Konfiguration der Zeichensätze. 18.11 Sprachen und Zeichensätze Webmin erlaubt Ihnen auch die Konfiguration von Sprachen und Zeichensätzen. Wenn Sie dem Link Sprachen folgen, können Sie sich ein Bild von der breiten Zeichensatzunterstützung machen. Hier sind in der Regel keine Änderungen vorzunehmen. 18.12 Direktiven Schließlich können Sie dem jeweiligen virtuellen Server entnehmen, welche Kommandos an ihn übergeben wurden und welche Befehle bzw. Aktionen er ausgeführt hat. Klicken Sie dazu einfach auf den Link Zeige Direktiven. Webmin kompakt Apache-Webserver 206 Wir sind bereits des Öfteren den Per-Directory-Einstellungen begegnet. Schauen wir uns kurz an, was es damit auf sich hat. Diese Einstellungen erlauben es Ihnen, für bestimmte Verzeichnisse unterschiedliche Einstellungen vorzunehmen. Die Per-Directory-Einstellungen erlauben das gezielte Definieren von Ordneroptionen. Sie können diese Einstellung auf folgende Apache-Objekte anwenden: · Verzeichnis: Die Optionen gelten für das Verzeichnis inklusive aller Unterverzeichnisse und den darin enthaltenen Dateien. · Dateien: Die Einstellungen gelten für Dateien, deren Namen es zu spezifizieren gilt. Mit dieser Funktion können Sie beispielsweise die .htaccessDatei editieren. · Ort: Die Einstellungen gelten für Dateien und Verzeichnisse mit einem bestimmten Pfad, beispielsweise www.testserver.de/pfad/. · Proxy: Schließlich können Sie den Apache-Server auch als Proxy-Server konfigurieren. Dazu später mehr. www.brain-media.de Typische Aktionen bei der Administration von virtuellen Servern 207 Wenn der Apache einen Request verarbeitet, so prüft er diese Optionen, ob sie für die Anforderung relevant sind. Dabei werden zunächst auch die Einstellungen durch die .htaccess und schließlich die Einstellungen für die virtuellen Server eingelesen. Konkret bedeutet das, dass Optionen, die für ein bestimmtes Verzeichnis gelten, die von höheren Verzeichnissen überschreiben. Um die Einstellungen für ein Verzeichnis zu definieren, gehen Sie wie folgt vor: 1. Öffnen Sie den virtuellen Server, dessen Verzeichnisoptionen Sie konfigurieren wollen. Sollen die Einstellungen für alle virtuellen Server gelten, so öffnen Sie den Standard-Server. Sie können für jedes Verzeichnis des Servers eigene Einstellungen definieren. 2. Scrollen Sie zu den Per-Directory-Einstellungen. 3. In dem oben beschriebenen Auswahldialog wählen Sie dann aus, ob Sie ein Verzeichnis, eine Datei etc. erstellen wollen. Wenn Sie einen Ort erstellen, so achten Sie darauf, den relativen Pfad zum virtuellen Server zu verwenden, also beispielsweise /bilder oder /dokumente. Sie können auch Platzhalter verwenden. Dazu fügen Sie ein Sternchen ein. 4. Sie können außerdem einen regulären Ausdruck verwenden. 5. Klicken Sie anschließend auf die Schaltfläche Erzeugen. Ihr neues Verzeichnis wird augenblicklich in der Liste aufgeführt. 6. Um nun die weiteren Einstellungen dieses neuen Verzeichnisses, der Datei oder des Ortes zu bearbeiten, klicken Sie auf den Eintrag und nehmen die oben beschriebenen Einstellungen vor. 18.13 Typische Aktionen bei der Administration von virtuellen Servern Schauen wir uns noch einige typische Aktionen bei der Administration von virtuellen Servern an. Konkret wollen wir uns anschauen, wie Sie · einen Passwortschutz für ein Verzeichnis einführen, · den Zugriff auf Grundlage der Client-Adressen bestimmen, · den Apache-Webserver als Proxy-Server konfigurieren. Webmin kompakt 208 Apache-Webserver Wenn Sie die voranstehenden Abschnitte aufmerksam verfolgt haben, dürfen Sie – zumindest teilweise – ahnen, welche Aktionen erforderlich sind. Um den Zugriff auf bestimmte Verzeichnisse durch ein Passwort zu schützen, führen Sie folgende Schritte aus: 1. Öffnen Sie in der Modul-Hauptseite den virtuellen Server, für den Sie den Passwortschutz einführen wollen. 2. Öffnen Sie das Verzeichnis, für das der Schutz gelten soll, oder erzeugen Sie ein neues. 3. Öffnen Sie die Zugriffskontrolle, wählen Sie die Option Standard und hinterlegen Sie eine Beschreibung, beispielsweise Private Dateien. 4. Unter Authentifizierungstyp wählen Sie Basic. Diese Variante genügt in der Regel, wenngleich die Variante Digest deutlich sicherer ist, allerdings nicht von allen Browsern unterstützt wird. 5. Unter Beschränke Zugriff über Anmeldung aktivieren Sie die Option Alle gültigen Benutzer. Damit gewährt der Apache nur Benutzern Zugriff, die in der Benutzerdatei hinterlegt sind. Deren Pfad muss ebenfalls in diesem Formular noch angegeben werden. Sie können den Zugriff auch auf bestimmte Benutzer und Gruppen beschränken. Falls Sie das wollen, geben Sie im Eingabefeld Nur diese Benutzer bzw. Nur diese Gruppen die Benutzer- bzw. Gruppennamen an. Mehrere Einträge sind durch Kommata voneinander zu trennen. Der Passwortschutz für ein Verzeichnis. www.brain-media.de Typische Aktionen bei der Administration von virtuellen Servern 6. 209 Wenn Sie Benutzer- bzw. Gruppendateien verwenden wollen, so müssen Sie diese Dateien zunächst erzeugen. Deren Aufbau entspricht der Datei /etc/shadow. Verwenden Sie folgendes Format: Benutzername: verschlüsseltes Passwort 7. Wenn Sie nun einer Gruppe Benutzer zuordnen wollen, so müssen Sie die Gruppen-Textdatei erzeugen. Sie muss folgendes Format besitzen: Gruppenname: Benutzername1 Benutzername2 etc. 8. Klicken Sie anschließend auf die Schaltfläche Speichern, um die Einstellungen zu übernehmen. Sie können alternativ auch eine DBM-Datenbank für die Benutzer- und Gruppenverwaltung verwenden. Das macht aber eigentlich nur Sinn, wenn Sie ohnehin eine solche Datenbank nutzen. Kein Problem: Mithilfe von Webmin können Sie den Zugriff von Rechnern mit bestimmten IP-Adressen verhindern – oder aber gezielt zulassen. Der Apache-Webserver erlaubt zudem die Beschränkung des Zugriffs auf IPAdressenbasis. So können Sie gezielt Ihr System vom Zugriff ausschließen. Das ist nicht nur im Internet, sondern auch im Intranet sinnvoll, denn so können Sie beispielsweise verhindern, dass Praktikanten auf unternehmenskritische Server zugreifen und womöglich Schäden verursachen. Webmin kompakt 210 Apache-Webserver Die Vorgehensweise ist wieder recht einfach: 1. Öffnen Sie den virtuellen Server und das gewünschte Verzeichnis, für das Sie den Zugriff beschränken wollen. 2. Wechseln Sie wieder zur Zugriffskontrolle. 3. Unter Zugang einschränken steht Ihnen eine Tabelle zur Verfügung, über die Sie unterschiedlichen Netzwerksystemen den Zugriff gewähren bzw. unterbinden können. 4. Um den Zugriff zu verbieten, wählen Sie aus dem Auswahlmenü Aktion die Option Verweigern. Unter Bedingung wählen Sie Anfrage von IP und geben in das folgende Feld die IP-Adresse ein. Sie können weitere Bedingungen verwenden: 5. Alle Anfragen: Mit dieser Option können Sie alle Anfragen zulassen bzw. unterbinden. 6. Anfrage von Teil-IP: Mit dieser Option können Sie den Zugriff für ein Teilnetzwerk erlauben bzw. unterbinden. Verwenden Sie beispielsweise die Eingabe 192.168. 7. Anfrage von Netzwerk/Netzmaske: Mit dieser Option geben Sie die Netzmaske an. Ein Beispiel: 192.168.1.0/255.255.255.0 8. Anfrage von Netzwerk/CIDR: Mit dieser Konfiguration können Sie ein Subnetz gezielt ein- oder ausschließen. Ein Beispiel: 192.168.1.0/25 9. Wenn Variable gesetzt ist: Mit der letzten Option können Sie schließlich eine Umgebungsvariable als Bedingung definieren. Denkbar ist beispielsweise die Angabe eines Header-Felds (Browser etc.). Sie sehen: Sie können die unterschiedlichen Kriterien miteinander kombinieren. Um den ersten Eintrag zu speichern, klicken Sie auf die gleichnamige Schaltfläche. Automatisch wird die Tabelle um ein weiteres Feld erweitert, in das Sie noch eine Bedingung einführen können. 18.14 Apache als Proxy-Server Ihr Apache kann auch als Proxy-Server agieren, der als Vermittlung die Verbindungsaufnahme von Netzwerk-Clients über den Server zu anderen Netzen wie dem Internet erlaubt. Diese Technik eignet sich hervorragend, um beispielsweise ein www.brain-media.de Apache als Proxy-Server 211 Firmennetzwerk über eine DSL-Verbindung ans Internet zu hängen. Ein weiterer Vorteil: Da lediglich ein System eine direkte Verbindung mit dem Internet hat, sind die anderen Rechner weniger leicht angreifbar. Sicher: Der Apache kann zwar als Proxy-Server genutzt werden, seine Funktionalität kann sich aber in diesem Bereich nicht mit einem Spezialisten wie Squid messen. Zunächst muss das Proxy-Modul aktiviert werden. Für die Apache-Proxy-Konfiguration sind folgende Schritte erforderlich: 1. Zunächst müssen Sie in der Apache-Modul-Konfiguration das Modul mod_proxy aktivieren. Klicken Sie dazu in der Apache-Übersicht auf Installiere Modul neu konfigurieren und aktivieren Sie das Modul. 2. Mit einem Klick auf Konfigurieren landen Sie wieder in der ApacheÜbersicht. 3. Nun öffnen Sie die Apache-Konfigurationsdateien mit einem Klick auf Bearbeite Konfigurationsdateien. 4. Öffnen Sie die Datei httpd.conf und suchen Sie nach der Zeile LoadModule proxy_module. Sollten Sie keine entsprechende Zeile finden, ist das Proxy-Modul vermutlich nicht installiert. In diesem Fall müssen Sie zunächst die Installation nachholen. 5. Entfernen Sie als Nächstes die Auskommentierung, also das #Zeichen vor der entsprechenden Zeile. 6. Klicken Sie anschließend auf Speichern, um die Änderung zu übernehmen. Webmin kompakt Apache-Webserver 212 7. Führen Sie dann einen Neustart des Servers aus, damit Änderungen greifen. 8. Führen Sie dann eine erneuerte Modulkonfiguration durch, damit die der Apache um die Proxy-Funktionalität erweitert wird. Nachdem Sie die Proxy-Funktion aktiviert haben, können Sie sich im nächsten Schritt mit deren Funktionen auseinandersetzen, die über Webmin zugänglich sind. Wenn Sie nun den virtuellen Server bearbeiten, den Sie als Proxy-Server aktiviert haben, so finden Sie dort ein neues Icon: Proxy. Wenn Sie dem Proxy-Link folgen, können Sie auf dem zugehörigen Formular zunächst die Proxy-Funktion aktivieren. Sie können außerdem das CacheVerzeichnis und dessen Größe aktivieren. Selbst das Deaktivieren der Zwischenspeicherung für bestimmte Websites ist in der Webmin-Schnittstelle vorgesehen. Das ist beispielsweise bei Seiten sinnvoll, die regelmäßig aktualisiert werden. Weitere Optionen, die Sie definieren können: · Die Verwendung von kaskadierenden Proxy-Servern kann aktiviert bzw. gesteuert werden. · Authentifizierung auf dem Proxy-Server durch Benutzername und Passwort. Das Apache-Proxy-Modul bietet damit die wichtigsten Proxy-Server-spezifischen Funktionen. Für den Einstieg in die Welt der Proxy-Server ist das sicherlich ausreichend. 18.15 Die Apache-Modulkonfiguration Auch für das Apache-Modul steht Ihnen eine eigene Modulkonfiguration für die Anpassung der Modulfunktionen zur Verfügung. Diese ist mit anderen Konfigurationen vergleichbar. Konkret präsentiert sie Ihnen drei Bereiche: · Konfigurierbare Optionen · Systemkonfigurationen · Apache-Variablen www.brain-media.de Die Apache-Modulkonfiguration 213 Diese Einstellungen bezieht das Webmin-Modul natürlich aus den ApacheKonfigurationsdateien. Insbesondere an den Systemeinstellungen sollten Sie keine Änderungen vornehmen, denn diese (beispielsweise das ApacheWurzelverzeichnis oder die Kommandos für das Starten und Anhalten des Apache) sind durch das Betriebssystem vorgegeben. Die Konfiguration des Apache-Moduls. In den Konfigurationseinstellungen können Sie beispielsweise festlegen, ob die virtuellen Server durch Icons oder als Liste in der Übersicht aufgeführt werden. Sie können auch die Sortierung ändern. Folgende Einstellungen stehen Ihnen zur Verfügung: · Reihenfolge in Konfigurationsdateien · Server-Name · IP-Adresse Webmin kompakt 214 Apache-Webserver Sie können auch die Ansicht der Server beschränken. Mit dem Standardwert von maximal 100 dürften die meisten Leser auskommen. www.brain-media.de 215 19 BIND DNS-Server Der DNS-Server BIND (Berkeley Internet Name Domain) ist einer der wichtigsten Domain-Name-System-Server. Dank seiner weiten Verbreitung und der zeitnahen Umsetzung der aktuellen DNS-RFCs gilt BIND seit Jahren als DNSReferenzsoftware. Das DNS-Server-Modul. Schon ein erster Blick auf die BIND-Modulseite lässt vermuten, dass der Umgang mit dem Server nicht ganz so einfach ist. Die korrekte Konfiguration ist aber für viele Netzwerke lebenswichtig. Webmin kompakt BIND DNS-Server 216 Die Konfiguration von BIND erfolgt über eine zentrale Konfigurationsdatei named.conf. Pro Zone gibt es eine Zonendatei, deren Name gewöhnlich aus dem Zonennamen und der Dateierweiterung db gebildet wird. Die Konfigurationsdatei named.conf weist mehrere Bereiche auf: · Globaler Bereich · Server-Liste · Zonen-Liste Im globalen Bereich werden Zugriffsberechtigungen, Krypto-Keys und Optionen definiert. In der Serverliste sind Informationen über Partner-Server enthalten, beispielsweise ob ein Server inkrementellen Zonentransfer unterstützt. In der ZonenListe ist für jede Zone ein Eintrag enthalten, der den Namen der Zone, den Namen des Zonenfiles, den Zonen-Typ (Master oder Slave), Zugriffsberechtigungen sowie Options enthält. 19.1 Zonen erstellen Beim ersten Zugriff auf Vorgängerversionen von Webmin 1.3.x muss man noch festlegen, ob der DNS-Server für die interne Verwendung, als Internet-Nameserver zum Einsatz kommt, und ob dieser sich eventuell die Rootserver-Daten aus dem Internet herunterladen soll. Bei aktuellen Webmin-Versionen ist das zum Glück nicht mehr der Fall, wohl auch, weil die „richtige“ Entscheidung vielen Anwendern nicht leicht gefallen ist. Webmin 1.3.x präsentiert Ihnen beim Zugriff auf das BIND-Modul drei Bereiche: · die globalen Servereinstellungen · die existierenden DNS-Zonen · die Client-Ansicht – sofern vorhanden Eine der wichtigsten Aufgaben beim Umgang mit einem DNS-Server ist das Erzeugen und Verwalten von Master-Zonen. Um eine solche zu erstellen, klicken Sie unter Existierende DNS-Zonen auf den Verweis Neue Master-Zone anlegen. Auf dem zugehörigen Formular legen Sie zunächst den Zonentyp fest. Sie haben die Wahl zwischen zwei Optionen: · Forward (Namen zu Adressen) www.brain-media.de Zonen erstellen · 217 Reverse (Adressen zu Namen) In der Regel benötigen Sie die Forward-Variante. Die Reverse-Variante ist für Sie von Interesse, wenn Sie IP-Adressen einen Namen zuordnen wollen. Eine neue Master-Zone in der Entstehung. Die weiteren Einstellungen, die Sie beim Erzeugen der neuen Master-Zone vornehmen müssen: · Domainname/Netzwerk: Hier können Sie einen Domainnamen oder auch eine Netzwerkadresse wie beispielsweise 192.168.1 angeben. · Datensatzdatei: Hier geben Sie den Pfad zu der sogenannten Datensatzdatei (Record file) an. In dieser sind die Zonendaten gespeichert. In der Regel ist es sinnvoll, die Standardeinstellung Automatisch beizubehalten, um die Verwaltung BIND zu überlassen. Wenn Sie die Option deaktivieren und eine bereits existierende Datei angeben, so werden die bestehenden Einträge überschrieben. · Master-Server: Hier tragen Sie den Namen des Master-Servers ein. Das Webmin-Modul präsentiert Ihnen in der Regel einen ersten Eintrag. Prüfen Sie, ob dieser mit Ihren Vorstellungen übereinstimmt. · E-Mail-Adresse: Hier tragen Sie die E-Mail-Adresse des NameserverAdministrators ein. Webmin kompakt BIND DNS-Server 218 · Zonenvorlage benutzen: Sie können auch eine Zonenvorlage verwenden. Wenn Sie dies wollen, aktivieren Sie diese Option. · IP-Adresse für Vorlagendatensätze: In diesem Eingabefeld können Sie die IP-Adresse für Vorlagendatensätze hinterlegen. · Zeit aktualisieren: Über dieses Feld bestimmen Sie die Zeitspanne, nach der die Zeiteinstellung des Servers aktualisiert wird. · Wiederholungszeit übertragen: Hier legen Sie fest, welche Zeit zwischen der Übertragung von Zonendaten zwischen Ihrem und einem zweiten Server vergeht, bevor ein erneuerter Datentransfer versucht wird. · Ablaufzeit: Hier legen Sie fest, wie lange Daten im Zwischenspeicher gehalten werden. · Standard-Time-To-Live: Bestimmt den Standard-TTL-Wert der Daten. Um die neue Master-Zone zu erstellen, klicken Sie auf die Schaltfläche Erstellen. Sie landen automatisch in der Zonenansicht, in der Sie nun die verschiedenen Records bearbeiten und unterschiedliche Einstellungen vornehmen bzw. anpassen können. Ihre erste Master-Zone ist erstellt. www.brain-media.de Zonen erstellen 219 Neben den in voranstehender Abbildung dargestellten Funktionen finden Sie beim Öffnen eines Master-Zone-Eintrags im unteren Bereich zwei weitere Schaltflächen: · Lösche Zone: Drücken Sie diese Schaltfläche, um die Zone aus Ihrem DNS-Server zu löschen. Beachten Sie, dass die zugehörigen ReverseAdresseinträge in anderen Zonen auf diesem Server auch gelöscht werden. · Änderungen anwenden: Klicken Sie diesen Button, um die Änderungen nur für diese Zone zu übernehmen. Dabei wird das Kommando rndc reload localhost ausgeführt. Dies wird nur funktionieren, wenn die Änderungen für den gesamten Server mindestens einmal angewandt wurden, seitdem die Zone erzeugt wurde. Bei der von uns erstellten Master-Zone finden Sie sechzehn Datensätze, die sogenannten Records, die es mit den korrekten Zone-Daten zu füllen gilt: Adresse, Name-Server, Namens-Alias, Mail-Server, Host-Information, Text, Sender Permitted Form (SPF), Bekannter Dienst, Verantwortliche Person, ReverseAdresse, Ortsangabe, Service-Adresse und Öffentlicher Schlüssel. Zu jedem dieser Datensätze wird die Anzahl der zugehörigen Einträge in Klammern angezeigt. Schauen wir uns zwei Einträge exemplarisch an. Der Datensatz Host-Information. Der Aufbau der Datensatzformulare ist weitgehend identisch. Im Datensatz HostInformation geben Sie beispielsweise den Hostnamen, eine Info zur Hardware und zum Betriebssystem an. Außerdem können Sie den TTL-Wert definieren. Ähnlich ist es beim Datensatz Verantwortliche Person, mit dem Sie Kontaktinformationen des Administrators hinterlegen. Hier hinterlegen Sie ebenfalls den NaWebmin kompakt BIND DNS-Server 220 men, die E-Mail-Adresse und gegebenenfalls den Textdatensatz, in dem beispielsweise weitere Kontaktmöglichkeiten zu finden sind. Diese Daten sind für Betreiber anderer Nameserver wichtig, wenn Sie mit dem Server-Administrator in Kontakt treten wollen. Der Datensatz Verantwortliche Person. Die neuen Einträge werden mit einem Klick auf die Schaltfläche Erstellen erzeugt. 19.2 Datensatztypen Webmin unterstützt nicht alle von BIND vorgesehenen Datensatztypen, aber zumindest die wichtigsten. Die wichtigsten sind: · Adresse: Hier geben Sie den Namen und die IP-Adresse des Servers an. Sie können außerdem die Unterstützung für Reserve-Aktualisierungen aktivieren. · Name-Server: Dieses Formular erlaubt das Hinzufügen eines Nameserver-Datensatzes. Dabei müssen Sie den Zonennamen und den Nameserver-Namen angeben. Das Formular erlaubt außerdem das Löschen von bestehenden Einträgen. · Namens-Alias: Über dieses Formular können Sie einen Alias für den Nameserver definieren. Damit ist der Server dann unter einer anderen Bezeichnung erreichbar und selbst ebenfalls schwerer angreifbar. · Mail-Server (MX): Der Mailserver-Eintrag teilt Zustellsystemen wie Sendmail und Qmail mit, welche Systeme für die Zustellung von E-Mails kontaktiert werden müssen. Der MX-Record ermöglicht es, unter einer Domain mehrere Mailserver zu betreiben. Außerdem erlaubt es die Einführung von Prioritäten, die vorgeben, in welcher Reihenfolge die Mailwww.brain-media.de Datensatztypen 221 server eine bestimmte Domain kontaktieren sollen. Fällt einer dieser Server aus, erhöht das die Wahrscheinlichkeit, dass eine E-Mail trotzdem an die Empfängerdomain zugestellt werden kann. Für primäre Mailserver verwendet man meist den Wert 5, für Back-up-Relays eine 10. · Host-Information: Diesen Record haben Sie zuvor bereits kennengelernt. Hier können Sie beispielsweise das Betriebssystem Ihres Servers, also in unserem Fall Linux eingeben. · Text: Dieser Typ wird zwar eher selten verwendet, erlaubt Ihnen aber das Einfügen von Zusatzinformationen zu Ihrer BIND-Installation. Sender Permitted Form verspricht mehr Schutz beim E-Mail-Versand. · Sender Permitted Form (SPF): SPF ist eine Technik, die das Fälschen des Absenders einer E-Mail auf SMTP-Ebene erschweren soll. Dazu wird in der DNS-Zone einer Domäne ein sogenannter Resource Record vom Typ TXT oder SPF mit Informationen darüber hinterlegt, welche Systeme E-Mails für diese Domäne versenden dürfen. Anhand dieser Informationen soll der Empfangs-Server dann sowohl die MAIL-FROM-Identität als auch die HELO-Identität des Senders nachprüfen. Absenderangaben im Webmin kompakt BIND DNS-Server 222 E-Mail-Header werden nicht überprüft. Inzwischen trägt diese Funktion eine andere Bezeichnung: Sender Policy Framework, kurz SPF. · Bekannter Dienst: WKS-Records geben Auskunft über die Dienste, die ein Rechner im Netz für ein bestimmtes Protokoll (UDP oder TCP) anbietet. Die Liste der Dienste entstammt der Datei /etc/services. Pro Host und Protokoll sollte es nur einen WKS-Record geben. · Verantwortliche Person: Das RP-Record (Responsible Person Record) benennt eine Person oder eine Gruppe von Personen, die für einen Rechner und seinen ordnungsgemäßen Betrieb verantwortlich sind. Dieser Datensatztyp ermöglicht es den Benutzern, bei einem Rechnerausfall Kontakt mit den Verantwortlichen aufzunehmen und die Ausfallzeiten zu minimieren. · Reverse-Adresse: Dieser Eintrag gibt an, welche Hosts E-Mails von dieser Domain senden dürfen. Hier geben Sie die Adresse und den Hostnamen an. · Ortsangabe: Mit den sogenannten LOC-Resource-Record (location) wird einem Namen eine präzise Positionsangabe zugeordnet. Über Längen-, Breiten- und Höhenangaben wird exakt ein geometrischer Ort bestimmt. Um auch räumlich ausgedehnte Ortsdefinitionen zu ermöglichen, kann durch Angabe eines Radius um diesen Punkt eine virtuelle Kugel definiert werden. · Service-Adresse: Über den Service-Address-Record, kurz SRV, können für einen spezifischen Dienst ein oder mehrere Server angegeben werden. · Öffentlicher Schlüssel: Schließlich können Sie sogenannten KEYRecords erzeugen. KEY-Resource-Records dienen der Propagierung öffentlicher Schlüssel durch das DNS. Mit dieser Technik versucht man ein zentrales Problem zu lösen: Wie macht ein User seinen öffentlichen Schlüssel bekannt? Dazu dient der Eintrag Öffentlicher Schlüssel. Der Besitzer des Schlüssels legt diesen als KEY-RR auf einem öffentlich zugängigen DNS-Server ab. Jeder, der den Public Key dieses Users benötigt, sendet eine entsprechende DNS-Anfrage. Als Antwort erhält er dann den öffentlichen Schlüssel. Das Verfahren entspricht damit der Propagierung von IP-Adressen. www.brain-media.de Slave-Zone erstellen 223 Das Formular für das Erstellen eines Öffentlichen-Schlüssel-Records. 19.3 Slave-Zone erstellen Mithilfe des Webmin-Moduls können Sie auch sogenannte Slave-Zonen erstellen. Eine Slave-Zone ist immer dann erforderlich, wenn der Nameserver offizieller Ersatzserver beim Ausfall eines primären Nameservers ist. Man bezeichnet ihn auch als Secondary Nameserver. Bei einer solchen Konfiguration muss der MasterServer und die Domain eingetragen werden. Bevor Sie dies tun können, muss der Primary-DNS-Server korrekt aufgesetzt worden sein und der Secondary-Nameserver muss zudem korrekt im Adressen-Menü eingetragen worden sein. Wenn nicht, erscheint eine Fehlermeldung in der Datei /var/log/messages. Auch für die Slave-Zone muss ein Reverse-Record eingetragen werden. Webmin kompakt BIND DNS-Server 224 Das Formular zum Erstellen einer Slave-Zone. Nachdem Sie eine Slave-Zone erstellt haben, können Sie dieser verschiedene Zone-Eigenschaften zuordnen. Folgen Sie dazu dem Verweis Bearbeiten Zoneneinstellungen. In dem zugehörigen Formular können Sie folgende Einstellungen bearbeiten: · Master-Server: Hier finden Sie die IP-Adresse des Master-Servers, also beispielsweise 192.168.0.1 in einem lokalen Netzwerk. Sie können in das Eingabefeld weitere Server von Hand eintragen. · Server-Port: Hier finden Sie den Port für den Slave-Zonen-Server. Der Standard-Port ist 53. Sie können aber auch einen anderen Wert eintragen. · Maximale Transferzeit: Hier legen Sie fest, wie lange der Server maximal auf einen Datentransfer wartet. Die Angabe erfolgt in Minuten. · Datensatzdatei: Hier finden Sie den Pfad zum Record-File. Die Angabe könnte wie folgt aussehen: /var/lib/named/testnetz.hosts. Wenn Sie sich für die Option Keine entscheiden, so werden die Datensätze, die von Master-Server kommen, lediglich im Speicher gehalten. · Namen überprüfen? Hier legen Sie fest, ob Namen geprüft werden sollen oder nicht. · Slaves über Änderungen benachrichtigen? Hier legen Sie fest, ob der Master den Slave-Server über Änderungen informiert. · Updates erlauben von …: In diesem Eingabefeld können Sie Systeme angeben, von denen der Slave-Server Updates beziehen darf. www.brain-media.de Slave-Zone erstellen 225 Die Zoneneinstellungen für eine Slave-Zone. · Transfers erlauben von …: Entsprechend können Sie festlegen, von welchen Servern Transfers akzeptiert werden. · Anfragen erlauben von …: Hier legen Sie fest, welches System Anfragen an den Slave stellen darf. · Auch Slaves benachrichtigen …: Schließlich können Sie Slaves bestimmen, die über Änderungen informiert werden. Mit dem BIND-Modul können Sie auch eine sogenannte Stub-Zone erstellen. Folgen Sie dazu dem Link Neue Stub-Zone anlegen. Ein Stub ist ein Stummel, also nur ein Teil einer offiziellen Domain. Man kann somit z. B. die Einträge für eine Filiale dieser selbst überlassen. Diese setzt dann eine Stub-Zone auf und gibt den Nameserver der Zentrale als Master Server an. Alle Einträge werden dann regelmäßig auf dem Master-Server aktualisiert. Sie können zwei weitere Zonen erstellen: · Weiterleitungszone · Delegationszone Webmin kompakt 226 BIND DNS-Server Die Funktionen beim Erstellen einer solchen Zone entsprechen weitgehend den zuvor beschriebenen. 19.4 Globale BIND-Einstellungen Bislang haben wir uns lediglich mit dem Erstellen von Zonen befasst. Nun wollen wir uns noch mit den globalen BIND-Einstellungen befassen. Dazu gehören beispielsweise die Protokollierung der BIND-Aktivitäten, die Konfiguration des Zugangs, das Weiterleiten und der Datentransfer und die DNS-Schlüssel. Schauen wir uns zunächst die Protokoll- und Fehlerfunktionen an. Ein zentraler Begriff in der Protokoll- und Fehlerfunktion ist der des Protokollierungskanals. Bei einer Standardinstallation präsentiert Ihnen das BIND-Modul vier vordefinierte Kanäle, die durch eine eigene Bezeichnung, durch die Angabe, wo die Protokollierung erfolgt (Syslog, Standardausgabe etc.), und durch den minimalen Meldungslevel bestimmt sind. In der Protokollierungs- und Fehlerfunktion finden Sie vordefinierte Protokollkanäle und können neue erstellen. www.brain-media.de Globale BIND-Einstellungen 227 Mit einem Klick auf Neuen Kanal hinzufügen wird die Seite um ein Formular erweitert, das das Erstellen eines neuen Protokollierungskanals erlaubt. Dabei müssen Sie neben der Kanalbezeichnung folgende Angaben vornehmen: · Wo erfolgt die Protokollierung? Sie können beispielsweise eine neue Datei für die Protokolldaten erzeugen oder diese in den Syslog schreiben. · Welches ist der minimale Meldungslevel? Hier haben Sie die Wahl zwischen typischen Leveln (critical, error, warning, notive, info, DebugLevel und Globaler Level). Außerdem können Sie festlegen, ob die Protokollierungskategorie und der Schweregrad der Protokolldatei in der Log-Datei vermerkt werden sollen. Am Fuße des Protokolldialogs finden Sie die Funktion Protokollierungskategorien. Damit können Sie eigene Kategorien erstellen, um die verschiedenen Protokollkanäle gruppieren zu können. BIND unterstützt die Zugriffssteuerung mithilfe von ACLs (Access Control Lists). So können Sie den Zugriff auf den Nameserver einschränken. Man unterscheidet zwischen folgenden Berechtigungen: · Notify · Query (Abfragen) · Transfer (komplette Zone transferieren) · Update (dynamische Änderungen an Zonen vornehmen) Die Handhabung der ACL-Funktion ist einfach: Geben Sie einfach in das Feld ACL-Name die gewünschte Bezeichnung ein und legen Sie dann im danebenstehenden Eingabefeld die IP-Adressen, Netzwerk und ACL-Dateien fest. Mit einem Klick auf Speichern ist der erste Zugriff definiert. Die Liste wird um eine weitere Zeile erweitert und Sie können weitere Berechtigungen definieren. Sie können BIND so konfigurieren, dass dieser alle Anfragen an einen DNS-Server weiterleitet. In diesem Fall wird Ihr BIND-Server zu einem DNS-Client. Sinnvoll ist das beispielsweise zur temporären oder permanenten Entlastung Ihres Servers. Webmin kompakt BIND DNS-Server 228 Hier bestimmen Sie, an welche Server die Daten der DNS-Abfragen weitergeleitet werden. Auch die Konfiguration der globalen Weiterleitungs- und Transfereinstellungen ist recht einfach. Ihnen stehen folgende Einstellungen zur Verfügung: · Server, an die Anfragen weitergeleitet werden sollen: Hier geben Sie die IP-Adresse und eventuell den Port des Systems an, an das die Anfragen weitergeleitet werden. Sie können in den vordefinierten Feldern mehrere alternative Server angeben. · Direkter Lookup, wenn die Weiterleitung keinen Lookup machen kann? Gelingt Ihrem BIND-Server die Kontaktaufnahme zu einem angegebenen Server nicht, so kann dieser einen direkten Lookup durchführen. Das setzt natürlich voraus, dass Ihr System Lookups ausführen kann. · Maximale Zonentransferzeit: Hier bestimmen Sie, wie lange Ihr BINDServer maximal auf die Übermittlung der Daten wartet. Der Standard ist 120 Minuten. · Zonentransferformat: Hier legen Sie fest, ob verschiedene Transferformate zulässig sind. · Maximale Anzahl gleichzeitiger Zonentransfers: Schließlich können Sie festlegen, wie viele Zonentransfers maximal gleichzeitig durchgeführt werden können. Standardmäßig sind es zwei. www.brain-media.de DNS-Schlüssel 229 19.5 DNS-Schlüssel Um die Kommunikation zwischen DNS-Server und -Clients abzusichern, unterstützt BIND Schlüssel, die den Datentransfer verschlüsseln. Sie müssen lediglich in das zugehörige Formular die Schlüsselnummer, den Verschlüsselungsalgorithmus und die Phrase eingeben. Die Definition von Zonenstandards. 19.6 Zonenstandards In den globalen BIND-Einstellungen können Sie auch sogenannten Zonenstandards definieren. Dazu folgen Sie dem gleichnamigen Link. Das zugehörige Formular erlaubt die Definition von Standardeinstellungen für neue Master-Zonen. Diese Einstellungen gelten standardmäßig für alle neu erzeugten Master-Zonen, können aber in den jeweiligen Zonenkonfigurationen individuell angepasst werden. Webmin kompakt BIND DNS-Server 230 19.7 rndc BIND enthält das Utility rndc, mit dem Sie den named-Daemon über die Befehlszeile vom lokalen und von einem Remote-Host verwalten können. Um zu verhindern, dass nicht autorisierte Benutzer Zugriff auf den named-Daemon erlangen, verwendet BIND eine Authentifizierungsmethode, auf einem gemeinsamen geheimen Schlüssel basierend, um Hostsystemen den Zugriff zu gewähren. Das heißt, dass ein übereinstimmender Schlüssel in /etc/named.conf und der rndcKonfigurationsdatei /etc/rndc.conf existieren muss. Über den Link RNDC einrichten können Sie BIND unter die Kontrolle des RNDCProgrammes stellen. So können einzelne Zonen aktualisiert werden, ohne einen ganzen Neustart des BIND machen zu müssen. Dies ist beispielsweise sinnvoll, wenn Ihr BIND-Server auf einem schwachbrüstigen ausgeführt wird oder die Anzahl der verwalteten Zonen über 30 liegt. Um die Einrichtung von RNDC durchzuführen, klicken Sie auf die Schaltfläche Ja, RNDC einrichten. Anschließend können Sie sich an der Remote-Administration auf Konsolenebene versuchen. Ein rndc-Befehl sieht wie folgt aus: rndc <options> <command> <command-options> Wenn rndc auf einem korrekt konfigurierten lokalen Host ausgeführt wird, stehen Ihnen folgende Befehle zur Verfügung: · halt: hält den named-Service sofort an. · querylog: protokolliert alle Abfragen, die von Clients auf diesem NameServer durchgeführt wurden. · refresh: aktualisiert die Datenbank des Nameservers. · reload: weist den Nameserver an, die Zone-Dateien neu zu laden, aber alle vorher verarbeiteten Antworten zu behalten. · stats: schreibt die aktuellen /var/named/named.stats. · stop: stoppt den Server vorsichtig und speichert dabei alle dynamischen Updates und die vorhandenen Incremental-Zone-Transfers-Daten (IXFR) vor dem Beenden. named-Statistiken www.brain-media.de in die Datei Konfigurationsdateien einsehen und bearbeiten 231 Webmin erlaubt auch das Editieren der BIND-Konfigurationsdateien. 19.8 Konfigurationsdateien einsehen und bearbeiten Auch beim BIND-Modul ist das Öffnen der BIND-Konfigurationsdateien möglich. Folgen Sie dazu dem Verweis Edit Config File, wählen Sie über das Auswahlmenü eine der beiden Konfigurationsdateien aus. Sie können mit Webmin die beiden folgenden Dateien editieren: /etc/named.conf /etc/named.conf.include Webmin kompakt BIND DNS-Server 232 Die BIND-Modulkonfiguration fällt sehr umfangreich aus. 19.9 Modulkonfiguration Die Modulkonfiguration für den BIND-Server stellt Ihnen eine Vielzahl an Konfigurationsmöglichkeiten zur Verfügung. Die Einstellungen sind in vier Bereiche gruppiert: · BIND-Pfade: Hier finden Sie verschiedene Pfadangaben, die Webmin der BIND-Installation entnimmt. Sie können außerdem anpassen, welcher Benutzer und welche Gruppe BIND startet. · Anzeigeoptionen: Hier legen Sie beispielsweise fest, ob die Domänen als Icons, als Liste oder hierarchisch aufgeführt werden. Sie können auch die Reihenfolge anpassen. · Zonendatei-Optionen: Mit diesen Einstellungen passen Sie die Zonendatei an. www.brain-media.de Modulkonfiguration · 233 Systemkonfiguration: In diesem Bereich finden Sie die Pfade zu den BIND-Konfigurationsdateien und verschiedenen Hilfsprogrammen wie whois, ndc und rndc. Diese Einstellungen müssen in der Regel nicht bearbeitet werden. Mit dem BIND-Modul ist es recht einfach, ein so komplexes Werkzeug wie den DNS-Server zu konfigurieren. BIND-Profis wird das oft nicht genügen, den meisten Admins sicherlich schon. Webmin kompakt 234 BIND DNS-Server www.brain-media.de 235 20 DHCP-Server-Konfiguration Mit dem DHCP-Server-Modul konfigurieren Sie den ISC DHCP-Server in der auf Ihrem System installierten Version. Mithilfe von DHCP (Dynamic Host Configuration Protocol) können Sie Ihrem Netzwerk-Client eine IP-Adresse und weiterer Konfigurationsparameter dynamisch zuweisen. Die Übersichtsseite des DHCP-Server-Moduls. Den meisten Lesern dürfte der Begriff DHCP geläufig sein. Es kommt insbesondere in lokalen Netzwerken und bei sehr großen Netzen zum Einsatz. Es wurde speziell für zwei zentrale Einsatzbereiche entwickelt: Webmin kompakt DHCP-Server-Konfiguration 236 · Große Netzwerke mit häufig wechselnder Topologie, beispielsweise für typische Provider-Umgebungen. · Für Umgebungen, in denen Anwender eine einfache Netzwerkkonfiguration wünschen. Der entscheidende Vorteil von DHCP: Sie müssen nicht mehr alle Systeme des Netzwerks von Hand konfigurieren, sondern können die entsprechenden Vorgaben vom Administrator einmal in der Konfigurationsdatei des DHCP-Servers ändern. Auch für Rechner mit häufig wechselndem Standort (z. B. Notebooks) entfällt die fehleranfällige Konfiguration – der Rechner wird einfach ans Netzwerk gesteckt und holt sich alle relevanten Parameter vom DHCP-Server. Man spricht daher gelegentlich auch von einem Plug’n’Play-Netzwerk. 20.1 DHCP-Server-Basics Schauen wir uns kurz an, was Sie über den DHCP-Server wissen sollten. Standardmäßig wartet der DHCP-Server auf UDP-Port 67 auf Client-Anfragen. In seiner Konfigurationsdatei befinden sich Informationen über den zu vergebenden Adresspool sowie zusätzliche Angaben über netzwerkrelevante Parameter wie die Subnetzmaske, die lokale DNS-Domäne oder das zu verwendende Gateway. Der Server kennt drei verschiedene Betriebsmodi: manuelle, automatische und dynamische Zuordnung. Die wichtigsten Eigenschaften der Modi: · Manuelle Zuordnung: In diesem Modus werden am DHCP-Server die IP-Adressen bestimmten MAC-Adressen fest zugeordnet. Die Adressen werden der MAC-Adresse auf unbestimmte Zeit zugeteilt. Der Nachteil: Sie können keine zusätzlichen Clients in das Netz einbinden, da die Adressen fest vergeben sind. Man verwendet diesen Modus vor allem dann, wenn der DHCP-Client beispielsweise Server-Dienste zur Verfügung stellt und daher unter einer festen IP-Adresse erreichbar sein soll. Auch Port-Weiterleitungen von einem Router an einen Client benötigen in der Regel eine feste IP-Adresse. · Automatische Zuordnung: Bei diesem Modus wird am DHCP-Server ein Bereich von IP-Adressen definiert. Wenn die Adresse aus diesem Bereich einmal einem DHCP-Client zugeordnet wurde, dann gehört sie diesem für eine unbestimmte Zeit. Ist der Adressbereich komplett vergeben, so können sich keine zusätzlichen Clients in das Netz einbinden. www.brain-media.de Das Webmin-DHCP-Modul · 237 Dynamische Zuordnung: Dieses Modul ist der automatischen Zuordnung sehr ähnlich, allerdings hat der DHCP-Server in seiner Konfigurationsdatei eine Angabe, wie lange eine bestimmte IP-Adresse an einen Client vergeben werden darf, bevor der Client sich erneut beim Server melden und eine Verlängerung beantragen muss. Meldet er sich nicht, wird die Adresse frei und kann an einen anderen (oder auch den gleichen) Rechner neu vergeben werden. Man bezeichnet diese Zeit auch als LeaseTime (Mietzeit). 20.2 Das Webmin-DHCP-Modul Mit dem Webmin-DHCP-Modul können Sie eine Vielzahl wichtiger DHCPspezifischer Funktionen vornehmen. Sie finden das DHCP-Servermodul wie alle anderen Servermodule auch in der Server-Kategorie. Über die Einstiegsseite können Sie verschiedene Aktionen durchführen: · Einsehen und Einrichten von Subnetzen · Hosts und Hostgruppen erzeugen und anpassen · DNS-Zonen erstellen und bearbeiten · Client-Einstellungen bearbeiten · Server starten Ist der DHCP-Server noch nicht auf Ihrem System installiert, so gibt auch dieses Modul eine entsprechende Warnmeldung aus, dass der Server zunächst installiert werden muss. Sollten Sie allerdings sicher sein, dass der Server konfiguriert ist, so müssen Sie gegebenenfalls die Modulkonfiguration anpassen. Wie Sie obiger Abbildung entnehmen können, kommt dieses Linux-System bereits mit verschiedenen Beispielinstallationen daher. Dies variiert von System zu System. Beachten Sie, dass es im Bereich Hosts und Hostgruppen mit Assignment eine spezifische Ordnungsfunktion gibt, die der Sortierung dient. Dabei werden Hostnamen vor Gruppen aufgeführt – und zwar in der Reihenfolge, in der Sie in der DHCP-Serverkonfigurationsdatei aufgeführt werden. Die Anpassung der Standardsortierung ist über folgende Links möglich: · File structure · Name Webmin kompakt DHCP-Server-Konfiguration 238 · Hardware address · IP address Eine ähnliche Sortierung war für die Netzwerkliste in Vorgängerversionen auch verfügbar. Warum Jamie Cameron Sie in der aktuellen Version nicht mehr integriert, ist leider nicht bekannt. 20.3 Subnetze editieren und hinzufügen Schauen wir uns zunächst die Funktion Subnetze editieren und hinzufügen an. In einer einfachen DHCP-Serverkonfiguration erzeugen Sie ein simples Subnetz mit einem mehr oder minder kleinen Adressbereich, den die Clients nutzen können. Um ein solches Subnetz zu erzeugen, folgen Sie dem Link Ein neues Subnetz hinzufügen. In dem zugehörigen Formular bestimmen Sie eine Vielzahl von Eigenschaften. Ein neues Subnetz in der Entstehung. www.brain-media.de Subnetze editieren und hinzufügen 239 Das Formular Subnet-Details verlangt folgende Eingaben bzw. Einstellungen von Ihnen (leider ist auch dieses Formular nicht durchgängig deutschsprachig): · Subnet description: Hier hinterlegen Sie eine Beschreibung für Ihr Subnetz. Sie finden diese Bezeichnung in der Subnetzliste wieder und greifen über die Liste auf die Einstellungen zu. · Netzwerkadresse: In diesem Feld hinterlegen Sie die Netzwerkadresse. Bei einem lokalen Netzwerk kann diese beispielsweise 192.168.1.0 lauten. · Netzmaske: In diesem Feld bestimmen Sie die Netzmaske. Bei einem Netzwerk mit obiger Adresse kann dies beispielsweise 255.255.255.0 sein. · Adressbereiche: Mit diesen beiden Eingabefeldern bestimmen Sie den Adressbereich, der den Clients zugewiesen werden kann. Er kann beispielsweise 192.168.0.10 bis 192.168.0.20 lauten. Wichtig bei der Wahl des Bereichs ist, dass Sie den Umfang ausreichend, aber nicht zu groß dimensionieren. Wenn Sie nur 10 oder 20 Clients anzubinden haben, benötigen Sie auch keinen Bereich mit 100 oder gar 200 Adressen. Das Besondere an dieser Funktion: Sie können Ihrem Subnetz auch mehrere Adressbereiche zuweisen. Dazu speichern Sie Ihr Subnetz zunächst und edieren es dann. Über den Link Add an address pool weisen Sie dann dem Subnetz einen weiteren Adressenbereich zu. · Dynamisches BOOTP? Mit diesem Kontrollkästchen legen Sie fest, ob Sie dynamisches BOOTP verwenden wollen. Das ist eine Erweiterung des BOOTP-Protokolls, das dem DHCP-Server die Konfiguration von BOOTP-Clients ohne die Verwendung einer expliziten, festen Adressenkonfiguration ermöglicht. Diese Funktion vereinfacht die Administration großer BOOTP-Netzwerke, mit denen die automatische Verteilung von IP-Adressen (nahezu identisch mit der DHCP-Verwendung) ohne clientseitige Änderungen möglich ist. · Freigegebenes Netzwerk: Über dieses Auswahlmenü können Sie das neue Subnetz einem anderen Netzwerk zuordnen. · Standardvergabezeit: Hier legen Sie fest, wie lange eine Adresse einem Client zugewiesen wird. Der Standard ist 600 Sekunden, also 10 Minuten. Nach Ablauf dieser Zeitspanne muss der Client die Adresse erneuern. · Boot-Dateiname: Wenn Sie in Ihrem Netzwerk Systeme ohne Festplatte verwenden, so können diese beim Booten die notwendigen Daten von einer Boot-Datei beziehen. In diesem Eingabenfeld bestimmen Sie den Dateinamen sowie den Pfad. Webmin kompakt DHCP-Server-Konfiguration 240 · Maximale Vergabezeit: Hier bestimmen Sie die maximale Zuweisungsdauer der Adresse. Sie ist standardmäßig 7200 Sekunden. Eine Anpassung dieses Werts ist in der Regel nicht erforderlich. · Boot-Datei-Server: In diesem Feld legen Sie fest, vom welchem Server festplattenlose Geräte Ihre IP-Adresse beziehen. Sie können in großen Umgebungen diese Aufgabe auch auf einen anderen Server auslagern. Geben Sie dazu dessen Hostname oder dessen IP-Adresse an. · Vergabelänge für BOOTP-Clients: Hier legen Sie die Vergabelänge für BOOTP-Clients in Sekunden an. · Vergabeende für BOOTP-Clients: Entsprechend können Sie das Ende für BOOTP-Clients definieren. · Dynamic DNS enabled? Für die Adresszuweisung können Sie außerdem die Verwendung von dynamischen CNS aktivieren bzw. deaktivieren. In der Regel können Sie die Standardeinstellung beibehalten. · Dynamic DNS domain name: In diesem Eingabenfeld können Sie den DNS-Domainnamen anpassen. Dieser kann beispielsweise server.de lauten. · Dynamic DNS reverse domain: Auch die Anpassung des Reverse-DNS ist möglich. · Dynamic DNS hostname: Wollen Sie ein spezifisches DNS-System oder auch mehrere nutzen, so geben Sie hier den Hostnamen bzw. die IPAdresse an. Bei Verwendung mehrerer Systeme trennen Sie die einzelnen Einträge durch ein Leerzeichen. · Allow unknown clients? Hier legen Sie fest, wie der DHCP-Server mit ihm unbekannten Clients umgeht. Das Webmin-Modul sieht vier Einstellungen vor: · o Allow – zulassen o Deny – ablehnen o Ignore – ignorieren o Standard – Standardeinstellung Client-Updates: Hier legen Sie fest, ob Clients ihre eigenen Einträge ändern dürfen. Auch hier stehen Ihnen folgende Einstellungen zur Verfügung: www.brain-media.de Subnetze editieren und hinzufügen o Allow – zulassen o Deny – ablehnen o Ignore – ignorieren o Standard – Standardeinstellung 241 Aus sicherheitstechnischen Überlegungen heraus sollten Sie diese Fähigkeit deaktivieren. · Server is authoritative for this subnet? Soll Ihr DHCP-Server der zentrale Server in Ihrem Netz sein, so setzen Sie diesen Schalter auf Ja. · Hosts directly in this subnet: Über dieses Auswahlmenü können Sie Hosts direkt dem Subnetz zuordnen. · Groups directly in this subnet: Auch Gruppen können Sie direkt dem Subnetz zuordnen. Mit einem Klick auf Erstellen speichern Sie die Einstellungen des neuen Subnetzes. Wenn Sie Ihren ersten Subnetzeintrag nun editieren, finden Sie am Fuße des Formulars verschiedene weitere wichtige Funktionen. Dort können Sie insbesondere folgende Aktionen durchführen: · die Client-Einstellungen bearbeiten · die Lease-Einstellungen einsehen · einen neuen Host bzw. eine Hostgruppe dem Subnetz zuordnen · einen neuen Adressenpool hinzufügen Webmin kompakt 242 DHCP-Server-Konfiguration Das Hinzufügen eines neuen Adresspools. Um dem Subnetz einen Adresspool hinzuzufügen, klicken Sie am unteren Formularende auf den Verweis Add an address pool. Die Einstellungen des zugehörigen Formulars entsprechen weitestgehend den Funktionen beim Erstellen eines neuen Subnetzes. Auch hier legen Sie zunächst den Adressbereich fest. www.brain-media.de Hosts und Hostgruppen erstellen 243 Das Hinzufügen eines neuen Hosts. 20.4 Hosts und Hostgruppen erstellen Sowohl über die DHCP-Server-Einstiegsseite als auch über die Subnetzseite können Sie Hosts und Hostgruppen erstellen. Zum Erstellen eines Hosts, der über den DHCP-Server mit einer IP-Adresse versorgt wird, klicken Sie im Bereich Hosts und Hostgruppen auf den Link Einen neuen Host hinzufügen. Auf dem Formular Host erstellen hinterlegen Sie zunächst eine Beschreibung und den Hostnamen. Als Nächstes ist die Zuweisung dran. Dabei können Sie die Vererbungsfunktion nutzen und dem Host beispielsweise die Eigenschaften eines Subnetzes zuordnen. In diesem Fall wählen Sie aus dem Auswahlmenü den Eintrag Subnet und bestimmen dann in dem zweiten Auswahlmenü das Netz, dessen Einstellungen für den neuen Host übernommen werden sollen. Wenn Sie dem Host eine feste Adresse zuordnen wollen, hinterlegen Sie diese im Eingabefeld Feste IP-Adresse. Mit einem Klick auf Erstellen ist der erste neue Host-Eintrag erzeugt. Webmin kompakt DHCP-Server-Konfiguration 244 Die Client-Einstellungen. 20.5 Die Client-Einstellungen Auch das Bearbeiten der DHCP-Client-Einstellungen ist mithilfe von Webmin möglich. Dabei ist zwischen den allgemeinen und den Host-spezifischen ClientEinstellungen zu unterscheiden. Auf die Host-spezifischen Einstellungen greifen Sie zu, indem Sie einen Host öffnen und dann am Fuße des Host-Formulars auf die entsprechende Schaltfläche klicken. Die allgemeinen Einstellungen einzusehen, wenn Sie über die DHCPServer-Startseite auf die Schaltfläche Bearbeite Client-Einstellungen klicken. Funktional sind beide identisch, allerdings wirken sich die allgemeinen Einstellungen auf alle Subnetze, freigegebenen Netzwerke, Hosts und Hostgruppen aus. Interessant sind hier sicherlich die Konfigurationsmöglichkeiten für die verschiedenen Server. Sie können insbesondere folgende Server in die DHCP-ClientKonfiguration einbinden: · Zeit-Server · Protokoll-Server · Swap-Server www.brain-media.de Die Client-Einstellungen · NIS-Server · Font-Server · XDM-Server · NTP-Server 245 Die Wahl der Netzwerkschnittstelle. Am Fuße der Einstiegsseite finden Sie verschiedene weitere Funktionen. Dort können Sie beispielsweise den TSIG-Schlüssel bearbeiten. Mittels TSIG (Transaction SIGnatures) sind sichere Transaktionen möglich. Dabei kommen sogenannte Transaktionsschlüssel (Transaction Keys) und -signaturen (Transaction Signatures) zum Einsatz. Benötigt werden sichere Transaktionen bei der Kommunikation von Server zu Server und für dynamische Aktualisierungen der Zonendaten. Eine auf Schlüsseln basierende Zugriffskontrolle bietet dafür eine weit größere Sicherheit als eine Kontrolle, die auf IP-Adressen basiert. Sie können außerdem die Konfigurationsdatei des DHCP-Servers einsehen und bearbeiten, die Netzwerkschnittstelle ändern, über die der Server ansprechbar ist, und die Liste der aktuell von Ihrem Server zugewiesenen dynamischen Adressen. Schließlich können Sie den Server über die entsprechende Schaltfläche starten, sofern Sie ihn noch nicht in Betrieb genommen haben. Webmin kompakt 246 DHCP-Server-Konfiguration Der integrierte Texteditor erlaubt direkte Eingriffe in die DHCP-Konfigurationsdatei. 20.6 Modulkonfiguration Auch das DHCP-Servermodul besitzt eine eigene Modulkonfiguration, auf die Sie wie gewohnt über den Link im Kopfbereich des Servermoduls zugreifen. Wie Sie es von anderen Modulkonfigurationen inzwischen kennen, präsentiert Ihnen das zugehörige Formular zwei Bereiche: anpassbare Einstellungen und Systemeinstellungen. www.brain-media.de Modulkonfiguration 247 Ein Blick auf die DHCP-Server-Modulkonfiguration. Für mögliche Anpassungen sind ohnehin fast ausnahmslos die konfigurierbaren Optionen interessant. Werfen wir daher einen Blick auf diese: · Sortiere Leases nach: Hier legen Sie die Sortierreihenfolge der Leases fest. Sie haben die Wahl zwischen folgenden Einstellungen: o Reihenfolge in Datei o IP-Adresse o Hostname · Zeige Sub-Netze und Hosts als: Hier legen Sie fest, ob die Subnetze und Hosts als Icons oder als Liste angezeigt werden. · Icons in Reihe: Wenn Sie sich für die Darstellung durch Icons entscheiden, können Sie die Anzahl an Icons pro Reihe definieren. Webmin kompakt DHCP-Server-Konfiguration 248 · Zeige Leases-Zeiten in: Dieser Schalter erlaubt Ihnen die Anpassung der Leases-Zeiten. Sie können sich zwischen GMT und der Lokalzeit entscheiden. Die Verwendung von GMT macht insbesondere dann Sinn, wenn Sie Systeme in mehreren Zeitzonen verwalten. Da das vermutlich eher selten der Fall ist, können Sie den Schalter auch auf Lokalzeit setzen. · Show IP addresses for hosts? Hier legen Sie fest, ob die IP-Adressen der Hosts angezeigt werden oder nicht. In der Regel kommen Sie gut ohne diese Information aus. · Show MAC addresses for hosts? Auch hier können Sie die Ansicht aktivieren bzw. deaktivieren. Meist wird die Zusatzinformation nicht benötigt. · Show group names as: Hier legen Sie fest, wie der Gruppenname angezeigt wird. Sie haben die Wahl zwischen folgenden Einstellungen: o domain-name option o Name or member count o Description Die Option Name ist standardmäßig aktiviert und dürfte in den meisten Fällen auch den Anforderungen genügen, denn dabei wird in der Gruppenübersicht die Bezeichnung angezeigt, die Sie ihr zugewiesen haben. · Show other object descriptions instead of names? Anstelle des Objektnamens können Sie auch die Objektbeschreibung anzeigen lassen. In der Regel bringt das keinen Informationsgewinn. · Maximum number of subnets and hosts to display: Schließlich können Sie die Anzahl an Subnetzen und Hosts beschränken, die auf der Übersicht angezeigt werden. Im Bereich System configuration finden Sie die Einstellungen, die Webmin Ihrem DHCP-Server entnimmt. Hier sind in der Regel keine Änderungen erforderlich – außer Sie nehmen manuelle Eingriffe in die DHCP-Server-Konfiguration vor. www.brain-media.de Modulkonfiguration 249 Auf der Fetchmail-Übersichtsseite fügen Sie einen neuen Fetchmail-Server hinzu und konfigurieren die regelmäßige Überprüfung. Webmin kompakt 250 DHCP-Server-Konfiguration www.brain-media.de 251 21 Fetchmail-Konfiguration Mithilfe von Webmin ist auch die Administration eines Fetchmail-Servers möglich. Die dazugehörige Konfiguration ist ebenfalls in der Server-Kategorie verfügbar. Fetchmail dient dazu, E-Mails von POP-, IMAP-, ETRN-, oder ODMRfähigen Mailservern abzurufen und leitet sie dann an (E)SMTP- oder LMTP-fähige Mailserver oder ein lokales Zustellprogramm weiter. In der Vergangenheit wurde Fetchmail allerdings häufig wegen seines Designs und der Sicherheitslücken kritisiert, trotzdem ist es auf Unix-artigen Systemen weit verbreitet und wird mit den meisten Linux-Distributionen ausgeliefert. Für Fetchmail gibt es zwei Konfigurationsvarianten: die benutzerspezifische oder systemweite Variante. Die Konfiguration erfolgt über die Konfigurationsdatei fetchmailrc, die sich bei der systemweiten Konfiguration im Home-Verzeichnis von Root befindet. Falls sie noch nicht existiert, kann man die Datei von Hand anlegen. Aber Vorsicht bei den Zugriffsrechten. Diese File darf nur von Root lesbar sein, weil darin die POP3-Passwörter in Klartext gespeichert werden. Das Hinzufügen eines neuen Servers für das Abrufen von E-Mails. Webmin kompakt Fetchmail-Konfiguration 252 Das Formular zum Hinzufügen eines Servers, der mithilfe von Fetchmail auf neue Nachrichten überprüft wird, verlangt von Ihnen folgende Einstellungen: · E-Mailserver-Name: Hier geben Sie den Hostnamen bzw. die IP-Adresse des Servers an. · Abholung aktiviert? Mit diesem Schalter bestimmen Sie, ob Fetchmail den Server regelmäßig auf neue Nachrichten prüfen soll. Wenn Sie den Schalter auf Nein setzen, muss die Überprüfung manuell erfolgen. · E-Mailserver, der abgefragt werden soll: Hier können Sie einen alternativen E-Mail-Server angeben. · Protokoll: Über dieses Auswahlmenü bestimmen Sie den Server-Typ. Sie haben die Wahl zwischen folgenden Protokollen: o POP3 o POP2 o IMAP o IMAP-K4 o IMAP-GSS o APOP o KPOP Sollten Sie nicht wissen, welches Protokoll auf dem abzurufenden Server verwendet wird, sollten Sie dessen Administrator konsultieren. Meist kommt POP3, seltener hingegen IMAP zum Einsatz. · E-Mailserver-Port: Hier können Sie den Port des abzurufenden Mailserver ändern. In der Regel sollten Sie die Konfiguration Standard beibehalten, außer Sie wissen zuverlässig, dass der Zielserver einen anderen Port verwendet und welcher dies ist. · Authentisierungsmethode: Für den Zugriff auf den abzurufenden Server ist natürlich auch die Authentifizierungsmethode relevant, denn der Zugriff kann natürlich nur mit der korrekten Technik erfolgen, die der entfernte Mailserver verlangt. Über dieses Auswahlmenü stehen Ihnen alle gängigen Authentifizierungsmethoden zur Auswahl: o PASSWORD o KERBEROS_V5 o KERBEROS_V4 www.brain-media.de 253 o GSSAPI o CRAM-MD5 o OTP o NTLM o SSH Der Zugriff dürfte in den meisten Fällen über die Passwort-Variante erfolgen. · Prüfe Zustand: Mit diesem Schalter bestimmen Sie, ob Fetchmail den Zustand des abzurufenden Servers prüfen soll oder nicht. Standardmäßig ist die Option Prüfe immer aktiviert, damit Fetchmail immer weiß, in welchem Status sich der Server befindet. Alternativ können Sie die beiden folgenden Einstellungen verwenden: o Nur wenn die Schnittstelle aktiviert ist: Wenn Sie diese Option wählen, versucht Fetchmail lediglich dann eine Verbindung aufzubauen, wenn die Netzwerkstelle verfügbar ist. o mit Adresse / Netzmaske: In diesen Eingabefeldern bestimmen Sie den Adressbereich, für den eine Verbindungsaufnahme versucht wird. Im Bereich E-Mailserver-Benutzerdetails stehen Ihnen folgende Anpassungsmöglichkeiten zur Verfügung. · Benutzername auf E-Mailserver: In diesem Eingabefeld hinterlegen Sie den Benutzernamen, mit dem sich Fetchmail auf dem abzurufenden Server anmeldet. · Paßwort auf E-Mailserver: In dieses Eingabefeld geben Sie das dazugehörige Passwort ein. · Lokaler Benutzer: In dieses Feld geben Sie den lokalen Benutzernamen ein. Dabei kann es sich um einen Namen wie user_sowieso oder auch um die E-Mail-Adresse handeln. Das ist abhängig von dem abzurufenden System. Sie können auch mehrere Benutzernamen einfügen und diese durch Kommata trennen. Es gibt eine dritte Möglichkeit: Sie verwenden das Sternchen (*). In diesem Fall liefert Fetchmail alle E-Mails an die Benutzer aus, bei denen der Benutzername mit der Benutzerkennung der EMail-Adresse übereinstimmt. Webmin kompakt Fetchmail-Konfiguration 254 · Nachrichten auf dem Server belassen? Mit dieser Einstellung legen Sie fest, ob die von Fetchmail angeforderten Nachrichten auch weiterhin auf dem Server verbleiben sollen oder nicht. In der Regel ist das nicht gewünscht. · Immer alle Nachrichten abholen? Hier legen Sie fest, ob immer alle Nachrichten von dem Server abgerufen werden sollen. Das ist in der Regel ebenfalls nicht erwünscht. · Verbinde mit SSL? Hier legen Sie fest, ob die Verbindungsaufnahme zwischen Fetchmail und dem Remote-Mailserver per SSL erfolgt. In der Regel ist auch das nicht der Fall. Aus Sicht der Sicherheit aber in jedem Fall wünschenswert. · Befehl, der vor dem Verbindungsaufbau ausgeführt werden soll: Sie können dieses Eingabefeld nutzen, um vor dem Verbindungsaufbau ein spezifisches Kommando auszuführen. Sie könnten beispielsweise einen SSH-Tunnel über den zugehörigen Konsolenbefehl aufbauen. · Befehl, der nach dem Verbindungsaufbau ausgeführt werden soll: Dieses Eingabefeld wird in der Regel dazu genutzt, den im voranstehenden Feld gestarteten Befehl bzw. um den zugehörigen Prozess zu beenden. Mit einem Klick auf Erstellen wird der neue Server in die Server-Liste aufgenommen. Dort können Sie dann auch alle Server mit einem Klick auf Alle Server prüfen auf neue Nachrichten checken. 21.1 Fetchmail-Modulkonfiguration Im Kopfbereich der Fetchmail-Übersicht finden Sie auch bei diesem Modul die Fetchmail-Modulkonfiguration. Auch das zugehörige Formular präsentiert Ihnen wieder konfigurierbare Einstellungen und die Systemkonfiguration. Im Bereich Konfigurierbare Optionen finden Sie folgende Anpassungsmöglichkeiten: · Fetchmail Konfigurations-Datei bearbeiten: Wenn Sie die Standardeinstellung .fetchmailrc-Dateien aller Benutzer beibehalten, werden die Fetchmail-Konfigurationen aller Systembenutzer über die WebminSchnittstelle angezeigt und können geändert werden. Wenn Sie lediglich eine Konfigurationsdatei über die Admin-Schnittstelle zugänglich machen wollen, so geben Sie in das zweite Eingabefeld den zugehörigen Pfad ein. www.brain-media.de Fetchmail-Modulkonfiguration · 255 Zeige Benutzerliste an als: Hier legen Sie fest, in welchem Format die Benutzerliste angezeigt wird. Sie haben die Wahl zwischen beiden folgenden selbsterklärenden Optionen: o Nur Benutzernamen o Benutzernamen und Fetchmail-Konfiguration Standardmäßig ist die zweite Option aktiviert. In kleinen Umgebungen kann auch mal nur der Benutzername genügen. Die Modulkonfiguration des Fetchmail-Servers. · Maximum number of users to display: Mit diesem Schalter legen Sie fest, wie viele Benutzer maximal angezeigt werden. Das sind standardmäßig 400. Sie können den Wert aber natürlich auch auf unbegrenzt (Unlimited) hochsetzen. · Fetchmail-Daemon läuft als Benutzer: In diesem Textfeld erfolgt die Benutzerzuweisung des Fetchmail-Daemons. Er gehört standardmäßig Root. Webmin kompakt Fetchmail-Konfiguration 256 · E-Mail-Auslieferungs-Befehl: Mit der letzten anpassbaren Option bestimmen Sie den Auslieferungsbefehl. Die Auslieferung erfolgt in der Regel per SMTP, Sie können aber beispielsweise auch ein benutzerdefiniertes Sendmail-Kommando in das Eingabefeld eingeben. Im Bereich Systemkonfiguration stehen Ihnen lediglich vier Anpassungsmöglichkeiten zur Verfügung: · Pfad zum Fetchmail-Programm: Hier zeigt Ihnen das Webmin-Modul den Pfad zum Fetchmail-Programm an. · Pfad zur Fetchmail-Daemon PID-Datei: Und hier den Pfad zur PIDDatei. · Kommando um den Fetchmail-Daemon zu starten: Hier legen Sie fest, ob Fetchmail einfach gestartet oder ein benutzerdefiniertes Kommando ausgeführt werden soll. · Kommando um den Fetchmail-Daemon zu stoppen: Schließlich wird standardmäßig der Befehl fetchmail -q aufgerufen, um den Daemon zu beenden. Sie können in dem Eingabefeld alternativ einen anderen Befehl definieren. www.brain-media.de 257 22 Benutzer-E-Mails lesen über Postfix In der Server-Kategorie finden Sie auch den Eintrag Benutzer-E-Mails lesen. Dahinter verbirgt sich der Zugriff auf einen auf Ihrem System installierten PostfixServer. Postfix ist ein Mail-Transfer-Agent für Unix und Linux. Er wurde erschaffen, um eine kompatible Alternative zu Sendmail zu bieten. Bei der Entwicklung wurde insbesondere auf Sicherheitsaspekte geachtet. Postfix ist aber nicht nur sicher, sondern auch schnell und vergleichsweise einfach zu administrieren. Die Übersichtsseite beim Zugriff auf den Postfix-Mailserver. Wenn Sie auf das Benutzer-Mail-Modul zugreifen, so präsentiert Ihnen die zugehörige Übersicht die verschiedenen Benutzer, für die auf Ihrem System Mailkonten eingerichtet sind. Das ist natürlich abhängig von den Berechtigungen, die Webmin besitzt bzw. mit welchen Berechtigungen der eingeloggte Webmin-Benutzer ausgestattet ist. Um auf das Postfach eines Benutzers zuzugreifen, klicken Sie einfach auf den entsprechenden Link. Liegt für den Benutzer eine Nachricht vor, so wird diese in der Nachrichtenübersicht angezeigt. Sie können über die Schaltfläche Schreiben eine Mitteilung an beliebige Empfänger verfassen. Dazu geben Sie im zugehörigen Formular den Absender, den Betreff und gegebenenfalls die Priorität an. Webmin kompakt 258 Benutzer-E-Mails lesen über Postfix www.brain-media.de 259 23 Mailinglisten mit Majordomo verwalten Majordomo ist der Klassiker unter den Mailinglisten-Managern. Wie viele andere Server, die Webmin verwalten kann, ist Majordomo ebenfalls Open-SourceSoftware. Der Manager arbeitet insbesondere mit Sendmail, aber auch mit anderen Mail-Transfer-Agents wie Postfix zusammen. Da Majordomo nicht der GPL unterliegt, sondern eine eingeschränkte OpenSource-Lizenz besitzt, die eine Weiterentwicklung und Verbreitung durch Dritte erschwert, wird es seit 1997 nicht mehr weiterentwickelt und weist inzwischen einige nicht geschlossene Sicherheitslücken auf. Da der Mailinglisten-Manager inzwischen nicht mehr weiterentwickelt wird, erscheinen viele Prozeduren heute nicht mehr zeitgemäß, beispielsweise das vorgesehene Verfahren zum An- und Abmelden durch E-Mail-Kommandos. Zur komfortableren Bedienung wurden später Web-basierte Frontends erstellt. Das bekannteste Frontend ist Majorcool. Auch über Webmin ist die Konfiguration des Tools möglich. Die Übersichtsseite beim ersten Zugriff auf den Mailinglisten-Manager Majordomo. Inzwischen sind viele Listenbetreiber auf das neuere und sicherere GNUProgramm Mailman (http://www.gnu.org/software/mailman/) umgestiegen. Auch Webmin kompakt Mailinglisten mit Majordomo verwalten 260 dieser Manager lässt sich über Webmin administrieren, und zwar über das Mailman-Modul for Webmin (http://sourceforge.net/projects/mailman-mod/). Voraussetzung für die Nutzung von Majordomo ist eine erfolgreiche SendmailInstallation. Prüfen Sie daher zunächst, ob Sendmail auf Ihrem System installiert und konfiguriert ist. Auf Sendmail kommen wir später noch zu sprechen. Sind Sendmail und Majordomo auf Ihrem System installiert, müssen Sie zunächst die E-Mail-Adresse des Besitzers in der Sendmail-Alias-Datei eintragen. Dazu geben Sie die gewünschte Adresse in das Eingabefeld ein und klicken dann auf die Schaltfläche Einrichten von Aliasen. 23.1 Mailinglisten-Übersicht Sie landen automatisch in der Mailinglisten-Übersicht. Da Sie bislang noch keine Liste erzeugt haben, müssen Sie über den Verweis Hinzufügen einer Mailingliste erst eine einrichten. Sie landen auf dem Formular Details der neuen Liste, das folgende Eingaben von Ihnen verlangt: · Name der Liste: Zunächst müssen Sie der Liste eine Bezeichnung zuweisen. Über diese ist sie dann in der Übersicht aufruf- und editierbar. · Adresse des Listenverwalters: In diesem Eingabefeld geben Sie die EMail-Adresse des Listen-Administrators an. · Passwort des Verwalters: Und hier sein das Passwort des ListenAdministrators. · Beschreibung: In diesem Textfeld hinterlegen Sie eine kurze Beschreibung Ihrer Liste. · Einleitende Mitteilung: Und hier hinterlegen Sie den Text, der jedem neuen Abonnenten gemailt wird. Dabei kann es sich um eine Einführung in die Liste, Forenregeln oder andere wichtige Informationen für neue Leser handeln. · Fußzeile einer weitergeleiteten E-Mail: Sie können einer weitergeleiteten Nachricht auch eine Fußzeile mit auf den Weg geben. Meist hinterlegt man hier die Informationen, die für das Abbestellen der Mailingliste wichtig sind. www.brain-media.de Mailinglisten-Übersicht 261 Die Details der neuen Mailingliste. · Moderierte Liste? Hier legen Sie fest, ob die neue Liste moderiert werden soll oder nicht. Bei einer moderierten Liste werden erst alle Beiträge vom Moderator auf Ihre Inhalte und die Listen-Konformität geprüft. Er kann die Beiträge dann manuell freigeben oder löschen. · Adresse des Moderators: Wenn Sie einen Moderator haben, so muss das System natürlich auch wissen, wer das ist. Übernimmt der MajordomAdministrator ebenfalls die Rolle des Moderators, so aktivieren Sie die Option Identisch mit der Adresse des Verwalters. Andernfalls geben Sie die E-Mail-Adresse des Administrators in das Eingabefeld ein. An diese Adresse wird dann immer eine Kopie des Forenbeitrags gemailt. · Mailingliste archivieren? Schließlich können Sie die Beiträge archivieren. Sie haben die Wahl zwischen folgenden Optionen: o Nein o In jährlicher Datei o In monatlicher Datei o In täglicher Datei Webmin kompakt 262 Mailinglisten mit Majordomo verwalten Standardmäßig ist die Archivierung deaktiviert. Ob eine Archivierung, die bisweilen sehr speicherplatzintensiv wird, Sinn macht, muss im Einzelfall entschieden werden. Mit einem Klick auf Erstellen ist Ihre erste Mailingliste – zumindest das Grundgerüst – erstellt. Sie landen in der Bearbeiten-Übersicht, in der Sie dann beispielsweise der Liste erste Mitglieder verpassen, die Zugriffskontrolle, Kopf- und Fußzeilen definieren können. Auch das Löschen der Liste ist mit einem einzigen Klick auf die Löschen-Schaltfläche möglich. Die Details der neuen Mailingliste. Wie Sie voranstehender Abbildung entnehmen können, ist über die ListenEditierfunktion insbesondere das Bearbeiten von der Mitgliederliste möglich. www.brain-media.de Mailinglisten-Übersicht 263 Das Bearbeiten der Mailinglisten-Mitgliederliste. Um Mitglieder in die Mailingliste aufzunehmen, verwenden Sie das Textfeld. Dort geben Sie die Liste der E-Mail-Adressen an, die die E-Mails erhalten sollen, die an diese Liste gesendet werden. Für jeden Eintrag verwenden Sie eine einzelne Zeile. Sie können vier weitere Aktionen durchführen: · Eine E-Mail-Adresse zu der Liste hinzufügen: Mit diesem Eingabefeld fügen Sie einzelne Benutzer der Liste hinzu. · Entferne E-Mail-Adresse aus der Liste: Diese Funktion erlaubt das Entfernen bestehender Listeneinträge. · Unixbenutzer mit der Liste synchronisieren? Die Benutzeradministration vereinfacht sich womöglich, wenn Sie die bestehenden Systembenutzer mit der Mitgliederliste abgleichen. · Domainname, der an den Usernamen angehängt wird: Im letzten Eingabefeld können Sie den Domainnamen bestimmen, der den Benutzernamen angehängt wird. Das macht nur Sinn, wenn Sie im Benutzerfeld nur Benutzerkennungen anstelle von vollständigen E-Mail-Adressen verwenden. Webmin kompakt Mailinglisten mit Majordomo verwalten 264 Wenn Sie dem Link Mitteilungen und Beschreibungen folgen, finden Sie die Einleitung und Beschreibung, die Sie beim Erstellen der Liste hinterlegt haben. In dem dazugehörigen Formular können Sie beide nachträglich ändern. Weitaus wichtiger sind die Funktionen, die sich hinter dem Icon Einschreibung und Moderation verbergen. Dort finden Sie verschiedene Einschreibungs- und Moderationsregeln, die beispielsweise festlegen, wer sich an der Liste anmelden und wer wem kündigen darf. Die Konfiguration der Einschreibungs- und Moderationsfunktionen. Die Einstellungen im Einzelnen: · Einschreibungsregeln: Diese Regeln sehen drei Optionen vor: o Jeder darf sich selbst einschreiben. o Jeder darf jeden einschreiben. o Zustimmung des Verwalters wird benötigt. o Aus sicherheitstechnischen Überlegungen heraus sollte die Zustimmung des Verwalters für das Einschreiben erforderlich sein. www.brain-media.de Mailinglisten-Übersicht · 265 Kündigungsregeln: Auch hier haben Sie drei Optionen: o Jeder kann sich selbst kündigen. o Jeder kann jeden kündigen. o Zustimmung des Verwalters wird benötigt. o Empfehlenswert ist auch hier die letzte (und auch die erste) Option. · Wird eine Bestätigung der Einschreibung verlangt? Setzen Sie diese Option auf Ja, damit eine Einschreibebestätigung erforderlich ist. · Soll die einleitende Mitteilung versandt werden? Mit diesem Schalter bestimmen Sie, ob bei der ersten E-Mail an den neuen Teilnehmer die einleitende Mitteilung gesendet werden soll oder nicht. · Nur die ursprüngliche E-Mail-Adresse zur Liste hinzufügen? Soll nur die ursprüngliche E-Mail-Adresse der Liste hinzugefügt werden, behalten Sie die Standardeinstellung Ja bei. · Benachrichtigung an den Verwalter über Einschreibungen und Kündigungen? Standardmäßig erhält der Mailinglisten-Verwalter eine Benachrichtigung, dass sich ein Benutzer an- bzw. abgemeldet hat. · Weiterleitung der Einschreibungs-/Kündigungsanfrage an den Verwalter? In der Regel ist es außerdem gewünscht, dass Einschreibe- bzw. Kündigungsanfragen beim Verwalter landen. Behalten Sie in diesem Fall die Standardeinstellung Ja bei. · Passwort des Verwalters: In diesem Eingabefeld hinterlegen Sie das Passwort des Mailinglisten-Verwalters. · Moderierte Liste? Soll sich ein Moderator um die Liste und Ihre Inhalte kümmern, schalten Sie hier auf Ja. · E-Mail-Adresse des Moderators? Als Moderator ist standardmäßig der Verwalter vorgesehen. Wenn Sie eine andere Person damit beauftragen wollen, geben Sie hier den Benutzernamen oder die E-Mail-Adresse an. · Moderationspasswort: Hier geben Sie das Passwort des Moderators an. · Die E-Mail-Adresse des Eigentümers: Hier die E-Mail-Adresse des Eigentümers. Webmin kompakt Mailinglisten mit Majordomo verwalten 266 · Die E-Mail-Adresse der Genehmigung: Und schließlich die E-MailAdresse für die Genehmigung von Forenanmeldungen. Die E-Mail-Optionen für Ihre erste Mailingliste. In den E-Mail-Optionen für Ihre Liste bestimmen Sie beispielsweise, ob ein Betreffzusatz wie [Mailingliste-Sowieso] bei weitergeleiteten Nachrichten verwendet wird und wie groß Beiträge maximal sein dürfen. Die Einstellungen im Einzelnen: · "Reply-To:"-E-Mail-Adresse in der zurückgesandten E-Mail: Wenn Sie die Standardeinstellung Nichts beibehalten, so wird ein Reply auf eine Nachricht direkt an den Absender der Nachricht gesendet. · "Sender:"-E-Mail-Adresse in der E-Mail: Hier legen Sie den Absender von an die Mitglieder der Liste weitergeleiteten E-Mails fest. Dieser lautet standardmäßig owner-listname. Sie können natürlich jede andere Ihnen passende Bezeichnung verwenden. · Hostname für die zurückgesandte E-Mail: In diesem Feld können Sie den Hostnamen für zurückgesandte Nachrichten bestimmen. · "Subject:"-Zusatz für zurückgesandte E-Mail: Hier den dazugehörigen Betreffzusatz. · Priorität der zurückgesandten E-Mail: In diesem Feld bestimmen Sie die Priorität zugesandter Nachrichten. Bulk ist in der Regel eine gute Wahl. www.brain-media.de Zugriffskontrolle 267 · Entferne "Recieved:"-Kopfzeile der zurückgesandten E-Mail: Sie können auch die Received-Kopfzeile aus zurückgesandten E-Mails entfernen. Das ist in der Regel nicht gewünscht. · Maximal erlaubte Nachrichtengröße: Um Ihr System nicht von zu fetten Mails lahmlegen zu lassen, sollten Sie die maximale Nachrichtengröße (in Bytes) bestimmen. Werte zwischen 40 und 100 tausend sind meist praxistauglich. 23.2 Zugriffskontrolle Majordomo stellt Ihnen eine Vielzahl an Funktionen zur Steuerung der Zugriffskontrolle zur Verfügung. Sie können beispielsweise festlegen, wer Informationen über eine Liste abrufen darf, wer Postings senden darf und vieles mehr. Für sechs wichtige Majordomo-Befehle stehen Ihnen drei Einstellungen zur Verfügung: get, index, info, intro, which und who. Für diese können Sie folgende Berechtigungen verteilen: · Jedermann · Mitglieder der Liste · Niemand Die Zugriffssteuerung auf die neue Liste. Webmin kompakt Mailinglisten mit Majordomo verwalten 268 Die beiden folgenden Befehle beziehen sich auf das Archiv: · index <Name_der_Liste>: Mit dieser Anweisung erfährt man, ob und welche Dateien es gibt. · get <Name_der_Datei>: Mit diesem Befehl können Sie eine bestimmte Datei anfordern. Die Befehle intro und info liefern der Außenwelt wichtige Informationen zur Liste: · intro: Das Intro informiert neue Listenteilnehmer. · info: Die Info soll Neugierigen mitteilen, wozu diese Liste gut ist und vielleicht auch, wie sie sich eintragen können. · Die beiden Kommandos which und who liefern zusätzliche Informationen über die Liste: · which <EmailAdresse>: Mit diesem Befehl können Sie herausfinden, wer wo alles eingetragen ist. · who: Mit diesem Kommando können Berechtigte abfragen, wer die Liste abonniert hat. Mit fünf weiteren Einstellungen können Sie festlegen, wer an die Liste schreiben kann, und welche Ausdrücke nicht im Nachrichtentext bzw. der Kopfzeile erscheinen dürfen. Wichtig ist dabei, dass alle Ausdrücke (regexps) der Taboo-/ und der Adressen-Liste mit einem Schrägstrich (/) beginnen und enden müssen. In den Mailinglisten-Einstellungen können Sie auch die Kopf- und Fußzeilen bestimmen. www.brain-media.de Übersichtsliste 269 Die Mailinglisten-Konfiguration hat zwei weitere Anpassungsmöglichkeiten zu bieten. Wenn Sie dem Link Kopf- und Fußzeilen folgen, landen Sie in einem einfachen Formular, über das Sie Kopf- und Fußzeile sowie optional zusätzliche SMTPHeaderzeilen definieren. Insbesondere das Feld für die Fußzeile sollten Sie nutzen, um die Teilnehmer darüber zu informieren, wie man die Liste abbestellt. Unter Diverse weitere Optionen können Sie beispielsweise den Debug-Modus aktivieren. 23.3 Übersichtsliste Die meisten Leser werden – sofern Sie in der Vergangenheit Mailinglisten genutzt haben – sicherlich auch die sogenannten Übersichtslisten kennen. Sie werden häufig auch als Digest bezeichnet. In diesen Listen werden die Beiträge eines bestimmten Zeitraums zusammengefasst und in chronologischer Reihenfolge aufgeführt. Das Erstellen einer Übersichtsliste. Die Handhabung der Digest-Funktion ist einfach. Weisen Sie der Liste eine Bezeichnung, eine Mailingliste und einen Administrator zu. Hinterlegen Sie außerdem eine Beschreibung und eine Infomitteilung samt typischer Fußzeile. Webmin kompakt 270 Mailinglisten mit Majordomo verwalten Die Zusammenstellung der Liste erfolgt mit den beiden letzten Optionen. Sie können festlegen, nach wie vielen Tagen eine Nachrichtensammlung erstellt wird oder wie umfangreich (in Zeilen) die bisherigen Beiträge sein müssen. Zu jeder Liste stehen Ihnen wiederum spezifische Einstellungen zur Verfügung, die im Wesentlichen denen beim Erstellen einer Liste entsprechen. 23.4 Majordomo-Optionen Die Majordomo-Übersichtsseite erlaubt auch die Bearbeitung der globalen Optionen, die auf alle Mailinglisten angewendet werden. Dazu gehören der Hostname des E-Mail-Servers, die E-Mail-Adresse des Systems, die des Eigentümers und der Sendmail-Pfad. Änderungen sind hier in der Regel nicht erforderlich. Die globalen Majordomo-Optionen. 23.5 Modulkonfiguration Auch für das Majordomo-Modul gibt es eine Modulkonfiguration, in der Sie konfigurierbare Einstellungen und die Systemkonfiguration finden. Sie können die anpassbaren Funktionen beispielsweise nutzen, um die Sortierung der Listen in der Übersicht anzupassen (Name oder erzeugte Reihenfolge). www.brain-media.de Modulkonfiguration Die Modulkonfiguration. Webmin kompakt 271 272 Mailinglisten mit Majordomo verwalten www.brain-media.de 273 24 Administration des MySQL-Servers Das Web in seiner heutigen Form wäre so ohne den Datenbankserver MySQL nicht denkbar. Auf Millionen dynamischer Websites kommt das relationale Datenbankverwaltungssystem zum Einsatz. Auch MySQL ist eine freie Software, die unter der GPL steht. Die Datenbank kann aber auch mit einer kommerziellen Lizenz eingesetzt werden. MySQL ist eine sehr leistungsfähige Software mit einem beachtlichen Funktionsumfang. Das Datenbanksystem unterstützt beispielsweise die folgenden Funktionen: · Prepared Statements · updateable und insertable View · Trigger Auch ein Replikationssystem steht Ihnen zur Verfügung. Es ist für den Einsatz in einem Computercluster ausgelegt. Dabei sind dem DBMS mehrere Datenbanken auf unterschiedlichen Rechner-Knoten zugeordnet. Das bevorzugte Einsatzgebiet von MySQL dürfte inzwischen die Datenspeicherung für Web-Dienste sein. MySQL wird häufig in Verbindung mit dem Webserver Apache und PHP eingesetzt. Diese Kombination wird entsprechend der Anfangsbuchstaben der beteiligten Software als LAMP, MAMP bzw. WAMP (mittlerweile als XAMPP) bezeichnet. Zur Verwaltung von MySQL-Datenbanken kommen verschiedene mitgelieferte Kommandozeilen-Clients (Kommandos mysql und mysqladmin) zum Einsatz. Die beiden einzigen praktikablen grafischen Werkzeuge für Linux-Systeme sind das PHP-basierte phpMyAdmin und eben Webmin. Ein erhebliches Problem beim Einsatz von MySQL stellt die problematische Nutzung des Systems dar. Zwar gibt es mit phpMyAdmin einen leistungsfähigen Datenbankmanager, doch auch der ist nicht immer einfach in der Handhabung. Leider ist auch das Webmin-Modul nicht der Weisheit letzter Schluss. Sie können zwar alle wichtigen Datenbank-spezifischen Aktionen mit diesem Modul durchführen, doch früher oder später erweist es sich als zu wenig flexibel. Webmin kompakt 274 Administration des MySQL-Servers Ein erster Blick auf das MySQL-Modul von Webmin. Über das Webmin-Modul können Sie Datenbanken erzeugen, Tabellen, Felder und Einträge editieren, unterschiedliche Berechtigungen definieren und verwalten, Datenbankverbindungen einsehen, die MySQL-Datenbank konfigurieren und Sicherheitskopien Ihrer Daten erzeugen. Sollte Ihr Datenbankserver beim ersten Zugriff womöglich noch nicht laufen, müssen Sie diesen erst in Gang setzen. Webmin gibt eine entsprechende Meldung aus, die Ihnen das Starten erlaubt. Starten Sie den Datenbankserver zuerst. www.brain-media.de Datenbanken editieren und erzeugen 275 Die MySQL-Übersicht präsentiert Ihnen eine dreigeteilte Schnittstelle. Im oberen Bereich finden Sie die bereits auf dem Server eingerichteten Datenbanken. Hier ist auch das Löschen und Erstellen von neuen Ablagen möglich. Darunter befinden sich die verschiedenen globalen Einstellungen, mit denen Sie beispielsweise unterschiedliche Rechte steuern. Im unteren Bereich stehen Ihnen zwei Funktionen zur Verfügung, mit denen Sie den Server starten bzw. beenden und ein Back-up der Datenbank durchführen können. 24.1 Datenbanken editieren und erzeugen Das Bearbeiten einer Datenbank ist einfach. Klicken Sie dazu einfach in der Übersicht auf die gewünschte Datenbankbezeichnung. Welches Bild sich Ihnen auf dem folgenden Formular präsentiert ist davon abhängig, welche Daten bereits in der Ablage lagern. Bei einer typischen MySQL-Standardinstallation sollten Sie die beiden folgenden Datenbanken vorfinden: tmp und mysql. Wir editieren die Datenbank mysql, um uns ein Bild von den weiteren Funktionen zu machen. Die Datenbank tmp besitzt noch keine Tabellen. Wenn Sie wie in diesem Beispiel die Datenbank tmp öffnen und diese besitzt noch keine Tabelle, so zeigt Ihnen Webmin dies mit einem einfachen Dialog an. Sie können allerdings über die Bearbeitungsfunktionen eine neue Tabelle mit einer definierbaren Anzahl an Feldern erzeugen. Webmin kompakt 276 Administration des MySQL-Servers Die Datenbank mysql präsentiert Ihnen ein anderes Bild. Hier finden Sie bereits siebzehn Tabellen und drei Indizes. Wenn Sie die Datenbank mysql öffnen, präsentiert sich Ihnen ein anderes Bild. Diese ist bereits mit verschiedenen Tabellen gefüllt und verfügt zudem über drei Indizes. Indizes sind meistens eine Spalte in einer Tabelle, nach der besonders häufig gesucht wird. Die Einträge in der Spalte werden als HASH-Index gespeichert. Damit beschleunigt sich die Suche erheblich. Insbesondere bei Verknüpfungen von Tabellen wird MySQL dadurch erheblich schneller. Um nun auf die Daten in einer Tabelle zuzugreifen, klicken Sie auf den gewünschten Tabellennamen. Das zugehörige Formular präsentiert Ihnen die in der Tabelle erzeugten Felder samt aktuellen Einträgen. Um ein Feld zu bearbeiten, klicken Sie auf dessen Bezeichnung und passen die Einträge an. www.brain-media.de Neue Datenbank erzeugen 277 Eine editierte Tabelle. 24.2 Neue Datenbank erzeugen Erstellen wir also eine erste Datenbank, beispielsweise eine Adressdatenbank. Dazu wechseln Sie zur MySQL-Übersicht und folgen dem Link Erstelle eine neue Datenbank. In dem Formular Datenbank erstellen weisen Sie der neuen Ablage zunächst eine Bezeichnung zu und bestimmen den Zeichensatz (meist Standard oder ISO 8859-2). Dann bestimmen Sie die Feldnamen. Da wir eine Adressdatenbank erstellen wollen, verwenden wir hier die typischen Inhalte einer Adressdatenbank wie Name, Vorname, Adresse und Telefonnummer. Die Adressdatenbank in der Entstehung. Webmin kompakt Administration des MySQL-Servers 278 Dann hinterlegen Sie die Feldnamen, die Sie beispielsweise mit Name, Vorname, Adresse und Telefon bezeichnen könnten. Sehr wichtig für die Funktionstüchtigkeit und die Performance Ihrer Datenbank ist die Wahl des Datentyps. Gerade bei größeren Datenmengen zahlt sich die korrekte Zuweisung des Datentyps durch eine höhere Geschwindigkeit aus. Falsch eingesetzt können diese Zuordnungen aber auch zu Problemen führen, da jeder Typ nur limitierte Bereiche aufnehmen kann. Man unterscheidet zwischen folgenden Datentypen: · Numerische Typen · Datums- und Uhrzeit-Datentypen · Zeichenketten-Datentypen In den drei nachfolgenden Tabellen finden Sie zu den verschiedenen Typen einige Beispiele, die Ihnen helfen werden, den Datentyp korrekt zu setzen: Numerische Datentypen Datentyp Bedeutung Bereich TINYINT sehr kleine Ganzzahl -128 bis 127 SMALLINT kleine Ganzzahl -32768 bis 32767 INT Ganzzahl -2147283648 bis 2147283647 FLOAT Fließkommazahl Datums- und Uhrzeit-Datentypen Datentyp Bedeutung Bereich DATE Datum 1.1.1000 bis 31.12.9999, Format: YYYY-MM-DD DATETIME Datum und Uhrzeit 1.1.1000, 0:00:00 Uhr bis 31.12.9999, 23:59:59, Format: YYYY-MM-DD hh:mm:ss TIME Uhrzeit Format hh:mm:ss YEAR Jahreszahl 1901 bis 2155 www.brain-media.de Neue Datenbank erzeugen 279 Zeichenketten-Datentypen Datentyp Bedeutung Länge CHAR Zeichenkette Größe fester max. 255 Zeichen VARCHAR Zeichenkette mit variabler Größe max. 255 Zeichen MEDIUMTEXT, mittelgroße Zeichenkette max. 16777215 Byte ENUM Auflistung Auswahl nur eines Feldes SET Auflistung Mehrfachauswahl mit MEDIUMBLOB Die weiteren Einstellungen können Sie vorerst ignorieren. Klicken Sie auf Erstellen, um die Datenbank zu erzeugen. Achtung In der Praxis kann es vorkommen, dass das Erstellen der Felder über das Datenbank-erstellen-Formular nicht funktioniert. In diesem Fall erstellen Sie zuerst die Datenbank ohne weitere Details. Editieren Sie dann im nächsten Schritt die Datenbank und erzeugen Sie die gewünschte Anzahl an Feldern. Angenommen, Sie haben zuerst die Datenbank erzeugt und wollen diese dann mit einer ersten Tabelle füllen, so editieren Sie zunächst die Datenbank und klicken dann auf die Schaltfläche Erstelle eine neue Tabelle. Dabei können Sie gleich auch die Anzahl an Feldern bestimmen. Im Dialog Tabelle erstellen bestimmen Sie den Tabellennamen, kopieren gegebenenfalls bestehende Felder über das Auswahlmenü in die Tabelle und bestimmen den Tabellentyp. Webmin kompakt Administration des MySQL-Servers 280 Das Erstellen einer Tabelle. Das Formular stellt Ihnen fünf Tabellentypen zur Auswahl: · MyISAM: Dies ist der standardmäßig verwendete Typ. Es handelt sich um die für SQL optimierte MyISAM-Datenbankstruktur. Sie ist nicht mit dem Vorgänger ISAM kompatibel. · ISAM: Dies ist der MyISAM-Vorläufer und sollte in der Regel nicht verwendet werden. · HEAP: Dies ist die Datenstruktur für eine Tabelle, die nur im RAM abgelegt wird. Entsprechend sind die Zugriffe darauf deutlich schneller, als auf die normale Datenbank. · Merge: Eine Merge-Tabelle ist eine Sammlung identischer MyISAMTabellen, die wie eine benutzt werden können. · Innodb: InnoDB stellt MySQL einen transaktionssicheren TabellenHandler mit Fähigkeiten für Commit, Rollback und Reparatur nach Absturz zur Verfügung. Im Formular für die Tabelleneinstellungen stehen Ihnen sechs weitere Konfigurationsmöglichkeiten zur Verfügung: · Typenbreite: Hier legen Sie fest, wie viele Zeichen in das Feld eingegeben werden können. Eine Beschränkung ist schon deshalb sinnvoll, damit www.brain-media.de Neue Datenbank erzeugen 281 nicht bestimmte Benutzer unsinnige und überlange Zeichenfolgen verwenden. · Primärschlüssel: In relationalen Datenbanken kommt das Schlüsselkonzept zum Einsatz. Ein Schlüssel ist eine Menge von Attributen (also eines oder mehrere), die eine Datenzeile einer Tabelle eindeutig identifiziert. Ein Schlüsselkandidat ist ein Schlüssel mit minimaler Anzahl Attribute. Und ein Primärschlüssel ist ein beliebig ausgewählter Schlüsselkandidat, der zur eindeutigen Identifizierung jeder Zeile benutzt wird. Wenn Sie dieses Kontrollkästchen aktivieren, wird das Feld Teil des Primärschlüssels für diese Tabelle. · Automatisch erhöhen: Diese Funktion kommt bei nummerischen Datentypen zum Einsatz. Sie können beispielsweise für IDs die automatische Erhöhung aktivieren, damit die ID von Eintrag zu Eintrag erhöht wird. · Erlaubt NULL: Hier legen Sie fest, ob auch die NULL ein zulässiger Wert ist. Dabei bezeichnet NULL einen fehlenden unbekannten Wert, nicht aber einen leeren Eintrag. · Ohne Vorzeichen: Hier legen Sie fest, ob Sie Vorzeichen verwenden wollen oder nicht. · Standardwert: Schließlich können Sie auch einen Standardwert definieren. Sie können natürlich Felder nachträglich bearbeiten. Webmin kompakt 282 Administration des MySQL-Servers Nachdem Sie Ihre Tabelle mit einem Klick auf Erstellen erzeugt haben, können Sie die Felder natürlich auch nachträglich bearbeiten. Dazu öffnen Sie die Tabelle und klicken auf den gewünschten Feldeintrag. 24.3 Daten sichten Sie können mit Webmin nicht nur Datenbanken und Tabellen erzeugen, sondern auch die in der Datenbank gesicherten Daten sichten. Öffnen Sie dazu die gewünschte Tabelle und klicken Sie auf die Schaltfläche Daten zeigen. Sollten noch keine Daten in der Tabelle gespeichert sein, so gibt Webmin einfach folgende Meldung aus: Diese Tabelle enthält keine Daten. Das können Sie unmittelbar ändern, indem Sie auf die Schaltfläche Neue Zeile klicken und das zugehörige Formular mit Daten füttern. Sie können allerdings nur dann Daten hinzufügen, wenn die Tabelle einen Primärschlüssel besitzt. Die Tabelle enthält noch keine Daten? Kein Problem, denn mit Webmin können Sie sie mit Informationen speisen. 24.4 SQL-Kommandos ausführen Wenn Sie womöglich phpMyAdmin kennen, so suchen Sie sicherlich auch die Möglichkeit, SQL-Kommandos auszuführen. Auch das ist über die WebminSchnittstelle möglich. Dazu öffnen Sie die gewünschte Datenbank, in der Sie beiwww.brain-media.de SQL-Kommandos ausführen 283 spielsweise Daten suchen oder einfügen wollen und klicken auf die Schaltfläche SQL ausführen. Das Formular SQL ausführen erlaubt Ihnen neben der Ausführung von SQLBefehlen noch zwei weitere Aktionen: Sie können SQL-Kommandos aus einer anzugebenen Datei ausführen und Daten aus einer Textdatei in die aktuelle Datenbank importieren. Zur Ausführung von SQL-Kommandos geben Sie diese in das erste Eingabefeld ein. Eines der wichtigsten SQL-Kommanods ist SELECT. Es startet eine Abfrage in dem bestehenden Datenbestand. Die Syntax sieht wie folgt aus: SELECT [DISTINCT] Auswahlliste FROM Quelle WHERE Where-Klausel [GROUP BY (Group-by-Attribut)+ [HAVING Having-Klausel]] [ORDER BY (Sortierungsattribut [ASC|DESC])+] Zur Erläuterung: DISTINCT gibt an, dass aus der Ergebnisrelation gleiche Ergebnistupel entfernt werden sollen. Die weiteren Bestandteile der Abfrage: · Auswahlliste bestimmt, welche Spalten der Quelle auszugeben sind. · Quelle gibt an, wo die Daten herkommen. · Where-Klausel bestimmt Bedingungen, unter denen die Daten ausgegeben werden sollen. · Group-by-Attribut listet Attribute auf, deren Werte festlegen, welche Tupel zu Gruppen zusammengefasst werden sollen. · Having-Klausel ist wie die Where-Klausel, nur dass hier auf Aggregationsfunktionen zugegriffen wird. · Sortierungsattribut: Mit ORDER BY werden Attribute definiert, nach denen die Sortierung erfolgt. Ein einfaches Beispiel: SELECT * FROM Adressen Webmin kompakt 284 Administration des MySQL-Servers Diese SQL-Anweisung listet die Werte aller Spalten aus der Tabelle Adressen auf. Beim Umgang mit Datenbanken spielen auch die Manipulationsbefehle INSERT, UPDATE und DELETE eine wichtige Rolle. Deren Syntax sieht wie folgt aus: INSERT INTO Relation ['(' (Attribut)+ ')'] VALUES ( '('(Konstanten)+')' )+ INSERT INTO Relation ['(' (Attribut)+ ')'] SFW-Block UPDATE Relation SET (Attribut=Ausdruck)+ WHERE Where-Klausel DELETE FROM Relation [WHERE Where-Klausel] Mit dem Kommando INSERT können explizit konstruierte Tupel oder die Ergebnisse eines Select-Blocks in eine Relation eingefügt werden. Für weitere Informationen zur Verwendung von SQL-Befehlen sei auf entsprechende Literatur verwiesen. Auch in der offiziellen MySQL-Dokumentation (http://dev.mysql.com/doc/) finden Sie viele Beispiele. Die Ausführung von SQL-Kommandos. www.brain-media.de Import von Daten in Datenbank 285 Sie können sich die Ausführung auch vereinfachen, wenn Sie bereits SQLKommandos vorbereitet und in einer Textdatei gespeichert haben. Das Formular für die Ausführung von SQL-Kommandos erlaubt auch den Import von Daten. 24.5 Import von Daten in Datenbank In der Praxis kommt es immer wieder vor, dass man bereits Daten besitzt, die in eine Datenbank integriert werden sollen. Der Import (und auch der Export) ist leider nach wie vor eine problematische Angelegenheit bei MySQL. Immerhin können Sie mit Webmin Daten aus einer Textdatei in Ihre Datenbank importieren. Wichtig dabei, damit der Import auch klappt: Diese Datei muss pro Zeile einen Datensatz enthalten und die Felder müssen durch Tabs getrennt sein. Der Import kann aus einer lokal gespeicherten oder aus einer hochgeladenen Datei erfolgen. In beiden Fällen bestimmen Sie zunächst den Pfad. Wollen Sie Daten aus anderen Datenbanken bzw. deren Tabellen importieren, die auf dem Server lagern, so bestimmen Sie über das Auswahlmenü die gewünschte Tabelle. Ihnen stehen drei Importoptionen zur Verfügung: · Vorhandene Daten vorher löschen? Hier entscheiden Sie, ob bereits vorhandene Daten überschrieben werden sollen. Das ist in der Regel nicht gewünscht. · Doppelte Datensätze ignorieren? Hier bestimmen Sie, wie Sie mit doppelt vorhandenen Datensätzen umgehen. Webmin kompakt Administration des MySQL-Servers 286 · File format: Schließlich können Sie das Dateiformat der zu importierenden Daten bestimmen. Bevor Sie die Importfunktionen auf einem Produktivitätssystem nutzen, sollten Sie ausreichend prüfen, ob der Import Ihrer Dateien korrekt funktioniert. 24.6 Globale MySQL-Einstellungen Kommen wir zu den globalen MySQL-Einstellungen, die sich im mittleren Bereich der MySQL-Übersicht finden. Diese Funktionen dienen wie bereits oben erwähnt in erster Linie der Vergabe von Rechten. Die Konfiguration der Benutzerberechtigungen. Der Zugriff auf die MySQL-Datenbank erfolgt, die anonymen Nutzer einmal ausgenommen, über die Authentifizierung mit einer Kennung und dem dazugehörigen Passwort. Diese Authentifizierung ist insbesondere dann erforderlich, wenn die Benutzer mit den Datenbanken arbeiten, also bearbeiten wollen. www.brain-media.de Globale MySQL-Einstellungen 287 Über das Benutzerberechtigungsformular können Sie exakt steuern, wer was mit Ihren Daten anstellen darf. Bei einer Standardinstallation finden Sie bereits zwei User eingerichtet: · Root · Anonymer Benutzer Beide haben Zugang zum System, auf dem Webmin ausgeführt wird – und zwar einmal auf das Loopback-Interface localhost und dann auf den Hostnamen. Das Anlegen eines neuen MySQL-Datenbankbenutzers. Um einen neuen Benutzer zu erstellen, folgen Sie dem Link Erstelle neuen Benutzer. Im Formular MySQL-Benutzerdetails bestimmen Sie zunächst den Benutzernamen, das Passwort und dann den Host. Im Auswahlmenü Berechtigungen stehen Ihnen vielfältige Konfigurationsmöglichkeiten zur Verfügung. Konkret können Sie folgende Berechtigungen setzen: · Tabellendaten auswählen · Tabellendaten einfügen · Tabellendaten aktualisieren Webmin kompakt Administration des MySQL-Servers 288 · Tabellendaten löschen · Tabellen erstellen · Tabellen löschen · Berechtigungen neu laden · Datenbank herunterfahren · Prozesse verwalten · Dateioperationen · Indizes verwalten · Tabellen verändern · Datenbanken anzeigen · Superuser · Erzeuge temporäre Tabellen · Tabellen sperren · Ausführen · Slave-Replikation · Client-Replikation · Ansicht erstellen · Ansicht zeigen · Routine erzeugen · Routine bearbeiten · Benutzer erzeugen Sie sehen: Sie können sehr vielfältige Berechtigungen verwenden. Um einem Benutzer mehrere verschiedene Berechtigungen zuzuteilen, halten Sie die Strg-Taste gedrückt und markieren der Reihe nach die gewünschten Berechtigungen. Mit einem Klick auf Speichern wird der neue Benutzer in die Benutzerverwaltung aufgenommen. Dort finden Sie nun auch dessen Eintrag. Neben dem verschlüsselten Passwort werden in der Benutzerübersicht auch die Berechtigungen aufgeführt. www.brain-media.de Globale MySQL-Einstellungen 289 In der Benutzerliste findet sich jetzt auch der neue MySQL-User samt verschlüsseltem Passwort und Berechtigungen. Sie können die Benutzerverwaltung auch vereinfachen, indem Sie die Synchronisation zwischen Unix-Benutzern, die unter Webmin angelegt werden, und MySQLBenutzern aktivieren. Dabei können Sie drei selbsterklärende Schalter verwenden: · Neuen MySQL-Benutzer anlegen, wenn ein neuer Unix-Benutzer angelegt wird, mit den Berechtigungen ... · MySQL-Benutzer aktualisieren, wenn der entsprechende Unix-Benutzer geändert wird. · MySQL-Benutzer löschen, wenn der entsprechende Unix-Benutzer gelöscht wird. Diese drei Funktionen können Sie auch miteinander kombinieren. Webmin kompakt 290 Administration des MySQL-Servers Die Datenbankrechte. In den globalen Berechtigungen finden Sie weitere sicherheitsrelevante Einstellungen. So können Sie beispielsweise auch Benutzern Zugriff nur auf spezifische Datenbanken gewähren. Hier verwenden Sie die Datenbankrechte. Beim ersten Zugriff auf die Datenbankrechte werden Ihnen die beiden Datenbanken test und test\ % samt den dazugehörigen Benutzern, Hosts und Rechten angezeigt. Und so gehen Sie in der Praxis vor: 1. Stellen Sie zunächst sicher, dass der Benutzer bislang noch keine Berechtigungen auf der Benutzer-Seite erhalten hat. 2. Dann wechseln Sie zu den Datenbankberechtigungen und klicken auf den Link Erstelle neue Datenbankrechte. 3. In dem zugehörigen Formular bestimmen Sie die Datenbank, für die die Berechtigung gelten soll, und geben den Benutzernamen an. 4. Unter Hosts legen Sie fest, von welchen Rechnern der oben angegebene Benutzer auf die Datenbank zugreifen kann. In der Regel können Sie die Option beliebig wählen. Aus sicherheitstechnischen Überlegungen heraus kann es auch sinnvoll sein, den Zugriff nur von einem bestimmten System zu gewähren. 5. Wählen Sie unter Rechte wie oben beschrieben die gewünschten Berechtigungen aus und klicken Sie auf Speichern, um die Einstellungen www.brain-media.de Globale MySQL-Einstellungen 291 zu übernehmen. Der neue Eintrag landet automatisch in der Datenbankrechteliste. Das Erstellen von spezifischen Datenbankrechten. In eine ähnliche Richtung gehen die Host-Rechte, auf die Sie über das gleichnamige Icon in der MySQL-Übersicht zugreifen. Mit diesen Funktionen können Sie exakt steuern, über welche Rechte spezifische Clients verfügen. Da bei einer Standardinstallation eine solche Konfiguration noch nicht gesetzt ist, müssen Sie diese erst definieren. Das Formular zum Erstellen von Host-Rechten ist denen anderer Rechtedialoge sehr ähnlich. Webmin kompakt 292 Administration des MySQL-Servers Das Erstellen von Host-Rechten ist sehr einfach. Bestimmen Sie zunächst die Datenbank, dann gegebenenfalls den Host und wählen Sie dann die Rechte aus. Wie Sie es von anderen Rechtevergaben kennen, landet die neue Konfiguration ist in der Host-Rechte-Liste – samt typischen Details. Ähnlich verläuft die Definition von Tabellenrechten. Da auch bei diesem Rechtetyp bislang noch keine Rechtevergabe existiert, müssen Sie im ersten Schritt die Datenbank auswählen, für die Sie eine Beschränkung einführen wollen. Klicken Sie dann auf die Schaltfläche Füge neue Rechte zu Datenbank hinzu. Die Definition von Tabellenrechten. Das MySQL-Webmin-Modul präsentiert Ihnen das Formular, auf dem Sie die Tabelle auswählen und dann wieder den Benutzer und den Host bestimmen. Markieren Sie dann die gewünschten Tabellen- und Feldrechte und klicken Sie abschließend auf Speichern. Entsprechend funktioniert die Vergabe von Feldrechten über das Feldrechte-Icon der MySQL-Startseite. www.brain-media.de MySQL-Server-Konfiguration 293 24.7 MySQL-Server-Konfiguration Mithilfe von Webmin können Sie auch die MySQL-Server-Konfiguration bearbeiten. Auf dem zugehörigen Formular können Sie beispielsweise den Server-Port und verschiedene Puffer konfigurieren. Die Konfiguration des MySQL-Servers fällt vergleichsweise bescheiden aus. Im oberen Bereich der MySQL-Konfiguration finden Sie folgende Einstellungen: · MySQL Server Port: Hier geben Sie den Port des Servers an. In der Regel ist es Port 3306. Aber Sie können diesen natürlich beliebig anpassen. · MySQL server listening address: Hier legen Sie die Adresse fest, auf die der Datenbankserver hört. · Skip locking of table files? Wenn Sie diesen Schalter auf Ja setzen, wird das Sperren von Tabellendateien ausgelassen. · Allow big tables? Standardmäßig ist die Verwendung von sehr großen Tabellen nicht zulässig. · MySQL Unix socket: Hier geben Sie den Pfad zur Linux-SocketKonfiguration. Webmin kompakt Administration des MySQL-Servers 294 · Databases files directory: Auch Dateiverzeichnisse Ihres Servers können Sie beliebig an Ihre Anforderungen anpassen. Es folgen verschiedene Einstellungen, mit denen Sie die Größe von unterschiedlichen Zwischenspeichern definieren. · Key buffer size: Hier können Sie den Schlüsselpuffer bestimmen. · Maximum packet size: Hier die maximal zulässige Paketgröße. · Sort buffer size: Hier die Größe des Sortierungspuffers. · Network buffer size: Auch die Netzwerkpuffergröße lässt sich anpassen. · MyISAM sort buffer: Wenn Sie MyISAM nutzen, kann unter Umständen eine Anpassung des MyISAM-Puffers erforderlich sein. · Tables to cache: Was diese Funktion genau macht, ist leider nicht dokumentiert. · Maximum number of connections: Schließlich können Sie die maximal zulässige Anzahl an Verbindungen bestimmen, die zum Server aufgebaut werden dürfen. In der Regel müssen Sie an den Standardeinstellungen keine Änderungen vornehmen. Das wird erst dann erforderlich, wenn Engpässe oder andere Probleme auftreten. Das MySQL-Modul zeigt Ihnen auch die aktuellen Datenbankverbindungen an. Als Server-Administrator will man natürlich auch gelegentlich wissen, wie viele Verbindungen zu dem System aufgebaut werden. Auch diese Informationen kann www.brain-media.de Systemvariablen 295 Ihnen das Webmin-MySQL-Modul liefern. Klicken Sie in der MySQL-Übersicht einfach auf Database Connections. Auf dem zugehörigen Formular werden Ihnen der Benutzer, der Client, die Datenbank, auf die der Zugriff erfolgt und der Modus angezeigt. Sie können unerwünschte Verbindungen auch beenden, indem Sie diese markieren und dann auf die Schaltfläche Kill Selected Connections klicken. 24.8 Systemvariablen Der MySQL-Datenbankserver verwendet eine Vielzahl von Systemvariablen, die angeben, wie der Server konfiguriert ist. Für alle diese Variablen gibt es Vorgabewerte. Diese können beim Serverstart über Optionen auf der Befehlszeile oder auch über das Webmin-Modul konfiguriert werden. Die meisten Variablen lassen sich zur Laufzeit des Servers dynamisch mithilfe der SET-Anweisung ändern. Doch das benötigen Sie als Webmin-Administrator nicht, denn Sie können die Einstellungen – wenn auch nicht alle – einfach editieren. Der Vorteil: Sie können den Betrieb des Servers beeinflussen, ohne ihn beenden und neu starten zu müssen. Der MySQL-Server verwendet zwei Arten von Systemvariablen: · Globale Variablen beeinflussen den Gesamtbetrieb des Servers. · Sitzungsvariablen hingegen wirken sich auf seinen Betrieb bezogen auf jeweils individuelle Clientverbindungen aus. Eine gegebene Systemvariable kann sowohl einen globalen als auch einen sitzungsbezogenen Wert haben. Beim Servers-tart setzt er alle globalen Variablen auf ihre jeweiligen Standardwerte. Alle editierbaren Einstellungen besitzen ein Kontrollkästchen in der ersten Spalte. Um diese zu editieren, versehen Sie diese mit einem Häkchen und klicken am Fuße des Formulars auf Edit Selected. Webmin kompakt 296 Administration des MySQL-Servers Das Editieren der Umgebungsvariablen. Anschließend verwandeln sich die ausgewählten Einstellungen in Eingabefelder, in denen Sie der jeweiligen Konfiguration einen neuen Wert verpassen können. 24.9 Datenbank-Back-up Datenbanken werden in der Regel nicht zum Selbstzweck erzeugt, sondern speichern oft unternehmenskritische Inhalte. Ob Sie nun in MySQL Ihre Adressen verwalten oder die Daten Ihres Online-Shops speichern, ist zweitrangig. Wichtig ist, dass Sie einen Sicherungsmechanismus benötigen, mit dem Sie Ihre Daten an anderer Stelle sichern können. Auch für diese Anforderung ist im MySQL-Modul mit der Funktion Backup Database gesorgt, die Sie am Fuße der MySQL-Übersicht finden. www.brain-media.de Datenbank-Back-up 297 Die Back-up-Optionen. Das Back-up-Formular erlaubt Ihnen die Sicherung aller Datenbanken als Dateien. Dazu bestimmen Sie zunächst ein Verzeichnis, in das die Daten geschrieben werden. Mit den folgenden Einstellungen können Sie die Durchführung der Sicherung exakt steuern. Sie können auch das Datenbankformat definieren, in dem Sie aus dem Auswahlmenü Backup Compatibility Format das für Ihren Einsatzbereich optimale Format wählen. Um Speicherplatz auf dem Zielsystem zu sparen (insbesondere dann, wenn Sie große Datenmengen zu sichern haben), sollten Sie die Komprimierung aktivieren. Über die Zeitsteuerung lassen sich Folge-Back-ups zudem automatisieren. Wenn Sie eine Sicherung erfolgreich durchführen, gibt Webmin eine entsprechende Erfolgsmeldung mit Details aus, denen Sie entnehmen können, welche Datenbanken wohin gesichert wurden. Damit kennen Sie alle wichtigen Funktionen des MySQL-Moduls. Werfen wir noch einen Blick auf die Modul-Konfiguration. Webmin kompakt 298 Administration des MySQL-Servers Die MySQL-Modulkonfiguration. 24.10 Modul-Konfiguration Die Modul-Konfiguration des MySQL-Moduls entspricht im Aufbau der der anderen Module. Auch hier finden Sie konfigurierbare Optionen und die Systemkonfiguration. Bei den konfigurierbaren Optionen können Sie beispielsweise das Log-in und Passwort des Datenbankadministrators ändern. www.brain-media.de 299 25 SSH-Server Einer jede Linux-Distribution liegt in der Regel auch der OpenSSH-Server bei. Dabei handelt es sich um eine freie Version der bekannten SSH-Verbindungssuite. Wofür benötigt man nun dieses Tool? Die Beantwortung der Frage ist recht einfach. Viele Benutzer verwenden Protokolle und/oder Dienste wie Telnet, rlogin, FT etc., bei denen allerdings das Passwort unverschlüsselt über das Internet übertragen wird. Schutz für diese Dienste bietet OpenSSH, denn er verschlüsselt die Passwörter und die gesamte Verbindung, um das Mithören, das Entführen von Verbindungen und ähnliche Angriffe zu verhindern. Außerdem bietet OpenSSH neben einer Unzahl sicherer Tunnel- und Authentifikationsmöglichkeiten die Unterstützung für alle SSH-Protokollversionen an. Die OpenSSH-Übersicht. Die OpenSSH-Suite ersetzt rlogin und telnet mit dem Programm ssh, rcp mit scp und ftp mit sftp. Außerdem sind der Server sshd und andere Werkzeuge wie sshadd, ssh-agent, ssh-keysign, ssh-keyscan, ssh-keygen und sftp-server enthalten. Webmin kompakt SSH-Server 300 25.1 OpenSSH im Überblick OpenSSH kann eine ganze Menge für Sie tun, wenn Sie die Sicherheit Ihrer Umgebung und insbesondere die Client-Anbindungen verbessern wollen. Die Highlights der Lösung im Überblick: · Open-Source-Projekt: OpenSSH ist, wie man seiner Bezeichnung entnehmen kann, ein quelloffenes Projekt. Das ermutigt zur Wiederverwendung und weiteren Untersuchung des Quellcodes. Diese weitere Untersuchung stellt sicher, dass Fehler von jedem gefunden und korrigiert werden können. Und das führt letztlich zu sicherem Code. · Freie Lizenzpolitik: OpenSSH wird nicht von einer restriktiven Lizenz eingeschränkt. Es kann für jeglichen Zweck eingesetzt werden und das schließt natürlich auch jegliche kommerzielle Nutzung ein. · Starke Verschlüsselung: OpenSSH unterstützt 3DES, Blowfish, AES und Arcfour an Verschlüsselungsalgorithmen. Sie sind patentfrei. Die Techniken im Einzelnen: · o Triple DES ist ein sehr gut verstandener Chiffrieralgorithmus, der den Zahn der Zeit überstanden hat und eine starke Verschlüsselung bereitstellt. o Blowfish ist ein schneller Blockchiffrierer, der von Bruce Schneier entworfen wurde und der die schnellere Verschlüsselung erlaubt. o AES ist der verbesserte Verschlüsselungsstandard des US Federal Information Processing Standard (FIPS), der als Ersatz für DES entwickelt wurde. Er ist eine Blockchiffre. o Arcfour ist eine schnelle Stromchiffre. Er wird als kompatibel zu RC4 angesehen, einer proprietären Chiffre von RSA Security Inc. o Die Verschlüsselung beginnt vor der Authentifizierung und es werden keine Passwörter oder andere Daten im Klartext übermittelt. Verschlüsselung wird auch benutzt, um sich gegen Spoofing-Attacken zu schützen. X11-Weiterleitung: Dank der X11-Weiterleitung ist die Verschlüsselung von X-Windows-Netzwerkverkehr möglich, also Netzwerkübertragung, auf eine Weise, die niemanden den Datenverkehr mitlesen oder bösartige Kommandos einschleusen lässt. www.brain-media.de OpenSSH im Überblick 301 · Port-Weiterleitung: Die Port-Weiterleitung ermöglicht das Weiterleiten von TCP/IP-Verbindungen zu einer entfernten Maschine über ein verschlüsseltes Protokoll. Auf diese Weise können auch StandardInternetapplikationen wie POP sicherer gemacht werden. · Starke Authentifizierung: OpenSSH verfügt über starke Authentifizierungsmechanismen, die gegen verschiedene Sicherheitsprobleme wie beispielsweise IP- und DNS-Spoofing schützen. · Agent-Weiterleitung: Ein Authentifizierungsagent, der auf dem Client oder auch auf einem Notebook ausgeführt wird, kann dazu verwendet werden, den RSA- oder DSA-Authentifizierungsschlüssel des Anwenders bereitzuhalten. OpenSSH leitet die Verbindung automatisch an den Authentifizierungs-Agent über jede Verbindung weiter, und es gibt keine Notwendigkeit, die RSA-Authentifizierungsschlüssel auf jedem Rechner im Netzwerk zu haben. · Interoperabilität: Der OpenSSH-Server unterstützt auch die Vorgängerversionen. Damit ist sichergestellt, dass auch die Kommunikation mit den meisten UNIX-, Windows- und anderen, kommerziellen SSHImplementierungen funktioniert. OpenSSH bietet neben den SSHProtokollversionen 1.3 und 1.5 auch die SSH-Protokollversion 2.0. · Datenkompression: Schließlich bietet OpenSSH Datenkompression vor der Verschlüsselung. Das beschleunigt insbesondere die Performance über langsame Netzwerkverbindungen. Die Netzwerkkonfiguration für Ihren OpenSSH-Server. Webmin kompakt SSH-Server 302 25.2 Netzwerkkonfiguration Da Sie nun wissen, wozu der Server zu gebrauchen ist, stellt sich als Nächstes die Frage, wo Sie bei dem Webmin-Modul beginnen sollen. Über das Modul können Sie folgende Aktionen durchführen: · Den Server starten, sofern dieser noch nicht aktiv ist. · Die Netzwerkkonfiguration anpassen, damit der Server im Netzwerk ansprechbar ist. · Den Zugriff auf den Server steuern. · Client-Optionen definieren · Schlüssel einrichten · Die Konfigurationsdatei manuell bearbeiten. Damit Ihr OpenSSH-Server im Netzwerk erreichbar ist, müssen Sie zunächst einmal dessen Netzwerkkonfiguration anpassen. Dazu folgen Sie dem Link Netzwerk. Dort geben Sie zunächst die Adresse des Servers an, auf die er hört, also ansprechbar ist. Dann können Sie gegebenenfalls den Port anpassen. Unter Umständen macht es Sinn, einen Nicht-Standard-Port zu verwenden, weil das System dann weniger leicht angreifbar ist. Das setzt aber natürlich voraus, dass die Clients den Port kennen. Die weiteren Einstellungen: · Akzeptiere Protokolle: Stellen Sie hier sicher, dass die beiden Protokolle SSH v1 und v2 aktiviert sind, damit Sie ein hohes Maß an Interoperabilität haben. · Verbindung trennen wenn Client abgestürzt ist? Die Standardeinstellung Ja schützt Sie vor möglichen Attacken über eine bestehende SSHVerbindung. · Wartezeit für Anmeldung: Hier legen Sie fest, wie lange der Server bei der Anmeldung wartet. Passen Sie den Standardwert Unbegrenzt auf einen vernünftigen Wert an, beispielsweise 60 Sekunden. · TCP Weiterleitung erlauben? Hier legen Sie fest, ob Ihr Server auch die TCP-Weiterleitung erlaubt. In der Regel ist das gewünscht. Diese Option erscheint nur dann, wenn Ihr Server SSH v2 oder höher unterstützt. www.brain-media.de Zugriffsbeschränkung · 303 Verbindung auf weitergeleiteten Ports erlauben? Auch das Weiterleiten auf Ports sollte in der Regel zugelassen werden. Auch diese Option ist nur dann verfügbar, wenn Sie einen OpenSSH-v2-Server verwenden. Klicken Sie auf Speichern, um mögliche Änderungen zu übernehmen. 25.3 Zugriffsbeschränkung Standardmäßig kann sich jeder Linux-Benutzer auf Ihrem SSH-Server einloggen. Da Sie das sicherlich nicht wollen, sollten Sie Zugriffsbeschränkungsfunktionen nutzen, um nur bestimmten Benutzern und Gruppen den Zugriff zu gewähren. Die Netzwerkkonfiguration für Ihren OpenSSH-Server. Die Zugriffssteuerungsoptionen für das Netzwerk und das Anmelden auf dem System bestehen aus lediglich vier Eingabefeldern: · Erlaube nur Benutzern: In das Eingabefeld bzw. über die Schaltfläche am Ende des Feldes können Sie die gewünschten Benutzer eintragen bzw. auswählen. Mehrere Einträge sind dabei durch ein Leerzeichen zu trennen. Sie können auch die Platzhalter Sternchen (*) und Fragezeichen (?) verwenden. · Erlaube nur Mitgliedern der Gruppe: Entsprechend können Sie den Zugriff auf bestimmte Gruppen beschränken. · Verbiete Benutzern: Über dieses Eingabefeld können Sie Benutzer explizit vor dem Zugriff ausschließen. · Verbiete Mitgliedern der Gruppen: Auch Gruppen können Sie den Zugriff verwehren. Webmin kompakt SSH-Server 304 Mit der Echtheitsbestätigung sorgen Sie für noch mehr Sicherheit beim Client-Zugriff. 25.4 Authentifizierung Der OpenSSH-Server, genauer alle SSH-Implementierungen, unterstützt verschiedene Authentifizierungsmechanismen, wie sich ein Client Zugang zu dem Server verschaffen kann. Sie können beispielsweise vorgeben, ob die Anmeldung als Root möglich ist und/oder ob ein leeres Passwort zulässig ist. All diese Einstellungen sind auf dem Formular Echtheitsbestätigung zusammengefasst. Dort können Sie folgende Einstellungen bearbeiten: · Erlaube Echtheitsbestätigung durch Passwort: Wenn Sie unterbinden wollen (was standardmäßig der Fall ist), dass sich Clients mit einem Passwort einloggen, so setzen Sie diesen Schalter auf Nein. In dieser Konfiguration ist eine Authentifizierung nur mit einem gültigen Zertifikat möglich. · Erlaube das Anmelden mit leerem Passwort? Die Anmeldung mit einem leeren Passwort sollte ebenfalls nicht möglich sein. · Erlaube Anmeldung als root? Auch die Anmeldung als Root können Sie unterbinden. Bei einem OpenSSH-Server, auf den globaler Zugriff möglich ist, sollten Sie die Option Nur mit RSA-Echtheitsbestätigung aktivieren. · Erlaube RSA Echtheitsbestätigung? Setzen Sie diesen Schalter auf Ja, um die Verwendung von RSA-Zertifikaten zuzulassen. www.brain-media.de Exkurs: Zugriff im heterogenen Netzwerk 305 · Prüfe Berechtigungen auf Dateien der Schlüssel? Aus Sicherheitsgründen sollten Sie auch diese Option aktivieren, damit eine Überprüfung der Berechtigungen erfolgt. · Anzeigen von /etc/motd beim Anmelden? In der Datei /etc/motd werden Kurzinformationen für die Nutzer angezeigt. Mit diesem Schalter können Sie die Einblendung beim Einloggen auch deaktivieren, indem Sie sie auf Nein setzen. · Ignoriere Datei known_hosts des Benutzers? Mit diesem Schalter können Sie die Datei known_hosts ignorieren. · Meldungs Datei vor dem Anmelden: Sie können eine Datei definieren, deren Inhalt dem Client vor dem Anmelden angezeigt wird. · User authorized keys file (~/.ssh/authorized_keys): Hier legen Sie den Pfad zu den Authentifizierungsschlüsseln fest. · Ignoriere .rhosts Datei? Auch die Datei rhosts kann bei der Authentifizierung nicht berücksichtigt werden. Das ist in der Regel nicht gewünscht. 25.5 Exkurs: Zugriff im heterogenen Netzwerk In modernen IT-Infrastrukturen kommen meist heterogene Netzwerke zum Einsatz. Um eine gesicherte Verbindung zu dem OpenSSH-Server aufbauen zu können, benötigen Sie einen entsprechenden SSH-Client. Bei Linux-Systemen ist der standardmäßig immer dabei. Was aber tun, wenn auch Windows-Clients eine SSH-gesicherte Verbindung aufbauen wollen? Hier bietet sich der Einsatz von WinSCP (http://winscp.net/de/), der auch in einer deutschen Version verfügbar ist. Mit dem freien WinSCP ist es möglich, sich mit einem SSH-Server mit SFTP (SSH File Transfer Protocol) oder SCP (Secure Copy Protocol) zu verbinden. SFTP ist ein standardisierter Teil des SSH-2-Paketes. SCP ist ein standardisierter Teil des SSH-1-Paketes. Beide Protokolle können auch auf neueren SSHVersionen zum Einsatz gebracht werden. WinSCP unterstützt SSH-1 und SSH-2. Mit WinSCP können Sie alle grundlegenden Operationen mit Dateien wie downloaden und uploaden erledigen. Das Programm kann Dateien und Ordner umbenennen, neue Ordner erstellen, Eigenschaften von Dateien und Ordnern ändern sowie symbolische Links und Verknüpfungen erstellen. Die wichtigsten Funktionen im Überblick: Webmin kompakt SSH-Server 306 · Stapelverarbeitung-Skripte und Kommandozeileneingabe · Verzeichnis-Synchronisation automatisierten Schritten · Integrierter Text-Editor · Unterstützung für SSH-Passwort-, Tastatur-, Public-Key- und Kerberos(GSS) Identifikation · Integration in Pageant (PuTTY Agent) für vollen Support von PublicKey-Identifikation · Windows-Explorer-ähnliche Oberfläche · Optionale Speicherung der Session-Informationen · Optionale Unterstützung von Standalone-Operationen unter Verwendung einer Konfigurations-Datei anstelle eines Registrierungsschlüssels in mehreren halb- oder komplett- Auf der WinSCP-Website finden Sie eine umfangreiche Dokumentation, die alle wichtigen Funktionen und typischen Aktionen mit dem Client beschreibt. Leider ist die Dokumentation überwiegend in englischer Sprache verfügbar. Der Client selbst ist in einer mehrsprachigen Version verfügbar. Mit dem ebenfalls freien SSH-Client WinSCP wird der Zugriff auf den OpenSSH-Server auch von Windows-Clients aus einfach möglich. www.brain-media.de Client-Optionen 307 25.6 Client-Optionen Auch wenn das Webmin-SSH-Modul in erster Linie der Konfiguration des SSHServers dient, können Sie mit dem Tool dennoch auch verschiedene Vorgaben für die Kommunikation mit den Clients definieren. In den zugehörigen Einstellungen können Sie beispielsweise den Port oder die Protokollversion anpassen. Beachten Sie dabei Folgendes: Die Einstellungen, die Sie hier vornehmen, gelten standardmäßig für alle Benutzer Ihres Systems, können aber durch manuelle Eingriffe in deren SSH-Konfigurationsdatei ~/.ssh/config überschrieben werden. Das Modul erlaubt aber auch die Client-spezifische Konfiguration. Die Client-Optionen. Im Einzelfall machen sehr unterschiedliche Einstellungen Sinn. Daher wollen wir uns anschauen, wie man eigene Client-Konfigurationen erstellt. Um die Standardeinstellungen einzusehen bzw. zu bearbeiten, folgen Sie dem Verweis Optionen für Client-Rechner und klicken dort auf den Link Alle Rechner. Webmin kompakt SSH-Server 308 Wenn Sie eigene Client-Einstellungen definieren wollen, beispielsweise um mit spezifischen Funktionen zu spielen, klicken Sie auf Optionen für Client-Rechner hinzufügen. Auf dem zugehörigen Formular können Sie folgende Einstellungen bearbeiten: · Optionen für Host: Hier bestimmen Sie, ob die Konfiguration für alle oder nur ausgewählte Rechner gelten soll. Dabei können Sie auch das Sternchen als Platzhalter verwenden. Tragen Sie beispielsweise *.server.de in das Eingabefeld ein, damit diese Konfiguration für alle Hosts der Domain server.de gilt. · Anmelden als Benutzer: Hier legen Sie fest, ob sich der Client mit dem aktuellen Log-in einloggen oder ob er ein anderes verwenden muss. · Verbindung trennen wenn Server abgestürzt ist? Setzen Sie diese Option auf Ja, damit die Verbindung zwischen SSH-Server und -Client beendet wird, falls der Server abstürzen sollte. So schützen Sie sich vor möglichen Attacken, die etwa zum Serverabsturz geführt haben. · Echter Hostname zu dem verbunden werden soll: Mit diesem Schalter legen Sie fest, ob der gleiche Name wie oben oder ein anderer für die Verbindungsaufnahme verwendet werden soll. · Frage nach einem Passwort falls benötigt? Auch diesen Schalter sollten Sie auf Ja setzen, damit bei der Verbindungsaufnahme das Passwort des Clients abgefragt wird. · Port zu dem verbunden werden soll: Mit diesem Schalter legen Sie den Port fest, über den die Kommunikation laufen soll. Der Standardport ist 22. Ein Ändern macht nur Sinn, wenn Sie auch die Clients entsprechend konfigurieren. · Escape Zeichen: Der OpenSSH-Server geht standardmäßig davon aus, dass das Tilde-Zeichen (~) als Escape-Zeichen zu interpretieren ist, auf das ein Befehl für den Server folgt. So bedeutet ~. beispielsweise, dass die Verbindung beendet wird. In der Regel sollten Sie die Standardeinstellung beibehalten. · Standard-SSH-Verkehr komprimmieren? Standardmäßig verwenden der SSH-Server und der -Client eine Komprimierung der Daten, um deren Transport zu beschleunigen. Die Kehrseite der Medaille: Die Verarbeitung der komprimierten Daten kann negative Auswirkungen auf die Systemperformance haben. Daher ist es ratsam, die Komprimierung aktiviert zu lassen, den Grad der Komprimierung aber nicht zu hoch zu setzen. www.brain-media.de Client-Optionen 309 Die optimale Komprimierungskonfiguration ist nicht immer einfach zu finden. · Grad der Kompression: Über dieses Auswahlmenü bestimmen Sie den Komprimierungsgrad, der zwischen den Wert 1 für minimale und 9 für maximale Komprimierung eingestellt werden kann. Welches im Einzelfall die optimale Konfiguration ist, lässt sich leider nicht allgemein sagen, da dies erheblich von den übermittelten Daten abhängig ist. Spielen Sie daher ein wenig mit der Einstellung und haben Sie dabei immer auch die CPU-Last im Blick. · Anzahl Versuche eine Verbindung herzustellen: Hier können Sie die Anzahl an Verbindungsversuchen definieren. Setzen Sie den Wert nicht zu hoch oder behalten Sie die Standardeinstellung im Zweifelsfall bei. · Benutze privilegierten Quell Port? Wie bereits mehrfach erwähnt, wird standardmäßig der Port 22 für die Verbindungsaufnahmen zwischen SSHClient und -Server verwendet. Da aber häufig Firewalls die Verwendung privilegierter Ports unterbinden, kann es – abhängig von Ihrer Netzwerkkonfiguration – sinnvoll sein, diesen nicht zu verwenden. · Versuche RSH falls SSH fehlschlägt? Wenn Sie wollen, dass eine RSHVerbindung versucht wird, wenn der SSH-Verbindungsaufbau nicht gelingt, so wählen Sie hier die Option Ja. · Nur RSH Verbindungen herstellen? Sie können den Client auch dazu zwingen, nur RSH-Verbindungen mit dem Server aufzubauen. · Host zur known_hosts Datei hinzufügen? Soll der Client in die Datei für vertrauenswürdige Clients hinzugefügt werden, so setzen Sie diesen Webmin kompakt SSH-Server 310 Schalter auf Ja. Diese Datei enthält pro Zeile einen Eintrag eines entfernten Rechners. · Prüfe IP Adressen in known_hosts Datei? Noch mehr Sicherheit erzielen Sie, indem Sie die IP-Adressen der bekannten Clients prüfen. · Versuche SSH Protokolle: Hier legen Sie fest, welche Protokolle für die Verbindungsaufnahme zwischen Client und Server verwendet werden. Sie können beispielsweise SSH v1 oder SSH v2 vorgeben. · Lokale Ports, die an den Server weitergeleitet werden: Hier können Sie einen lokalen Port angeben, an den entfernte SSH-Server übergeben werden. · Server Ports: Und hier den Server-Port. Die sonstigen Optionen. 25.7 Sonstige Optionen Das OpenSSH-Modul hat weitere Anpassungsmöglichkeiten. Über den Link Sonstige Optionen können Sie beispielsweise den Aufbau von X11-Verbindungen zu dem Server unterbinden, die Protokollierung anpassen und die Schlüssellänge definieren. www.brain-media.de Schlüssel-Setup 311 Das Einrichten des SSH-Schlüssels. 25.8 Schlüssel-Setup Über den Link User SSH Key Setup können Sie die Schlüsseleinrichtung für neue Linux-Benutzer konfigurieren. Der Vorteil dieser Funktion: Für neue LinuxBenutzer wird automatisch ein SSH-Schlüssel erzeugt und muss nicht erst manuell mit ssh-keygen generiert werden. Auf diesem Formular können Sie dies aktivieren und den Schlüsseltyp anpassen. Im Admin-Alltag bringt die automatische SSH-Schlüssel-Generierung Vor- und Nachteile: Von Vorteil ist sicherlich, dass man sich das nachträgliche Anlegen spart. Nachteilig ist, dass auch für solche Benutzer Schlüssel existieren, die keinen SSH-Server-Zugriff benötigen. Und das wiederum ist mit zusätzlichen Sicherheitsrisiken verbunden. 25.9 Konfigurationsdateien editieren Über den Verweis Edit Config Files können Sie außerdem die beiden OpenSSHKonfigurationsdateien /etc/ssh/sshd_config und /etc/ssh/ssh_config manuell anpassen. Diese Funktion kennen Sie bereits von anderen Modulen und ServerKonfigurationen. 25.10 Modulkonfiguration Auch das OpenSSH-Server-Modul besitzt eine Modulkonfiguration. In dieser finden Sie verschiedene Informationen zur Server-Konfiguration, beispielsweise den Pfad zum SSHD-Programm, den zu den verschiedenen Konfigurationsdateien, die Webmin kompakt 312 SSH-Server Kommandos zum Starten und Beenden des Servers sowie den Pfad zum Programm ssh-keygen, mit dem die Schlüssel erzeugt werden. Änderungen sind hier in der Regel nicht erforderlich, denn die Einstellungen liest Webmin auf der bestehenden Installation ein. Die Konfiguration des SSH-Server-Moduls. www.brain-media.de 313 26 Samba-Administration In heterogenen Netzwerken – und Sie sind ja eher die Regel, also die Ausnahme – ist es essenziell, dass man Dateiablagen plattformübergreifend nutzen kann. Hierfür bietet sich natürlich der Einsatz von Samba (http://www.samba.org) an, der das Server-Message-Block-Protokoll (SMB) für Unix-Systeme verfügbar macht. Das SMB-Protokoll wird gelegentlich auch als CIFS (Common Internet File System), LanManager- oder NetBIOS-Protokoll bezeichnet. Mithilfe von Samba können Sie eine Vielzahl von typischen Windows-ServerFunktionen auf einem Linux-System abbilden. Der Vorteil: Samba gilt als stabiler und leistungsfähiger als Windows-Alternativen. Als Open-Source-Lösung ist Samba außerdem frei verfügbar. Auch der Reifegrad ist inzwischen derart hoch, dass man die Software bedenkenlos in jedes Produktionssystem integrieren kann. Einziges Manko – sofern man davon sprechen kann – ist, dass Samba das SMB-Protokoll nicht vollständig implementiert. Da Samba außerdem zum Lieferumfang (fast) einer jeden Linux-Distribution gehört, ist es schnell installiert und in Betrieb genommen. Der Samba-Server selbst besteht aus einer Reihe von einzelnen Modulen, die verschiedene Aufgaben von der grundlegenden Funktion bis hin zur Konfiguration und Dokumentation übernehmen. Verschiedene Aufgaben können auch durch andere Programme ersetzt werden, beispielsweise die Konfiguration von Samba über das Samba-eigene Modul SWAT oder aber eben mit Webmin. Das Kernmodul von Samba ist der smbd-Daemon. Er stellt die Datei- und Druckdienste für andere SMB-Clients bereit, also für „normale“ Windows- oder LinuxClients in Ihrem Netzwerk. Webmin kompakt Samba-Administration 314 Ein erster Blick auf die Samba-Schnittstelle, die Ihnen Webmin zur Verfügung stellt. Die Webmin-Schnittstelle präsentiert Ihnen einen dreigeteilten Dialog: · Im oberen Bereich werden die bereits existierenden Shares/Freigaben samt Pfad und Sicherheitsinformationen aufgeführt. · Im mittleren Bereich finden Sie die allgemeinen Konfigurationen des Samba-Systems. · Im unteren Bereich verwalten Sie die Benutzer. Außerdem finden Sie am Fuße der Samba-Übersicht den typischen Button zum Starten, Neustarten und Beenden des Servers. Womöglich spuckt die Schnittstelle eine Warnung wie die folgende aus: Warnung - Ihre Samba-Konfiguration in /etc/samba/smb.conf beinhaltet die config oder include Direktive. Dies kann dazu führen, daß Webmin die Datei /etc/samba/smb.conf falsch verändert. www.brain-media.de Erste Freigabe erstellen 315 In diesem Fall sollten Sie die Samba-Konfigurationsdatei gegebenenfalls anpassen. Kommentieren Sie die entsprechenden Zeilen in der Konfigurationsdatei, wenn Sie nicht benötigt werden. Die include-Direktive versucht beispielsweise häufig, einen DHCP-Server einzubinden. 26.1 Erste Freigabe erstellen Über das Samba-Webmin-Modul ist es ein Leichtes, eine neue Datei- oder Druckerfreigabe zu erstellen. Um eine erste Freigabe zu erzeugen, folgen Sie dem Link Neue Dateifreigabe erstellen. Der Rest ist wieder einfach: Weisen Sie in dem zugehörigen Formular der Freigabe eine Bezeichnung zu. Alternativ können Sie auch das Home-Verzeichnis zur Freigabe machen. Eine neue Freigabe in der Entstehung. Im Eingabe- bzw. Auswahlfeld Directory to share geben Sie das gewünschte Verzeichnis an bzw. wählen Sie dasjeinige aus, welches Sie freigeben wollen. Dann legen Sie fest, ob das Verzeichnis automatisch erzeugt werden soll und wer der Besitzer ist. Bestimmen Sie mit Verfügbar, ob das neue freigegebene Verzeichnis unmittelbar verfügbar sein soll und ob es von anderen Benutzern durchforstet werden kann (Sichtbar). Schließlich können Sie einen ergänzenden Kommentar hinzufügen. Mit einem Klick auf Speichern erstellen Sie die neue Freigabe, die dann in der oben erwähnten Freigabeliste aufgeführt wird. Sicherlich fragen Sie sich nun, wie Sie denn als Nächstes die Eigenschaften wie die Zugriffsbeschränkungen, Dateiberechtigungen etc. definieren. Die Beantwortung Webmin kompakt Samba-Administration 316 der Frage ist einfach: Editieren Sie die Freigabe durch einen Klick auf den zugehörigen Listeneintrag. Eine editierte Freigabe. Wie Sie voranstehender Abbildung entnehmen können, präsentiert Ihnen der Dialog Freigaben bearbeiten neben den zunächst hinterlegten Eigenschaften vier Freigabeeinstellungen: · Sicherheit und Zugriffskontrolle · Dateiberechtigungen · Dateinamen · Erweiterte Einstellungen Außerdem können Sie über die Schaltfläche Verbindungen anzeigen die aktuellen Sessions einsehen. Auch das Löschen der Freigabe ist möglich. Schauen wir uns die einzelnen Funktionen für das Bearbeiten einer Freigabe genauer an. Zunächst die Einstellungen Sicherheit und Zugriffskontrolle. www.brain-media.de Erste Freigabe erstellen 317 Die sicherheitsrelevanten Einstellungen für eine Freigabe. Die Einstellungen für die Sicherheit und Zugriffskontrolle sind weitestgehend selbsterklärend. Zunächst legen Sie fest, ob die Freigabe auch schreibbar ist oder nicht. Standardmäßig ist sie es nicht. Sie können die Freigabe auf für Gäste öffnen, indem Sie die Option Gastzugang definieren. Unter Unix-Gastbenutzer können Sie explizit einen solchen definieren. Es folgen verschiedene Optionen, mit denen Sie explizit definieren, welchen Rechnern, Benutzern und Gruppen Sie den Zugriff erlauben wollen. Soweit verfügbar helfen Ihnen dabei die Auswahlmenüs. Im unteren Formular bestimmen Sie mögliche Benutzer und Benutzergruppen, legen fest, welcher Benutzer bzw. welche Gruppe Lese- und wer Lese/Schreibrechte besitzen soll. Die Auswahl erfolgt aus den bereits eingerichteten Benutzern und Gruppen Ihres Linux-Systems. Webmin kompakt 318 Samba-Administration Die Dateiberechtigungen. Wenn Sie dem Verweis Dateiberechtigungen folgen, finden Sie einige wichtige Einstellungen. Da das SMB von Haus aus keine Berechtigungen unterstützt, ist es sinnvoll, diese mithilfe des Samba-Servers zu setzen. Die Einstellungen hierzu finden Sie auf dem Formular Dateiberechtigungen. Auch diese Einstellungen gelten nur für die aktuelle Freigabe. Bestimmen Sie zunächst den typischen Datei- und dann den Verzeichnismodus. Geben Sie einfach in die beiden dafür vorgesehenen Eingabefelder den entsprechenden Wert ein. Der Standardwert ist 755. Wenn Sie Verzeichnisse nicht anzeigen wollen, so geben Sie deren Bezeichnung in das Eingabefeld Nicht angezeigte Verzeichnisse ein. Entsprechend können Sie Linux-Benutzer und -Gruppen für den Zugriff auswählen. Da Windows-Clients keine symbolischen Links unterstützen, sollten Sie die Option Symbolischen Links folgen deaktivieren, denn das stellt ein gewisses Sicherheitsrisiko dar. Die Dateinamensumsetzungen. www.brain-media.de Erste Freigabe erstellen 319 Da Linux und Windows unterschiedliche Dateinamenkonventionen verwenden, stellt Ihnen Samba eine Funktion zur Verfügung, mit der Sie dies konfigurieren. Diese Funktionen waren insbesondere bei den Windows-95-Vorgängern wichtig, da diese beispielsweise keine langen Dateinamen unterstützten. Wenn Ihre Netzwerk-Clients neueren Datums sind, müssen Sie sich hierum in der Regel nicht kümmern. Anders ist das, wenn auch DOS-Clients auf das Samba-System zugreifen sollen. Auf dem Register Dateinamensumsetzungen können Sie beispielsweise die Unterscheidung zwischen Groß- und Kleinschreibung deaktivieren. Die erweiterten Einstellungen für die Freigabe. Schließlich können Sie für jede Freigabe eine Fülle von erweiterten Einstellungen definieren. Dazu folgen Sie dem Verweis Erweiterte Einstellungen. Auf dem zugehörigen Formular können Sie beispielsweise die maximale Anzahl an Verbindungen beschränken und die Ausführung von bestimmten Kommandos beim Verbindungsauf- und -abbau definieren. Webmin kompakt 320 Samba-Administration 26.2 Druckerfreigabe erstellen Kommen wir zum zweiten wichtigen Einsatzbereich: Dem Erstellen einer Druckerfreigabe, damit ein Netzwerkdrucker auch von anderen Netzwerk-Clients genutzt werden kann. Eine neue Druckerfreigabe entsteht. Geben Sie in dem Formular den Freigabenamen, den Drucker, das SpoolVerzeichnis und die Verfügbar- bzw. Sichtbarkeit im Netzwerk an. Mit einem Klick auf die Schaltfläche Erstellen ist der Netzwerkdrucker erstellt und Sie finden auch diesen in der Freigabeliste. Die Druckereinstellungen. www.brain-media.de Freigabeeinstellungen als Vorlagen 321 Nach dem Erstellen der Druckerfreigabe können Sie auch diese wieder editieren. Dort finden Sie neben den oben beschriebenen Einstellungen für Sicherheit und Zugriffskontrolle noch die Druckereinstellungen. Diese erlauben Ihnen das Erzwingen eines PostScript-Druckers und die Verwendung spezifischer Druckbefehle. 26.3 Freigabeeinstellungen als Vorlagen Eine weitere Besonderheit des Samba-Moduls ist die Funktion Freigabe kopieren. In dem einfachen Formular wählen Sie einfach die Freigabe samt den dazugehörigen Einstellungen aus, deren Einstellungen in der zu erstellenden Freigabe übernommen werden sollen. Die Ausgangsfreigabe spielt also die Rolle einer Vorlage. Auf diesem Weg können Sie mit minimalem Aufwand eine neue Freigabe erstellen, die die Eigenschaften der Vorlage besitzt. Die neu erzeugte Vorlage können Sie dann im nächsten Schritt anpassen. Bei der Kopierfunktion dient die Ausgangsfreigabe als Vorlage für die neue. 26.4 Globale Samba-Konfiguration Kommen wir zum mittleren Bereich, in dem Sie zehn Funktionen für die globale Konfiguration des Samba-Servers finden. All diese Einstellungen wirken sich – wie die Bezeichnung schon erkennen lässt – auf das gesamte Samba-System aus. Webmin kompakt 322 Samba-Administration Die globalen Unix-Einstellungen des Samba-Systems. 26.4.1 Unix-Einstellungen Wenn Sie dem Link Unix-Einstellungen folgen, landen Sie auf einem recht umfangreichen Formular, auf dem Sie zunächst festlegen können, ob und falls ja nach welcher Zeit eine inaktive Verbindung zum Server beendet wird. Standardmäßig ist diese Option nicht aktiv. Sie sollten aber ein Beenden erzwingen, beispielsweise nach 5 Minuten, damit eine offene Verbindung nicht von Angreifern genutzt wird. Unter Netzwerkschnittstelle können Sie ein alternatives Interface und eine andere Netzwerkmaske verwenden. Eher für Profis sind die Anpassungen der Paketgröße und die der Socket-Optionen gedacht. 26.4.2 Windows-Einstellungen Neben den Unix- können Sie auch die Windows-Einstellungen anpassen. Folgen Sie dazu dem gleichnamigen Link. In dem zugehörigen Dialog können Sie beispielsweise den Arbeitsgruppennamen, den Servernamen und Protokoll-Level anpassen. Die wichtigsten Einstellungen dieses Formulars: www.brain-media.de Globale Samba-Konfiguration 323 · Arbeitsgruppe: In diesem Eingabefeld können Sie den Arbeitsgruppennamen anpassen, um den Samba-Server beispielsweise in eine bestehende Netzwerkumgebung einzubinden. · WINS Modus: Wenn in Ihrem Netzwerk ein WINS-Server verwendet wird. Falls das nicht der Fall ist, aktivieren Sie die Option Server emulieren, damit Windows-Clients Ihr System nutzen können, um SambaServernamen auflösen zu können. · Serverbeschreibung: Hier können Sie eine eigene Server-Beschreibung hinterlegen. · Servername: Hier geben Sie den Servernamen an, damit Ihr SambaSystem im Netzwerk eindeutig identifizierbar ist. Die Windows-Einstellungen des Samba-Servers. · Standardfreigabe: Über dieses Auswahlmenü bestimmen Sie, ob und falls ja welche Freigabe die Standardfreigabe sein soll. In der Standardkonfiguration ist keine Freigabe als Standardfreigabe vorgesehen. · Folgende Freigaben immer anzeigen: Entsprechend können Sie über dieses Auswahlmenü festlegen, welche bereits erzeugten Freigaben immer Webmin kompakt Samba-Administration 324 angezeigt werden. Achten Sie hier darauf, wirklich nur die Freigaben anzuzeigen, die auch tatsächlich von Dritten benötigt werden. · Maximale Festplattengrösse (aus Clientsicht): Legen Sie hier fest, wie die maximale Festplattengröße für die Clients ausfällt. Es empfiehlt sich, den Wert Unbegrenzt nicht zu verwenden, sondern stattdessen eine angemessene Größe zu definieren. · Master Browser?/ Master browser Priorität: Wenn Sie Ihren SambaServer zum Master-Server machen wollen, der auch andere SMB-Server und -Clients im Netzwerk listet, so müssen Sie zunächst die Option Master Browser aktivieren und dann im nächsten Schritt dessen Priorität definieren. Der Server mit der höchsten Priorität wird als Master – auch von anderen Servern – behandelt. Um sich über Windows-9x-Systeme und deren Nachfolger zu stellen, genügt der Standardwert 20. Wenn Sie eine höhere Priorität als einen Windows-NT-Server besitzen wollen, müssen Sie die Priorität auf 65 setzen. · Protokolllevel: Über dieses Auswahlmenü bestimmen Sie den Protokolllevel. Sie haben die Wahl zwischen folgenden Optionen: o CORE o COREPLUS o LANMAN1 o LANMAN2 o NT1 Dieses Auswahlmenü bedarf der Erläuterung. Da Samba auf eine beachtliche Entwicklungsdauer zurückblicken kann, haben sich auch die Dialekte verändert, die das SMB-Protokoll verwendet. Das SMB-Protokoll wurde in der Vergangenheit immer wieder überarbeitet und/oder erweitert. Diese verschiedenen Versionen des Protokolls nennt man Dialekte. Nachstehende Tabelle fasst die verschiedenen Versionen zusammen: Die aktuellste Version des SMB-Protokolls ist der CIFS-Dialekt, der von allen modernen Windowsvarianten benutzt wird. www.brain-media.de Globale Samba-Konfiguration Protokollname ID String Verwendet Core PC NETWORK PROGRAM 1.0 Erste Implementierung Core Plus MICROSOFT NETWORKS 1.03 LAN 1.0 Manager LANMAN1.0 LAN 2.0 Manager LM1.2X002 NT LAN Manager 1.0 NT LM 0.12 Windows NT 4.0 Samba’s NT LM 0.12 Samba Samba Common Internet File System CIFS 1.0 Windows 2000/XP 325 bessere Sicherheit Da die meisten neueren Dialekte auf den alten aufbauen, ist auch in der Regel Abwärtskompatibilität gewährleistet. Denn alle neueren Dialekte müssen auch die Funktionalität der Vorgänger beherrschen. Deshalb beherrschen SMB-Clients und Server auch verschiedene Dialekte. Um nun korrekt kommunizieren zu können, müssen Sie sich als Erstes über einen gemeinsamen Dialekt einigen. In der Regel ist es sinnvoll, die Standardeinstellung beizubehalten. Änderungen machen nur dann Sinn, wenn Sie zuverlässig wissen, dass die zugreifenden Clients das gewählte Protokoll auch verstehen. · Sicherheit: Wie wir später noch sehen werden, besitzt der Samba-Server umfangreiche Funktionen zur Steuerung des Zugriffs. Sie können beispielsweise den Zugriff auf Benutzer- und/oder Gruppenebene definieren. Samba erlaubt aber auch die Verwendung weiterer Zugriffsmechanismen. Diese sind über das Auswahlmenü Sicherheit verfügbar. Die möglichen Optionen sind: o Freigabeebene o Benutzerebene o Passwort-Server o Domäne o Active Directory Webmin kompakt Samba-Administration 326 · Password Server: Wenn Sie einen Passwort-Server für die Zugriffssteuerung verwenden wollen, geben Sie in diesem Eingabefeld die IP-Adresse an. · Browselisten weitergeben an: Samba-Server verteilen Informationen über Ihre Freigaben in sogenannten Browse-Listen im Netzwerk, damit andere Clients dies erkennen, einlesen und dann die angebotenen Freigaben nutzen können. Mit dieser Funktion können Sie das Verteilen deaktivieren bzw. auf spezifische Systeme beschränken. Falls Sie eine Beschränkung der Weitergabe wollen, geben Sie in dem Feld IP Addresse die gewünschten Adressen ein. Die Passwort-Einstellungen des Samba-Servers. 26.4.3 Passwort-Einstellungen Auf dem Formular Passwort-Einstellungen können Sie verschiedene Passwortspezifische Anpassungen vornehmen. Hintergrund dieser Funktion: Das SMBProtokoll erlaubt Benutzern das Ändern des Passworts, und zwar vom Client aus. In einem solchen Fall muss das Passwort aufseiten des Servers aktualisiert werden. Außerdem unterstützt das Webmin-Modul das Usernamen-Mapping, also das Umsetzen von Linux- in Windows-Benutzernamen. www.brain-media.de Globale Samba-Konfiguration 327 Die Einstellungen im Einzelnen: · Verschlüsselte Passwörter verwenden? Da Windows-Versionen ein verschlüsseltes Passwortformat verwenden, sollten Sie diese Option auf Ja setzen bzw. die Standardeinstellung beibehalten. · Leere Passwörter erlauben? Auch hier sollten Sie die Standardeinstellung Nein beibehalten, damit sich Benutzer nicht mit einem leeren Passwort Zugriff auf den Samba-Server verschaffen – ein gefundenes Fressen für Angreifer. · Programm zum Ändern des Passwortes: Hier können Sie ein alternatives Programm nutzen, das zum Anpassen des Passworts verwendet werden soll. Samba verwendet standardmäßig /bin/passwd. · Ändere Unix-Passwort ebenfalls? Wenn ein Client sein Passwort ändert, und Sie damit auch das Ändern des Systempassworts erlauben wollen, so aktivieren Sie die Option Ändere Unix-Passwort ebenfalls. Aus sicherheitstechnischen Überlegungen heraus sollten Sie diese Funktion auch deaktiviert lassen, um nicht möglichen Angreifern unnötige Angriffspunkte zu liefern. · Aufforderung zur Passwortänderung: Hier können Sie bestimmte Kommandos für die Passwortänderung einbinden. · Umsetzung der Benutzernamen: Schließlich können Sie die Umsetzung von Client- und Systembenutzernamen definieren. Clients, die sich mit einem aufgeführten Benutzernamen anmelden, erhalten automatisch die mit dem verknüpften Linux-Benutzernamen verbundenen Rechte. 26.4.4 Windows-zu-Unix-Druckereinstellungen Eine Besonderheit von Samba ist, dass der Server nicht nur Datei-, sondern auch Druckdienste im heterogenen Netzwerk bereitstellen kann. Die hierfür relevanten Einstellungen finden Sie unter Windows-zu-Unix-Druckereinstellungen. Auf dem zugehörigen Formular legen Sie beispielsweise fest, welches Drucksystem verwendet werden soll. Webmin kompakt Samba-Administration 328 Die Drucker-Einstellungen. Die Einstellungen: · Unix Druckverfahren: Über dieses Auswahlmenü bestimmen Sie das zu verwendende Drucksystem. Welches Sie dabei idealerweise verwenden, ist auch von dem von Ihnen verwendeten Linux-/Unix-System abhängig. In der Regel sind Sie mit CUPS bestens bedient. CUPS können Sie übrigens auch mithilfe von Webmin konfigurieren. · Alle Drucker freigeben? Mit dieser Option können Sie dafür sorgen, dass alle angeschlossenen Drucker sichtbar sind und freigegeben werden. Wenn Sie dies nicht wollen, setzen Sie den Schalter auf Nein. Die Drucker sind aber dennoch weiterhin über \\server_name\drucker_name von den Clients aus nutzbar. · Druckerdefinitionsdatei: In einer Druckerdefinitionsdatei (eine ASCIIDatei) sind Variablen, Steuerzeichen für die Formatierung und Zeichendefinitionen enthalten. Sie dient dazu, den von Ihnen verwendeten Drucker anzupassen. Hier können Sie eine existierende Datei auswählen. Wenn Sie mit CUPS arbeiten, ist die Datei cups die richtige. · Druckerstatus zwischenspeichern: Hier können Sie bestimmen, wie lange der Druckerstatus zwischengespeichert wird. Standardmäßig sind es 10 Sekunden. Bei sehr langsamen Druckvorgängen kann es sinnvoll sein, den Wert hochzusetzen. 26.4.5 Erweiterte Einstellungen Wenn Sie dem Verweis Erweiterte Einstellungen folgen, gelangen Sie zu sehr spezifischen Anpassungsmöglichkeiten, die meist nur für fortgeschrittene Anwender interessant sind. www.brain-media.de Globale Samba-Konfiguration 329 Zunächst können Sie den Debug-Level von null bis zehn verändern, wobei ein höherer Wert mehr Ausgaben bedeutet. Treten Probleme bei der Client-Anbindung oder bei der Server-Ausführung auf, ist es sinnvoll, den Level nach oben zu setzen. Die erweiterten Samba-Einstellungen. Eine weitere nützliche Einstellung: Sie können gezielt Verzeichnisse für den Zugriff sperren. Geben Sie deren Pfad in dem Verzeichnis an oder wählen Sie diese gezielt aus. 26.4.6 Winbind-Optionen Über das Webmin-Modul ist auch die Konfiguration von Winbind möglich. Winbind ist eine Komponente der Samba-Suite, die das Problem der einheitlichen Anmeldung löst. Winbind verwendet eine Unix-Implementierung der MS-RPCAufrufe, PAM (Pluggable Authentication Module) und NSS (Name Service Switch), um Windows-NT-Domänenbenutzer auf Linux-Systemen als LinuxBenutzer erscheinen und arbeiten zu lassen. Webmin kompakt Samba-Administration 330 Auch die Winbind-Einstellungen lassen sich mithilfe von Webmin anpassen. Winbind stellt drei unterschiedliche Funktionen zur Verfügung: · die Authentifizierung der Benutzerbeglaubigung mithilfe von PAM · die Auflösung der Identität (mittels NSS) · Winbind verfügt über die Datenbank winbind_idmap.tdb, in der die Zuordnungen zwischen den Linux-UIDs/GIDs und den NT-SIDs hinterlegt sind. Diese Zuordnungen werden nur für Benutzer und Gruppen verwendet, die nicht über eine lokale UID/GID verfügen. Winbind sichert die Zusammengehörigkeit zwischen der UID/GID, die im idmap-uid/gidBereich zugeteilt wird, und der NT-SID. In den Winbind-Einstellungen können Sie beispielsweise die Verwendung von Winbind für lokale Benutzer aktivieren bzw. deaktivieren oder die Auflistung der Benutzer verbieten. Die Standardeinstellungen sollten Sie nur ändern, wenn Sie wissen, was Sie tun. 26.4.7 Vorgaben für Freigaben Wenn Sie dem Link Vorgaben für Freigaben folgen, gelangen Sie zu einem weiteren nützlichen Konfigurationsbereich, über den Sie eine Fülle von Vorgaben für Ihre Freigaben definieren können, die dann von neu zu erstellenden Freigaben automatisch berücksichtigt werden. So richtig neu sind die Einstellungen nicht, wie Sie nachfolgendem Dialog entnehmen können. www.brain-media.de Globale Samba-Konfiguration 331 Die Freigabevorgaben. Die Handhabung der Vorgabenfunktion ist einfach: Wählen Sie das freizugebende Verzeichnis aus, bestimmen Sie die Verfügbarkeit und hinterlegen Sie einen Kommentar. Außerdem können Sie folgende Bereiche konfigurieren, die bereits zuvor besprochen wurden: · Sicherheit und Zugriffskontrolle · Dateiberechtigungen · Dateinamen · Erweiterte Einstellungen 26.4.8 Vorgaben für Druckerfreigaben Was für Dateifreigaben möglich ist, funktioniert auch bei Druckerfreigaben: Folgen Sie dem Verweis Vorgaben für Druckerfreigaben, um für Ihre Ausgabegeräte spezifische Vorgaben zu definieren. Dabei bestimmen Sie den Drucker, das SpoolVerzeichnis und die Verfügbarkeit. Bei den Druckervorgaben stehen Ihnen entsprechend obiger Beschreibung zwei weitere Freigabeeinstellungen zur Verfügung: · Sicherheit und Zugriffskontrolle · Druckereinstellungen Webmin kompakt Samba-Administration 332 · Konfigurationsdatei editieren Wenn Sie dem Link Edit Config File folgen, gelangen Sie zu einem Textfeld, in dem die aktuelle Samba-Konfigurationsdatei angezeigt wird. Natürlich können Sie hier manuelle Eingriffe vornehmen. Dabei handelt es sich um die Konfigurationsdatei /etc/smb.conf, die bestimmt, welche Ressourcen das System nach außen anbietet und welche Einschränkungen hierbei existieren. Diese Funktion ist insbesondere dann für Sie interessant, wenn Sie Anpassungen vornehmen wollen, die nicht über das Webmin-Modul zugänglich sind. Hier ein typisches Beispiel für die smb.conf. In dieser Beispielkonfiguration ist einem Remote-User der Zugriff auf sein Heimatverzeichnis auf dem LinuxRechner und außerdem der Schreibzugriff auf ein temporäres Verzeichnis erlaubt: ; /etc/smb.conf ; ; Wichtig: Der Server muss bei Änderungen ; angehalten und anschließend neu gestartet ; werden: ; /etc/rc.d/init.d/smb stop ; /etc/rc.d/init.d/smb start [global] ; Entkommentieren, wenn Gästen der Zugriff ; erlaubt werden soll. ; guest account = nobody log file = /var/log/samba-log.%m lock directory = /var/lock/samba share modes = yes [homes] comment = Home Directories www.brain-media.de Globale Samba-Konfiguration browseable = no read only = no 333 create mode = 0750 [tmp] comment = Temporary file space path = /tmp read only = no public = yes Eine typische Samba-Konfigurationsdatei weist verschiedene Abschnitte auf, beispielsweise die Folgenden: global homes tmp printers public Jeder Abschnitt ist für die Steuerung eines Teilbereichs des Servers zuständig, z. B. für die Folgenden: · global: In diesem Abschnitt werden Variablen definiert, die Samba für die Zuteilung aller Ressourcen nutzt. · homes: Hier wird einem entfernten Benutzer der Zugriff auf sein und nur sein Home-Verzeichnis auf dem Linux-Rechner ermöglicht. Diese Maschine muss allerdings im lokalen Netz eingebunden sein. Voraussetzung ist allerdings, dass der Windows-Benutzer eine Zugangsberechtigung für das Linux-System besitzt. · printers: In diesem Abschnitt werden die in der /etc/printcap spezifizierten Drucker den Clients zur Verfügung gestellt. Für weitere Details zur Samba-Konfigurationsdatei sei auf die Samba-Website verwiesen. Dort finden Sie Details in Hülle und Fülle. Webmin kompakt 334 Samba-Administration Ein Blick auf die typische Samba-Schnittstelle. 26.4.9 SWAT Zum Lieferumfang von Samba gehört auch das Web-basierte Konfigurationswerkzeug SWAT (Samba Web Administration Tool). SWAT präsentiert Ihnen nach dem Log-in (am besten als root einloggen) eine einfache Schnittstelle, über die Sie beispielsweise im Menü Globals verschiedene grundlegende Einstellungen wie den Arbeitsgruppennamen und auch sicherheitsrelevante Einstellungen bearbeiten können. Eine Besonderheit von SWAT ist sicherlich der Wizard. Dabei handelt es sich um einen Assistenten, der dem weniger kundigen Administrator die Konfiguration von Samba so einfach wie möglich machen will. www.brain-media.de Globale Samba-Konfiguration 335 Der SWAT-Assistent unterstützt Sie bei der Konfiguration des Samba-Systems. Über die Wizard-Seite können Sie einige Einstellungen der SambaKonfigurationsdatei smb.conf in einem optimierten Format zurückschreiben. Klicken Sie dazu auf die Schaltfläche Commit. Der Unterschied zwischen dem Rewrite-Button und dem Commit-Button besteht darin, dass Rewrite alle Änderungen ignoriert und Commit sämtliche vorgenommenen Änderungen umsetzt. Das Editieren mithilfe von SWAT. Webmin kompakt 336 Samba-Administration Mit einem Klick auf den Edit-Button öffnet sich ein einfaches Formular, über das Sie verschiedene grundlegende Parameter einer Basiskonfiguration bearbeiten können. Auch drei sicherheitsrelevante Einstellungen können über den Dialog angepasst werden. Tipp: SWAT eindeutschen Sie können SWAT so konfigurieren, dass das Tool seine Ausgaben in der Sprache erzeugt, die in Ihrem Webbrowser eingestellt ist. Diese Anweisung wird SWAT im Accept-Language-Header der HTTP-Anfrage übergeben. Standardmäßig präsentiert Ihnen SWAT eine englischsprachige Schnittstelle. Um die Anpassungen vorzunehmen, führen Sie Folgendes aus: - Installieren Sie die passenden msg-Dateien aus dem Samba-source/ po-Verzeichnis nach $LIBDIR. - Setzen Sie den korrekten Wert für display charset. - Stellen Sie gegebenenfalls die Sprache im Browser ein. Die Bezeichnung der msg-Datei entspricht der Sprach-ID des Browsers, also beispielsweise en für Englisch und de für Deutsch Neben der Auflistung der Datei- und Druckerfreigaben und den zuvor beschriebenen Besonderheiten hat SWAT noch drei weitere Funktionen zu bieten: Status, View und Password. Die Status-Seite erlaubt die Überwachung der Samba-Daemons, wobei die HauptDaemonen, aus denen der Samba-Server besteht, smbd, nmbd und winbindd sind. Alle drei Daemons können angehalten, gestartet und neu gestartet werden. Sie können die Status-Seite auch dazu verwenden, bestimmte smbdClientverbindungen zu unterbrechen und um Dateien freizugeben, die womöglich gesperrt sind. Auf der Seite View präsentiert Ihnen SWAT standardmäßig die wichtigsten Einträge der Sambakonfigurationsdatei smb.conf. Mit einem Klick auf die Schaltfläche Show all werden alle Einträge gezeigt. Änderungen können Sie nicht vornehmen. Auf der Passwortseite können Sie die Passwörter von Windows-Benutzern erstellen, löschen sowie de- und reaktivieren Wenn der Benutzer als Nicht-RootBenutzer angemeldet ist, muss er bei Änderungen von Passwörtern das alte und zweimal das neue Passwort eingeben. Ist er als root angemeldet, wird nur das neue Passwort benötigt. www.brain-media.de Samba-Benutzer 337 Diese Funktion wird häufig verwendet, um Benutzerpasswörter über mehrere Windows-Server hinweg zu ändern. 26.5 Samba-Benutzer Wie bereits oben erwähnt, verwendet das SMB-Protokoll ein Passwortverschlüsselungsformat, das mit dem Standard-Linux/Unix-Format inkompatibel ist. Bis Windows 95 stellt das kein Problem dar, da diese Systeme Ihr Passwort unverschlüsselt an den Samba-Server übermitteln – ähnlich wie bei Telnet oder FTP. Bei aktuellen Windows-Versionen ist das anders. Sie verwenden ein NTLMverschlüsseltes Format. Das lässt sich zwar in der Windows-Registry abschalten, doch das hilft bei vielen Clients natürlich auch nicht weiter. Um nun allen Benutzern den Zugriff zu gewähren, müssen Sie zunächst in den Passwort-Einstellungen, die zuvor beschreiben wurden, sicherstellen, dass die Option Verschlüsselte Passwörter verwenden? auf Ja gesetzt ist. Damit ist die Passwortliste von Samba aktiviert. Nun können Sie die bestehenden Linux-Benutzer zu Samba-Benutzern machen. Dazu folgen Sie dem Verweis UnixBenutzer zu Samba-Benutzer konvertieren. Mit minimalem Aufwand sind Ihre Linux-Benutzer auch Samba-Benutzer. Das Formular Benutzer konvertieren erlaubt Ihnen, mit minimalem Aufwand Unixund Samba-Benutzer zu synchronisieren. Haben Sie Samba so konfiguriert, dass Webmin kompakt Samba-Administration 338 der Server verschlüsselte Passwörter verwendet, verwaltet das System seine Benutzer getrennt vom Betriebssystem – das ist zuvor bereits angeklungen. Sie können die Liste der Benutzer, die nicht konvertiert werden sollen, explizit in dem Konvertierungsformular bestimmen. Geben Sie dazu den Benutzernamen, die UIDs und/oder den Gruppennamen mit einem vorgestellten @ in das erste Eingabefeld ein. Sie können auch einen UID-Bereiche verwenden, beispielsweise 500-1000 oder 500-. Das Formular bietet Ihnen vier weitere Funktionen für die Konvertierung an: · Vorhandene Samba Benutzer aus Unix Benutzern aktualisieren: Diese Option sorgt dafür, dass bestehende Samba-Benutzer aus Systembenutzern aktualisiert werden. Diese Option ist standardmäßig aktiviert. · Neue Samba Benutzer aus Systembenutzern erstellen: Diese Option sorgt dafür, dass neue Samba-User aus dem Linux-Benutzereinträgen erstellt werden. · Samba Benutzer löschen, die keine Unix Benutzer sind: Löscht SambaUser, die dem System unbekannt sind. Das ist in der Regel nicht gewollt, denn häufig führt man bei getrennten Benutzerlisten auch unterschiedliche User ein. · Passwort für neu erstellte Benutzer: Hier legen Sie fest, ob neue Benutzer kein Passwort besitzen, ob sie gesperrt werden oder ob sie ein festes Passwort verwenden müssen. Mit einem Klick auf die Schaltfläche Benutzer konvertieren leiten Sie die Konvertierung ein. Webmin gibt Ihnen im Folgedialog die konvertierten Einträge an. Die Einstellungen für die Benutzer-Synchronisation. www.brain-media.de Samba-Benutzer 26.5.1 339 Benutzer- und Gruppen-Synchronisation Das Webmin-Modul stellt Ihnen verschiedene Funktionen zur Verfügung, mit denen Sie Benutzer und Gruppen zwischen Ihrem Linux-System und Samba synchronisieren können. Dazu verwenden Sie die beiden folgenden Funktionen: · Automatische Unix- und Samba-Benutzer-Synchronisation konfigurieren · Konfiguriere automatische Synchronisation (Unix- zu Samba-Gruppe) Werfen wir zunächst einen Blick auf die Funktion für den Benutzerabgleich. Mit dieser können Sie Webmin so konfigurieren, dass Änderungen von Systembenutzern automatisch auf Samba-Benutzer angewendet werden. Das funktioniert jedoch nur, wenn Sie das Webmin-Modul Benutzer und Gruppen verwenden, um UnixBenutzer zu erstellen, zu ändern oder zu löschen. Standardmäßig sind die folgenden selbsterklärenden Optionen aktiviert: · Erstelle einen Samba-Benutzer, wenn ein Unix-Benutzer erstellt wird. · Modifiziere einen Samba-Benutzer, wenn der entsprechende UnixBenutzer modifiziert wird. · Lösche einen Samba-Benutzer, wenn der entsprechende Unix Benutzer gelöscht wird. Außerdem können Roaming-Profile gelöscht bzw. umbenannt werden, wenn Sie Linux-Benutzer löschen bzw. umbenennen. Sehr ähnlich sind die Funktionen der Gruppensynchronisation, mit der Sie dafür sorgen, dass Änderungen an der Unix-Gruppenliste auch an die SambaGruppenliste weitergereicht werden. Auch hier gilt: Das klappt nur dann zuverlässig, wenn Sie ausschließlich das Webmin-Benutzer- und Gruppen-Modul verwenden. Sie können folgende Optionen verwenden: · Wird eine Samba-Gruppe erzeugt, so kann auch eine Unix-Gruppe erzeugt werden Dabei können Sie die Art der neuen Gruppe (lokale Gruppe, Domaingruppe, NT-Builtin oder unbekannt) und die Rechte für neue Gruppen (allerdings nur für lokale Gruppen) definieren. · Sie können dafür sorgen, dass sich die Samba-Gruppe ändert, wenn die Unix-Gruppe modifiziert wird. Webmin kompakt Samba-Administration 340 · Der Abgleich kann dafür sorgen, dass eine Samba-Gruppe gelöscht wird, wenn Sie eine Unix-Gruppe entfernen. Die Konfiguration der Gruppen-Synchronisation. 26.5.2 Benutzer und Gruppen verwalten Das weitere Verwalten von Benutzern und Gruppen gestaltet sich ebenfalls recht einfach. Folgen Sie dazu entweder dem Link Hinzufügen und Bearbeiten von Samba-Gruppen oder dem Link Samba-Benutzer und Passwörter bearbeiten. Nachdem Sie die ersten Benutzer konvertiert und damit für Samba nutzbar gemacht haben, wollen Sie möglicherweise deren Passwort ändern. Das Anpassen von Benutzerpasswörtern geht nur von Benutzer zu Benutzer. Wechseln Sie dazu in die Benutzerverwaltung und klicken Sie den gewünschten Benutzereintrag an. Geben Sie in das Passwort-Feld die gewünschte Zeichenkombination ein. Sie können dem Benutzer außerdem über Keinen Zugriff den Zugriff auf den SambaServer verwehren. www.brain-media.de Samba-Benutzer 341 Die Gruppenverwaltung von Samba. Das Bearbeiten von Gruppeneinstellungen verläuft ähnlich. In der Gruppenverwaltung werden alle bestehenden Gruppen samt Art und SID aufgeführt. Um einen Eintrag zu bearbeiten, folgen Sie dem Gruppennamenlink. Das zugehörige Formular erlaubt das Bearbeiten der Gruppenart, der Unix-Gruppe und der Beschreibung. Über die Schaltfläche Löschen können Sie die Gruppe aus der Liste entfernen. Das Erstellen einer neuen Samba-Gruppe ist ebenfalls einfach: Folgen Sie in der Gruppenliste dem Link Eine neue Samba-Gruppe hinzufügen. Im Formular Sambagruppen-Details bestimmen Sie folgende Eigenschaften: · Gruppenname · Gruppenart · Unixgruppe · Beschreibung · Rechte Webmin kompakt 342 Samba-Administration Die Gruppenverwaltung von Samba. Eine letzte Funktion hat der Bereich Samba-Benutzer zu bieten: Binde an Domain. Mit dieser Funktion sorgen Sie für die Anbindung Ihres Samba-Servers an eine Windows-Domain. Zur Anbindung ist die Angabe des Benutzernamens, des Passworts und die Angabe zur Domain notwendig. Die Domain-Angabe kann in der Samba-Konfiguration oder manuell hinterlegt werden. Die Anbindung erfolgt mit dem Kommando /usr/bin/net join -U benutzername. Gelingt die Anbindung, gibt der Folgedialog eine Erfolgsmeldung aus. Gelingt die Anbindung nicht, etwa weil das Passwort falsch ist, werden ebenfalls entsprechende Details ausgegeben, die Ihnen helfen, die korrekte Einstellung zu finden. 26.6 Konfiguration des Samba-Moduls Das Samba-Modul geht davon aus, dass Sie Samba ordnungsgemäß installiert haben. In der Regel erkennt das Samba-Modul eine bestehende Installation korrekt und kann diese problemlos nutzen. Wenn Sie allerdings eine benutzerdefinierte Installation verwendet haben oder aus anderen Gründen Samba in ein NichtStandardverzeichnis installiert haben, so stimmen die Pfade nicht mehr und Sie müssen die Samba-Modulkonfiguration anpassen. www.brain-media.de Konfiguration des Samba-Moduls 343 Die Konfiguration des Samba-Moduls. Die Modulkonfiguration präsentiert Ihnen zwei Bereiche: Konfigurierbare Optionen und Systemkonfigurationen. Die beiden anpassbaren Einstellungen sind: · Liste der Unix-Benutzer, die nicht zur Samba Passwort-Liste hinzugefügt werden: In dem Konvertierungsdialog für Benutzer (siehe oben). Die Standardvorgabenwerte für auszuschließende Benutzer entnimmt das Modul der Samba-Konfigurationsdatei. Hier können Sie weitere Vorgaben definieren. · Sortiere Benutzer und Gruppen nach Name? Wenn Sie diese Konfiguration auf Ja setzen, werden die Benutzer- und Gruppennamen alphabetisch sortiert. In der Standardkonfiguration Nein werden sie in der Reihenfolge aufgeführt, in der sie hinzugefügt wurden. Im Bereich Systemkonfiguration listet die Modulkonfiguration die Pfade zu folgenden wichtigen Dateien auf: · Samba-Konfigurationsdatei · Samba-Passwortdatei Webmin kompakt Samba-Administration 344 · Vollständiger Pfad zu smbstatus · Vollständiger Pfad zu smbpasswd · Vollständiger Pfad zu smbd · Vollständiger Pfad zu nmbd · Vollständiger Pfad zu SWAT · Vollständiger Pfad zu smbgroupedit · Vollständiger Pfad zu pdbedit · Vollständiger Pfad zu net Außerdem können Sie den Befehl zum Start des Samba-Servers eingeben. Soll er bei jedem Systemstart hochgefahren werden, aktivieren Sie die Option Automatisch. Auch den Befehl zum Stoppen des Samba-Servers können Sie einsehen bzw. anpassen. www.brain-media.de 345 27 SpamAssassin-Administration Der Platzhirsch unter den Mailfiltern ist zweifelsohne SpamAssassin (http://spamassassin.apache.org). Das Open-Source-Tool kommt millionenfach zum Einsatz und hat sich in der Vergangenheit bestens bewährt. Der Filter ist für Unix-basierte Systeme konzipiert. Zur Identifikation von Spam nutzt SpamAssassin verschiedene Methoden. Mithilfe der Header-Analyse versucht der Filter herauszufinden, ob der Sender eine Identität vortäuscht und ob eine Nachricht von einer gültigen Adresse stammt. SpamAssassin führt außerdem Textanalysen durch, um die Nachrichteninhalte auf typische Charakteristika von Werbemails zu untersuchen. Ergänzend dazu nutzt SpamAssassin verschiedene Blacklists und greift auf die Spam-TrackingDatenbank Vipuls Razor zurück. Identifiziert SpamAssassin eine Nachricht als Spam, so wird sie entsprechend gekennzeichnet. Der in SpamAssassin integrierte Bayesscher-Filter berechnet auf Grundlage der Einteilung der bisher empfangenen E-Mails die statistische Wahrscheinlichkeit, ob es sich bei einer neuen Nachricht um eine erwünschte oder unerwünschte E-Mail handelt. Die Einstiegsseite des SpamAssassin-Moduls. Webmin kompakt 346 SpamAssassin-Administration Der Vorteil von SpamAssassin: Das Tool kommt mit geringem Konfigurationsaufwand aus. Als Administrator ist man nicht gezwungen, das System laufend zu aktualisieren oder mit Einzelheiten über Mailaccounts, Mailinglisten etc. zu füttern. Das bewerkstelligt der Filter quasi von alleine. GUI-verwöhnte Administratoren müssen sich allerdings weitgehend mit der textbasierten Konfiguration anfreunden. Allerdings gibt es auch hier Abhilfe. Mit dem SpamAssassin Configuration Generator (http://www.yrex.com/spam/spamconfig.php) und eben mit dem SpamAssassin-Webmin-Modul (http://webmin.com/third.html) gibt es auch grafische Schnittstellen für den Filter. Über die SpamAssassin-Übersichtsseite wird die Handhabung des Spam-Filters fast zum Kinderspiel. Hier können Sie erlaubte und verbotene E-Mail-Adressen bestimmen, Spam klassifizieren, E-Mail-Modifikationen vornehmen und vieles mehr. Doch bevor Sie sich an die Konfiguration des Filters machen, müssen Sie sich womöglich zuerst mit folgender Fehlermeldung herumschlagen: SpamAssassin scheint nicht in der globalen Konfigurationsdatei /etc/procmailrc aufgenommen zu sein. Solange ein Benutzer SpamAssassin nicht in seine persönliche ProcmailKonfigurationsdatei aufnimmt, wird jede Konfigurationsänderung hier keinerlei Wirkung zeigen. Da sich Procmail ebenfalls über Webmin konfigurieren lässt, ist das Problem schnell behoben. Damit SpamAssassin und Procmail zusammenspielen, müssen Sie die Datei procmailrc um folgende Zeilen erweitern: :0fw | /usr/local/bin/spamassassin Die Anpassung der Procmail-Konfigurationsdatei. Nach dem Speichern klappt das Zusammenspiel zwischen Filter und MDA (Mail Delivery Agent). www.brain-media.de 347 Damit werden die Mails gefiltert und entsprechend den vom SpamAssassin definierten Regeln als Spam gekennzeichnet. Wollen Sie die als Spam deklarierten EMails zusätzlich in einem speziellen E-Mail-Ordner sammeln, so fügen Sie unter den obigen Zeilen nach einer Leerzeile folgende Anweisungen ein: :0: * ^X-Spam-Status: Yes JUNK Damit werden Spam-Mails im Ordner JUNK gesammelt. Nach dem Speichern der angepassten Procmail-Einstellungen sollte die Fehlermeldung auf der SpamAssassin-Homepage verschwunden sein. In diesem Formular bestimmen Sie, welches die erlaubten und welches die verbotenen E-Mail-Adressen sind. Webmin kompakt SpamAssassin-Administration 348 27.1 Erlaubte und verbotene Adressen Wenn Sie dem Link Erlaubte und verbotene Absender-E-Mail-Adressen folgen, gelangen Sie zu einer umfangreichen Tabelle, die es Ihnen erlaubt, Absender- und Empfänger-E-Mail-Adressen zu definieren, deren E-Mails immer oder niemals als Spam erkannt werden sollen. Jede andere E-Mail wird durch SpamAssassin geprüft. Bei der Eingabe von EMail-Adressen können Sie auch Platzhalter wie *@absender.de oder auch *.spammer.de verwenden, damit E-Mails ganzer Domains spezifisch behandelt werden. Das Formular stellt Ihnen sechs Felder für die Filterung zur Verfügung: · Absender-E-Mail-Adressen, die niemals als Spam gelten sollen. · Ausnahmen für Absender-E-Mail-Adressen, die niemals als Spam gelten sollen. · Absender-E-Mail-Adressen, die niemals als Spam gelten sollen, basierend auf der Received-Domain. Hier geben Sie die Adresse und die QuellDomäne an. · Absender-E-Mail-Adressen, die immer als Spam gelten sollen. · Ausnahmen für Absender-E-Mail-Adressen, die immer als Spam gelten sollen. · To: oder Cc:-E-Mail-Adressen, an die wenig oder aller Spam ausgeliefert werden soll. Bei Textfeldern verwenden Sie für jede Adresse eine neue Zeile. Achten Sie außerdem auf die korrekte Eingabe Ihrer Adressen, denn das Formular führt keine Verifizierung Ihrer Eingaben durch – auch nicht bei sinnvollen Zeichenfolgen. Um Daten beispielsweise aus einem E-Mail-Client oder einem anderen Filtersystem einfacher nutzen zu können, finden Sie am Fuße des Formulars eine Importfunktion, die den Import von E-Mail-Adressen aus einer Datei im CVS-Format erlaubt. Bestimmen Sie einfach die Datei und klicken Sie anschließend auf Importiere jetzt. www.brain-media.de Spam-Klassifizierung 349 27.2 Spam-Klassifizierung SpamAssassin führt eine Vielzahl von Tests mit den Mails durch und untersucht die Nachrichten auf bekannte Kriterien. Hierbei werden auffällige Strukturen, typische Wortkombinationen aber auch externe Datenbanken mit einbezogen. Das Ergebnis der SpamAssassin-Prüfung ist eine Kennzahl. Diese kann positiv oder negativ sein. Je höher sie ist, umso wahrscheinlicher handelt es sich bei dieser Nachricht um Werbemüll. Typische Werte liegen zwischen -10,0 und 2,0 für reguläre E-Mails. Bei Nachrichten mit einer Wertung von über 5,0 handelt es sich meist um Spam. Hier passen Sie die Klassifikation von Spam an. Im Klassifizierungsformular können Sie beispielsweise den Standardwert 5 nach oben bzw. unten anpassen, ab dem Mails als Spam behandelt werden. Entsprechende Anpassungen sind für den Whitelist-Faktor und weitere Einstellungen möglich. In der Regel müssen Sie an diesen Vorgaben keine Anpassungen vornehmen, denn sie sind so gesetzt, dass sie typischen Anforderungen genügen. Nützlich sind sicherlich die beiden letzten Auswahlmenüs der Seite, über die Sie die Sprachen und Zeichensätze bestimmen können, die nicht als Spam identifiziert werden. Webmin kompakt 350 SpamAssassin-Administration 27.3 E-Mail-Modifikationen Zuvor wurde erwähnt, dass SpamAssassin verschiedene Modifikationen an EMails vornehmen kann, beispielsweise die Erweiterung des Headers. Auf diesem Formular bestimmen Sie, welche Änderungen SpamAssassin an E-Mail-Headern und Testkörpern aller E-Mails vornimmt. Sie bestimmen auch die Änderungen, die der Filter vornimmt, damit eine E-Mail als Spam klassifiziert werden kann. Die Konfiguration der E-Mail-Modifikation. In den Standardeinstellungen erweitert SpamAssassin als Werbemüll erkannte EMails um den Zusatz Junk bzw. Spam. Auch hier gilt: Änderungen sind meist nicht erforderlich. Über das Feld Additional headers to add können Sie beispielsweise Spam-Mails um ein Spam-Header-Feld erweitern und einen beliebigen Text einfügen. Das Formular zur E-Mail-Modifikation erlaubt außerdem das Anhängen eines Berichts, falls eine Nachricht den Schwellenwert überschritten hat. Verwenden Sie dazu das Eingabefeld im unteren Formularbereich. 27.4 Verschiedene Benutzeroptionen Wenn Sie dem Link Verschiedene Benutzeroptionen folgen, gelangen Sie zu den Einstellungen der externen Spam-Identifizierungstools/-dienste Razor, DCC und www.brain-media.de Verschiedene Benutzeroptionen 351 Pyzor, auf die der Filter bei seiner Analyse zurückgreift. Sie können außerdem mitteilen, ob er DNS-Lookups machen soll oder nicht. Die Benutzeroptionen dienen in erster Linie der Integration von Drittwerkzeugen. Zunächst können Sie bestimmen, ob SpamAssassin DNS-Lookups durchführen darf. In der Regel ist das nicht zwingend erforderlich, auch weil es den Filter verlangsamt. 27.4.1 Razor Dann bestimmen Sie die Zeitspanne (in Sekunden), die Razor (http://razor.sourceforge.net) auf Ergebnisse der Spam-Analyse warten soll. Zu Webmin kompakt 352 SpamAssassin-Administration Razor vielleicht einige Hintergrundinformationen. Razor heißt korrekt eigentlich Vipuls Razor. Dabei handelt es sich um ein Prüfsummen-basiertes, verteiltes EMail-Spam-Erkennungs- und -Filter-Netzwerk. Razor basiert auf einem verteilten Spam-Katalog, der durch Rückmeldungen der Benutzer kontinuierlich aktualisiert wird. Die Erkennung erfolgt über statistische und zufällige Signaturen. Die Benutzerrückmeldungen werden anhand eines rückgekoppelten Bewertungssystems gewichtet: Benutzer erhalten eine Reputation, die die Zuverlässigkeit ihrer Rückmeldungen bewertet. Die Reputation wird anhand von (übereinstimmenden) Rückmeldungen angepasst. Razor kann auch von EMail-Clients verwendet werden, wird aber insbesondere von SpamAssassin genutzt. Der Standardwert von 10 Sekunden für das Warten auf Razor ist in der Regel praxistauglich. 27.4.2 DCC-Einstellungen Es folgen verschiedene DCC-Einstellungen. Bei DCC (Distributed Checksum Clearinghouse) handelt es sich nicht um ein Verfahren, das nicht nur Spam, sondern allgemein massenhaft versandte E-Mails erkennt. In einem DCC-Verbund ermittelt die Anti-Spam-Software zu jeder eingehenden E-Mail eine spezielle Prüfsumme und sendet diese an einen Server (Clearinghouse). Dieser antwortet mit der Angabe, wie oft diese Mail-Prüfsumme bereits registriert wurde und erhöht gleichzeitig den entsprechenden Zähler. DCC-Server tauschen wiederum untereinander entsprechend den Vorgaben ihrer Betreiber Daten über Bulk-Mails aus. Der anfragende DCC-Client (in unserem Fall SpamAssassin) erhält als Antwort ein verlässliches Maß für die Zahl der teilnehmenden Mail-Server, bei denen dieselbe Nachricht eingegangen ist. Eine E-Mail mit einem hohen bulk count ist entweder Spam oder eine Nachricht aus einer populären Mailing-Liste. Für Mailinglisten-Beiträge gibt es eine Freigabeliste (White List), um ihre Nachrichten zu identifizieren. Für weitere Informationen zu DCC sei auf die Website von Rhyolite Software (http://www.rhyolite.com/anti-spam/dcc/) verwiesen. Im Rahmen eines Webmin-Beitrags können die DCC-spezifischen Einstellungen nicht ausreichend behandelt werden. Behalten Sie daher die Standardeinstellungen bei bzw. prüfen Sie anhand der DCC-Dokumentation, ob andere Einstellungen mehr Schutz versprechen. www.brain-media.de Zusätzliche Tests einführen 27.4.3 353 Pyzor Die Einstellungen für Pyzor sind denen von DCC sehr ähnlich. Auch hier können Sie den Pfad, die Prüfsummenzahl und die Dauer, die das System auf Ergebnisse wartet, anpassen. 27.5 Zusätzliche Tests einführen Eine Besonderheit der SpamAssassin-Funktion ist sicherlich, dass Sie selbst eigene Tests einführen können. Dazu folgen Sie dem Verweis E-Mail-Header- und Textkörpertests. Diese Tests können auf Inhalte des E-Mail-Headers, des Textkörpers, der URLs, die im Textkörper gefunden werden, angewendet werden oder vorhandene Tests kombinieren. Sie wollen eigene Tests einführen oder bestehende gezielt kombinieren? Kein Problem mit der Header- und Textkörpertestfunktion. Die Testfunktion bietet Ihnen einen einfachen und einen erweiterten Modus. Standardmäßig wird Ihnen der einfache Testmodus präsentiert, der die Einführung von drei Tests vorsieht. Um in den erweiterten Modus zu schalten, klicken Sie auf Switch to advanced mode. Webmin kompakt SpamAssassin-Administration 354 Im Eingabefeld Testname sollten Sie eine aussagekräftige Bezeichnung hinterlegen. Um einen E-Mail-Header-Test einzuführen, geben Sie nach der Testbezeichnung den Header an und wählen aus dem Prüfe-ob-Auswahlmenü eine der vier folgenden Operatoren aus: · ist ähnlich · ist nicht ähnlich · Existiert · Auswerten Im Feld Regulärer Ausdruck können Sie einen solchen verwenden. Auch die Vorgabe eines Standardwerts ist möglich. Die Handhabung der weiteren Tests ist ähnlich. Klicken Sie auf Speichern, um Ihren Test zu sichern. Verschiedene privilegierte Optionen. 27.6 Weitere Optionen Schließlich können Sie über das Formular Verschiedene privilegierte Optionen einige globale Systemanpassungen vornehmen, beispielsweise den Pfad zur Whitelist, den zur Timing-Logdatei und den zur Razor-Konfigurationsdatei. Meist sind auch hier keine Änderungen erforderlich. www.brain-media.de Modulkonfiguration 355 27.7 Modulkonfiguration Auch für das SpamAssassin-Modul steht Ihnen eine Modulkonfiguration zur Verfügung. Die Konfigurationseinstellungen wie den Pfad zur SpamAssassinKonfigurationsdatei, dem Pfad zum Filter, den zur Procmail-Konfigurationsdatei bezieht das Modul aus der Systemeinstellung. Die Einstellungen der SpamAssassin-Modulkonfiguration. Webmin kompakt 356 SpamAssassin-Administration www.brain-media.de 357 28 Administration des Squid-Proxy-Servers Der am häufigsten eingesetzte Proxy-Server der Linux-Gemeinde ist zweifelsohne Squid (http://www.squid.org). Der Server ist für seine gute Skalierbarkeit bekannt. Squid unterstützt die Netzwerkprotokolle HTTP/HTTPS, FTP über HTTP und Gopher. Er eignet sich sowohl für sehr kleine Netze mit 5 bis 50 Benutzer, als auch für sehr große Proxy-Server-Verbände mit mehreren hunderttausend Benutzern. Die Übersichtsseite des Squid-Proxy-Servers. Squid hat sich ebenfalls als transparenter Proxy bei ISPs bewährt. In dieser Funktion werden alle Anfragen von Kunden über den Proxy geleitet, was zur spürbaren Webmin kompakt 358 Administration des Squid-Proxy-Servers Beschleunigung der Datenübertragung sowie zur Reduktion von Bandbreite des Providers führt. In der Praxis wird Squid häufig auch als Reverse-Proxy-Server zum Schutz und zur Beschleunigung von Webservern eingesetzt. Seit Version 2.6 läuft Squid auch als HTTPS-Proxy. Damit wird die SSL-Verschlüsselung vom Webserver auf den Proxy verlagert. Mithilfe einer zusätzlichen Redirector-Software kann Squid auch Filterfunktionen übernehmen. So können dann bestimmte Seiten oder Seiteninhalte ausgeblendet und Ersatzseiten oder Ersatzgrafiken angezeigt werden. Ein typischer Einsatzbereich hierfür ist das Filtern von Werbeinhalten oder aber zur Zensur. Für die Redirector-Funktionalität wird das SquidGuard verwendet, das mit Squid ausgeliefert wird. Die weiteren Vorzüge von Proxy-Servern sind hinlänglich bekannt. Sie eignen sich hervorragend, um mehr oder minder große lokale Netzwerke an das Internet anzubinden. Dabei werden die lokalen Clients quasi hinter dem Proxy-Server versteckt. Auch der Squid-Proxy präsentiert Ihnen beim ersten Zugriff ebenfalls eine Fehlermeldung: Ihr Squid-Cache-Verzeichnis /var/cache/squid wurde noch nicht initialisiert. Dies muss erledigt werden, bevor Squid gestartet werden kann. Das Problem ist schnell gelöst: Unterhalb der Fehlermeldung finden Sie den Button Initialisiere Cache. Bestimmen Sie außerdem den Benutzer, in der Regel heißt er squid. Nach der erfolgreichen Initialisierung sollte die Fehlermeldung verschwunden sein und Sie können über die Schaltfläche Start Squid den Server hochfahren. Wie Sie obiger Abbildung entnehmen können, verfügt das Squid-Modul über vierzehn Moduld, über die Sie das Verhalten des Proxy-Servers steuern. Außerdem finden Sie am Fuße des Proxy-Servers die Schaltfläche zum Starten des Servers. Ist er bereits gestartet, können Sie ihn auch anhalten oder Änderungen mit einem Klick auf Apply Configuration wirksam machen (ein Neustart ist also nicht erforderlich). 28.1 Anschlüsse und Netzwerk Standardmäßig hört Squid auf den Port 3128/TCP. Da dies nicht unbedingt der gängigste Port ist, sollten Sie auf dem Formular Anschlüsse und Netzwerk eventuell www.brain-media.de Anschlüsse und Netzwerk 359 die Port-Einstellungen (und weitere) anpassen. Gängige Ports für einen ProxyServer sind beispielsweise 80 oder 8080. Um die Einstellungen zu ändern, geben Sie einfach in das Eingabefeld Proxy-Adressen und -Anschlüsse den gewünschten Wert ein. Passen Sie auch den SSL-Port an. Eine weitere wichtige Einstellung: Unter Host-Name/ IP-Adresse sollten Sie gegebenenfalls die Option All in eine Spezifische ändern. Bei All nimmt Ihr System auf allen verfügbaren Schnittstellen Verbindungen entgegen. Entsprechend sollten Sie den SSL-Port anpassen. Das Formular Anschlüsse und Netzwerk. Squid nutzt beispielsweise das ICP-Protokoll, um mit anderen Proxy-Servern in einem Cluster zu kommunizieren. Passen Sie auch hier gegebenenfalls den Anschluss an. Da Squid auch alle eingehenden UDP-Anfragen auf jedem beliebigen Interface annimmt, sollten Sie prüfen, ob eine Beschränkung auf eine bestimmte Schnittstelle sinnvoll ist. Mit einem Klick auf Speichern übernehmen Sie die Änderungen. Damit Sie wirksam werden, müssen Sie die oben erwähnte Apply-Configuration-Schaltfläche betätigen. Webmin kompakt 360 Administration des Squid-Proxy-Servers 28.2 Andere Caches Eine der wichtigsten Funktionen eines Proxy-Servers ist das Zwischenspeichern von Inhalten, um diese für die angeschlossenen Clients verfügbar zu machen. Das schont bekanntlich die Bandbreiten und sorgt in der Regel für eine deutlich höhere Performance aufseiten des Clients. Squid verwendet standardmäßig ein Cache-Verzeichnis (z. B. /var/squid/cache), in dem die Daten zwischengespeichert werden. Wenn Ihr System über ausreichend Ressourcen und mehrere Festplatten verfügt, macht es Sinn, weitere Caches zu erstellen. Das führt meist ebenfalls zu einem spürbaren Performancegewinn. Um einen neuen Cache hinzuzufügen, folgen Sie dem Verweis Andere Caches. Auf dem zugehörigen Dialog präsentiert Ihnen das Modul einige grundlegende Cache-Einstellungen, die für die neuen Caches gelten. Um einen neuen Cache hinzuzufügen, klicken Sie auf Einen anderen Cache hinzufügen. Das Hinzufügen eines neuen Caches. www.brain-media.de Speichernutzung 361 Geben Sie auf dem Formular Cache-Host erstellen zumindest die IP-Adresse bzw. den Hostnamen und den Port an. Außerdem sollten Sie bestimmen, um welchen Cache-Typ es sich handelt. Sie haben die Wahl zwischen folgenden Typen: · übergeordneter · untergeordneter · multicast Zwingend erforderlich ist außerdem die Angabe des ICP-Anschlusses, damit eine Kommunikation zwischen den Proxys möglich ist. Mit der Typauswahl können Sie eine hierarchische Cache-Struktur aufbauen. Ist für den Zugriff auf den Proxy eine Anmeldung erforderlich, so bestimmen Sie den Benutzer und das Kennwort. Für die allgemeinen Cache-Einstellungen verwenden Sie den gleichnamigen Link auf der Squid-Übersicht. 28.3 Speichernutzung Abhängig vom jeweiligen Einsatzbereich benötigt Ihr Proxy-Server mehr oder minder weitreichende Arbeits- und Festplattenspeicherkapazitäten. Es versteht sich von selbst, dass bei kleinen Netzwerken deutlich weniger Ressourcen benötigt werden, als beim Einsatz bei einem Internet Provider. Um den Server optimal an die jeweiligen Erfordernisse anpassen zu können, stellt Ihnen das Squid-Modul die Speichernutzungsfunktionen zur Verfügung. Die Einstellungen für die Speichernutzung. Webmin kompakt Administration des Squid-Proxy-Servers 362 Die Einstellungen im Einzelnen: · Speichernutzungsgrenzwert: Das Limit für die Speicherbelegung ist standardmäßig 8 MB. Dieser Wert begrenzt nicht die maximale Prozessgröße. Sie bestimmen hiermit den verfügbaren Speicher für folgende Objekte: o In-Transit-Objekte (Objekte, die gerade zwischen dem Proxy und einem Client übermittelt werden) o Hot Objects (die am häufigsten genutzten Seiten werden im Arbeitsspeicher gehalten) o Negative-Cached-Objekte (fehlgeschlagene Anfragen werden für eine bestimmte Zeit gecacht) Die Daten werden in Objekten zu je 4 KB-Blöcken gespeichert. Dieser Wert hat sich in der Vergangenheit als optimal erwiesen. Prinzipiell besitzen In-Transit-Objekte die höchste Priorität. Wird zusätzlicher Speicher benötigt, wird der Speicher für negative gechachte und Hot-Objekte freigegeben. · FQDN-Cache-Größe. Der Standardwert ist 1024. Hier bestimmen Sie die maximale Anzahl an Fully-Qualified-Domain-Name-Cache-Einträgen. · Oberer Schwellenwert für Festplatte: Hiermit bestimmen Sie die oberen Schwellenwerte für die Speicherbelegung. Der Standardwert ist 95 Prozent. Wird er erreicht, wird Platz geschaffen durch das Entfernen von Objekten mit einer niedrigeren Priorität. · Unterer Schwellenwert für Festplatte: Hier bestimmen Sie den unteren Schwellenwert. · Maximale Größe zwischengespeicherter Objekte: Bestimmt die maximal zulässige Größe von Cache-Objekten. Sie beträgt standardmäßig 4096 KB. Objekte, die diese Größe überschreiten, werden nie zwischengespeichert. · IP-Adressen-Cache-Größe: Bestimmt die maximale Anzahl an gespeicherten IP-Adressen. Der Standard ist 1024. · Oberer Schwellenwert für IP-Cache: Bestimmt den maximalen Wert an IP-Cache-Einträgen. Der Standard ist auch hier 95 Prozent. · Unterer Schwellenwert für IP-Cache: Bestimmt entsprechend den unteren Wert. Standard: 90 Prozent. www.brain-media.de Protokollierung · 363 Disk bzw. Memory replacement policy: Hier bestimmen Sie, nach welcher Policy die Festplatten bzw. Speicher bereinigt werden. Die Konfiguration der Protokollfunktionen. 28.4 Protokollierung Squid stellt Ihnen verschiedene Protokollierungsfunktionen zur Verfügung, die Ihnen immer dann, wenn etwas nicht rund zu laufen scheint, wichtige Informationen für die Erkennung und Behebung eines Problems liefern. Die Protokollierungsfunktion erlaubt Ihnen folgende Anpassungen: · Zugriffskontrolldatei: Der Zugriff auf Squid wird mit System-ACLFunktionen realisiert. In der Regel finden Sie die zugehörige Protokolldatei im Verzeichnis /var. In ihr werden die Client-Request- und Aktionen aufgezeichnet. Dabei wird für jeden HTTP- und ICP-Request ein Eintrag erzeugt. · Debug-Protokolldatei: Auch diese Einstellung ist systemabhängig. Hier finden Sie allgemeine Informationen über das Cache-Verhalten. Webmin kompakt Administration des Squid-Proxy-Servers 364 · Speicherprotokolldatei: Auch hier ist der Speicherort systemabhängig. In ihr werden die Aktionen des Speichermanagers aufgezeichnet. Dort finden Sie beispielsweise Informationen darüber, welche Objekte und wie lange sie gespeichert wurden. · Cache-Metadata-Datei: Der Standard ist swap.log in jedem CacheVerzeichnis. Sie speichert Metadateien der Objekte, die von dem Proxy zwischengespeichert werden. · Benutze HTTPD-Protokollformat: Standardmäßig wird dieses Format nicht verwendet, das von httpd-Programmen genutzt werden könnte. Vielmehr verwendet Squid ein natives Log-Format, das von den meisten Logfile-Analyzern unterstützt wird. · MIME Header protokollieren: Standardmäßig wird der MIME-Header der HTTP-Transaktionen nicht protokolliert. · Benutzeragentprotokolldatei: Diese Option ist standardmäßig deaktiviert. Wenn Sie den Schalter aktivieren, erfolgt die Speicherung des HTTP-Headers User-Agent von Client-Anfragen in einer eigenen Protokolldatei (useragent.log). · PID-Datei: Auch diese Einstellung ist systemabhängig. In die Datei wird die Prozess-ID geschrieben. · Führe RFC931-Ident-Lookups für ACLs aus: Hier können Sie verschiedene Kriterien für die Suche des Benutzers im ACL-System definieren. · RFC931-Ident-Timeout: Bestimmt die maximale Wartezeit auf eine Antwort auf einen IDENT-Request. Der Standard ist 30 Sekunden. · Vollen Hostnamen protokollieren: Standardmäßig wird auch der Hostname nicht protokolliert. · Protokollierung der Netzmaske: Hier bestimmen Sie, ob auch die Netzmaske protokolliert werden soll. · Debug-Einstellungen: Mit dieser Option bestimmen Sie den Umfang der Protokollierung. Dieser lässt sich über den Konfigurationsparameter debug_options selektiv für die einzelnen Squid-Programmkomponenten einstellen. Bei Problemen in einzelnen Programmkomponenten (z. B. Authentisierung) lässt sich der Debug-Level dieser Komponente erhöhen und durch die Auswertung der Protokolldatei cache.log lässt sich das Problem eingrenzen. Die Standardkonfiguration ist ALL,1. www.brain-media.de Cache-Einstellungen 365 Die Protokolloptionen werden nach dem Muster Abschnitt, Level definiert. Das Schlüsselwort ALL bestimmt beispielsweise das Debugging für alle Abschnitte. · MIME-Header-Tabelle: Hier können Sie den Pfad zur MIME-Tabelle von Squid anpassen. In der Regel ist hier keine Änderung erforderlich. 28.5 Cache-Einstellungen Sehr umfangreich fallen die Cache-Einstellungen aus, die sich hinter dem gleichnamigen Verweis finden. Sie können diese Einstellungen beispielsweise nutzen, um zu verhindern, dass Squid mächtige Dateien zwischenspeichert und um verschiedene Timeout-Werte zu optimieren. Ein Blick auf die umfangreichen Cache-Einstellungen. Webmin kompakt 366 Administration des Squid-Proxy-Servers Zunächst bestimmen Sie den Pfad zu Ihrem Cache-Verzeichnis. Dieser ist standardmäßig /var/cache/squid/. Sie können es aber natürlich auch in jedes beliebige andere Verzeichnis bzw. Laufwerk legen. Neben dem Typ können Sie auch die Größe anpassen. Standardmäßig ist das Cache-Verzeichnis 100 MB groß. Mit den beiden Einstellungen Verz. der ersten Ebene und Verz. der zweiten Ebene bestimmen Sie die Anzahl der Unterverzeichnisse, die in dem Cache-Verzeichnis erstellt und in die zwischenzuspeichernden Daten abgelegt werden. Der Standardwert für die erste Ebene ist 16, der für die zweite 256. Schauen wir uns weitere wichtige Einstellungen an. Es folgt die Definition der durchschnittlichen Objektgröße. Sie beträgt standardmäßig 13 KB – ein Wert, der sich in der Vergangenheit bewährt hat. Rechts daneben finden Sie die Anpassungsmöglichkeit für die Anpassung der Objekte pro Verzeichnis. Der Standardwert ist hier 50. Wenn Sie die Cache-Größe nach oben hin anpassen, kann es sinnvoll sein, auch diesen Wert zu erhöhen. Die weiteren Cache-Einstellungen sind für den „normalen“ Betrieb optimiert und müssen daher kaum verändert werden. Wenn Sie wissen wollen, welche Änderungen gegebenenfalls Sinn machen, sollten Sie spezielle Squid-Literatur zurate ziehen. Die Einbindung von Hilfsprogrammen. www.brain-media.de Hilfsprogramme 367 28.6 Hilfsprogramme Wenn Sie dem Verweis Hilfsprogramme folgen, landen Sie auf einem einfachen Formular, das die Einbindung von verschiedenen Drittprogrammen erlaubt. Interessant ist hier sicherlich die Möglichkeit, das DNS-Hilfsprogramm anzupassen. Standardmäßig ist es dnsserver. Sie können auch ein alternatives Programm für das Leeren des Caches (anstelle von inlinkd) einbinden. Standardmäßig werden außerdem maximal fünf Redirect-Programme verwendet. 28.7 Zugriffskontrolle Für die meisten Anwender sind die Zugriffskontrollfunktionen meist weit interessanter. Folgen Sie dazu dem gleichnamigen Link auf der Squid-Übersichtsseite. Dies ist die vielleicht mächtigste Funktion, die Squid zu bieten hat. Die mächstigste Zugriffskontrollfunktion des Squid-Moduls. Webmin kompakt 368 Administration des Squid-Proxy-Servers Mithilfe der Access-Controll-Funktion können Sie exakt steuern, wer welche Aktionen auf Ihrem System ausführen darf. Neben den Zugriffskontrolllisten finden Sie auf obigem Formular noch die Möglichkeit, Proxy- und ICP-Beschränkungen einzuführen. Die häufigste Verwendung der ACL-Funktion: das Blocken von unerwünschten Verbindungen, die von außerhalb des eigenen Netzwerks kommen. In der Regel dient ein Proxy-Server auch als Schutz vor Attacken von außen. Ein Problem stellt die Verwendung des CONNECT-Proxy-Requests dar, der für den Verbindungsaufbau zu jedem Port verwendet werden kann. Meist wird die ACL so konfiguriert, dass dieser Request lediglich an den Port 443 (den SSL-Port) übergeben wird. Was nun in der Praxis beim Einsatz einer ACL passiert, ist eigentlich recht einfach: Empfängt der Proxy-Server einen Request, so prüft er, ob und falls ja, welche ACL zu dem Request definiert wurde. Findet sich eine Regel, wie der Request zu behandeln ist, wird diese Regel angewendet. Dabei sind zwei Aktionen möglich: Allow und Deny, also der Zugriff wird erlaubt oder verwehrt. Squid prüft auch ICP-Requests, die von anderen Proxy-Servern stammen und kann auch für diese spezielle Aktionen zulassen und verhindern. In einer Standardinstallation kommt Squid bereits mit einem Satz an StandardACL- und Proxy-Beschränkungen daher. Aus Sicherheitsgründen werden alle Requests unterbunden. Um den Proxy-Server also nutzen zu können, müssen Sie erst einige Anpassungen vornehmen, konkret müssen Sie eigene Regeln definieren, die die gewünschten Aktionen bearbeiten. Damit konkret bestimmte Clients den Proxy-Server nutzen können, gehen Sie wie folgt vor: 1. Wählen Sie im Auswahlmenü Erstelle neue ACL den Eintrag ClientAdresse und klicken Sie dann auf den Erstellen-Button. 2. Auf dem zugehörigen Formular weisen Sie der Regel eine Bezeichnung zu, beispielsweise MeineNetzwerkClients. 3. In den beiden folgenden Eingabefeldern bestimmen Sie den Adressbereich, für den die Regel gelten soll. Die Eingabe könnte beispielsweise 192.168.1.0 und 192.168.1.100 lauten. Geben Sie auch die Netzwerkmaske an. In diesem Beispiel etwa 255.255.255.0. 4. In das Feld Fehler-URL geben Sie die Adresse ein, an die ein Client übergeben wird, wenn ein Fehler auftritt. www.brain-media.de Zugriffskontrolle 5. 369 Standardmäßig wird die neue Regel in der Squid-Konfigurationsdatei gespeichert. Wenn Sie stattdessen eine andere Datei vorziehen, geben Sie diese samt Pfad in dem Eingabefeld an. Eine neue ACL entsteht. 6. Mit einem Klick auf Speichern übernehmen Sie die neue Regel. Nach dem Speichern Ihres ersten ACL-Eintrags finden Sie diesen in der ACL-Liste. 7. Da bislang lediglich eine ACL erstellt, ihr aber noch keine Aktion zugewiesen ist, folgen Sie als Nächstes dem Verweis Füge ProxyBeschränkung hinzu. 8. Auf dem Formular Proxy-Regel erstellen wählen Sie zunächst die Aktion Gestatten aus und markieren dann in dem Auswahlfeld Übereinstimmende ACLs den oben erstellten Eintrag MeineNetzwerkClients. 9. Klicken Sie dann auf Speichern. Nach dem Speichern landet die neue Beschränkung in der Beschränkungstabelle. Die Reihenfolge der Tabelleneinträge bestimmt deren Priorität. Daher sollten Sie Ihren neuen Eintrag über den Eintrag Deny All führen, denn alle auf diesen folgenden Einträge werden unterbunden. Webmin kompakt 370 Administration des Squid-Proxy-Servers 10. Wichtig ist, dass Sie anschließend auf den Verweis Änderungen anwenden im Kopfbereich des Squid-Moduls klicken, damit Ihre neuen Einstellungen auch greifen. Die Auswahl des ACL-Typs. Wir sind beim Erstellen des ersten ACL-Eintrags dem ACL-Typ begegnet. Wie Sie voranstehender Abbildung entnehmen können, kennt Squid eine Vielzahl solcher Typen. All diese Typen sind für unterschiedliche Aufgabenbereiche geeignet und weisen im Folgeformular spezifische Felder auf. Nachstehende Tabelle fasst diese wichtigsten Typen zusammen: Typ Kurzinfo Felder Anfragemethode Für diesen Typ werden die httpKommandos GET, POST, HEAD, CONNECT, PUT und DELETE herangezogen. Das zugehörige Formular erlaubt die Aktivierung aller Kommandos. Browser-Regexp. Dieser Typ prüft den User-AgentHeader, der bei einem Request an den Proxy-Server übermittelt wird. Damit können Sie beispielsweise gezielt bestimmte Browser vom Zugriff ausschließen. Erlaubt die Angabe von regulären Ausdrücken, beispielsweise Mozilla/4. www.brain-media.de Zugriffskontrolle 371 Typ Kurzinfo Felder Client-Adresse Diesen Typ haben Sie zuvor kennengelernt. Er erlaubt es Ihnen, einen IP-Adressbereich zu definieren, der Zugriff auf den Server hat – oder auch nicht. Die Verwendung dieses Typs wurde zuvor beschrieben. Client-Hostname Führt einen Reverse-DNS-Lockup der IP-Adresse des Clients durch. Der Einsatz dieses Typs ist sinnvoll, um Clients Zugriff auf das Netzwerk zu gewähren. Liste mit Domains bzw. Hostnamen. Client-Regexp Dieser Typ entspricht weitgehend dem Vorstehenden, allerdings mit dem Unterschied, dass hier ein regulärer Ausdruck für die Auswahl der Clients verwendet wird. In diesem Eingabefeld können Sie Perltypische reguläre Ausdrücke verwenden. Aktivieren Sie außerdem die Option Ignore case?, damit bei den Abfragen nicht zwischen Groß- und Kleinschreibung unterschieden wird. Datum und Uhrzeit Dieser Typ greift bei bestimmten Daten bzw. Uhrzeiten. Der Einsatz dieses Filters macht beispielsweise dann Sinn, wenn Sie den Zugriff auf den Squid-Server auf bestimmte Wochentage beschränken wollen, beispielsweise von Montag bis Freitag. In dem zugehörigen Formular bestimmen Sie die Tage und die Stunden, für die die Regel gelten soll. Um mehrere Tage auszuwählen, halten Sie die Strg-Taste gedrückt. Geben Sie außerdem die Uhrzeit an, für die die ACL gilt. Sie können Stunden und Minuten definieren. Ethernet Address Diese ACL bezieht sich auf eine oder auch mehrere MAC-Adressen. Ihr Einsatz ist beispielsweise dann sinnvoll, wenn sich zwischen dem Client und Proxy-Server ein Router befindet. Setzt voraus, dass Sie Squid mit der Option --enable-arpacl kompiliert haben. Geben Sie in das Textfeld die MACAdressen ein. Ein Beispiel: 08:00:20:ae:fd:7e. Verwenden Sie für jede Adresse eine Zeile. Webmin kompakt 372 Administration des Squid-Proxy-Servers Das Erstellen einer Datums-/Zeit-ACL mit genauer Beschränkung auf Tage und Uhrzeit. Typ Kurzinfo Felder External Auth Regexp Dieser ACL-Typ erlaubt die Verwendung von regulären Ausdrücken für die Authentifizierung von Benutzern auf dem System. Geben Sie in das Textfeld den regulären Ausdruck ein. Aktivieren Sie am besten auch hier die Option Ignore case? External Programm Dieser Typ erlaubt Ihnen die Einbindung eines externen Programms. Geben Sie das Programm, seine Klasse und eventuell weitere Optionen an. Externe Auth. Wenn Sie diesen Typ verwenden, müssen sich Clients gegen die Benutzerliste authentifizieren. Aktivieren Sie auf dem zugehörigen Formular All users, damit sich alle Benutzer authentifizieren müssen. www.brain-media.de Zugriffskontrolle 373 Typ Kurzinfo Felder Max User IP Mit diesem Typ können Sie die maximale Anzahl an IP-Adressen pro Benutzer definieren. Bestimmen Sie den Wert. Maximale Anzahl an Verbindungen Erlaubt Ihnen die Konfiguration der maximalen Anzahl an gleichzeitigen Anfragen von Clients. Mit einem praktikablen Wert von 5 bis 10 beschränken Sie die Server-Last. Geben Sie den gewünschten Wert an. Proxy-Anschluss Mit dieser ACL können Sie den Port angeben, auf den der ProxyServer horcht. Der Einsatz ist bei Proxy-Servern sinnvoll, die mehrere Ports verwenden. Geben Sie den gewünschten Port an. Proxy-IPAdresse Dieser ACL-Typ erlaubt Ihnen die Definition einer IP-Adresse, auf der der Squid-Proxy-Server Verbindungen akzeptiert. Geben Sie die IPAdresse und die Netzmaske an. Quelle ALS Nummer Dieser Typ ist fehlerhaft lokalisiert. Es müsste AS-Nummer lauten. Mit solchen Nummern werden große Netzwerke identifiziert. Zwei Beispiele: Web.de besitzt die Nummer AS20796 und Freenet.de die Nummer AS5430. In der Regel ist dieser Typ nicht für Sie relevant. In dem zugehörigen Formular bestimmen Sie den ASZahlenwert. RFC931 User Regexp Mit den in RPC931 definierten Funktionen ist die Identifikation eines entfernten Benutzers beim Zugriff auf den Proxy-Server möglich. Der Einsatz dieses ACL-Typs ist sinnvoll, wenn Sie vertrauenswürdigen Benutzern den Zugriff erlauben wollen. Geben Sie einen regulären Ausdruck für den Benutzer an. RFC931Benutzer Entsprechend voranstehendem Typ, allerdings werden die Benutzernamen für die Authentifizierung verwendet. Geben Sie die Benutzernamen an. Reply MIMEType Dieser Typ erlaubt die Verwendung des Reply-MIME-Typs für die Authentifizierung. Geben Sie den Typ an. Webmin kompakt 374 Administration des Squid-Proxy-Servers Typ Kurzinfo Felder Request MIME Type Hier können Sie entsprechend den MIME-Typ angeben, der in einem Client-Request verwendet wird. Geben Sie den gewünschten Typ an. SNMP Community Mit diesem ACL-Typ können Sie SNMP-Agents beschränkten Zugriff auf den Squid-Proxy-Server gewähren. Das macht Sinn, um die Verfügbarkeit des Systems überwachen zu können. Geben Sie den Community-String an. URL-Anschluss Hier geben Sie den Port an. Dieser Typ ist sinnvoll einsetzbar, um Zugriffe auf nicht HTTP-Ports wie 23 oder 25 zu steuern. Geben Sie den bzw. die Ports an. Mehrere Einträge sind durch ein Leerzeichen zu trennen. URL-PfadRegexp Dieser ACL-Typ erlaubt die Steuerung auf bestimmte Pfade mithilfe von regulären Ausdrücken. Sinnvoll einsetzbar ist das beispielsweise zur Zugriffsbeschränkung auf dynamisch erzeugte Inhalte. Geben Sie den regulären Ausdruck für den Pfad an. URL-Protokoll Mit diesem Typ können Sie die Nutzung von bestimmten Protokollen unterbinden. Sie können beispielsweise den FTP-Zugriff verwehren. Bestimmen Sie das bzw. die Protokolle. URL-Regexp Mittels regulärer Ausdrücke können Sie den Zugriff auf bestimmte Pfade oder auch ganze Sites unterbinden. Geben Sie die gewünschten Ausdrücke in dem Eingabefeld an. Web-ServerRegexp Mit diesem ACL-Typ können Sie den Zugriff mithilfe von regulären Ausdrücken verhindern. Geben Sie den regulären Ausdruck an. Web-ServerAdresse Geben Sie hier den IPAdressbereich ein, für den Sie beispielsweise den Zugriff verwehren wollen. Angabe des Adressbereichs. Webserver-HostName Erlaubt die Angabe von Hostnamen, auf die der Zugriff möglich bzw. verhindert wird. Geben Sie die Hostnamen bzw. Domains an. www.brain-media.de Administrative Einstellungen 375 28.8 Administrative Einstellungen Die Squid-Konfiguration erlaubt Ihnen die Anpassung verschiedener administrativer Einstellungen. Dazu folgen Sie dem gleichnamigen Link. Die Einstellungen dieses Formulars sind weitgehend selbsterklärend. Hier legen Sie beispielsweise fest, unter welcher Benutzerkennung Squid ausgeführt wird und welcher Gruppe er angehört. Sie können außerdem die E-Mail-Adresse des Cache-Managers, den Hostnamen und die Bekanntmachung (Squid versendet automatisch BroadcastMeldungen, um andere auf sich aufmerksam zu machen) anpassen. Die administrativen Einstellungen des Proxy-Servers. 28.9 Authentifizierung Wie wir gesehen haben, ist es mithilfe der ACL-Funktionen recht einfach, den Zugriff auf den Server und die Nutzung bestimmter Dienste auf IP-Adressen zu beschränken. Sie können aber auch die Authentifizierung von Clients gegenüber dem Proxy-Server einführen. So können Sie auch Benutzern den Zugriff gewähren, die nicht über eine feste, dann freizugebende IP-Adresse verfügen. Dabei sind unterschiedliche Szenarien denkbar, beispielsweise, dass die Authentifizierung über den Browser erfolgt und der Benutzer seine Kennung und sein Passwort angibt. Squid kann für die Authentifizierung auf externe Programme zurückgreifen, wie sie beispielsweise von Webmin oder dem Betriebssystem bereitgestellt werden. Webmin kompakt 376 Administration des Squid-Proxy-Servers Die Einbindung externer Tools für die Authentifizierung gegenüber Squid. Die Einstellungen für ein externes Authentifizierungsprogramm verbergen sich hinter dem Verweis Authentication Programs. Das Formular bietet Ihnen die Authentifizierung über Webmin oder über eine benutzerdefinierte Eingabe an. Wenn Sie den Linux-Passwort-Mechanismus verwenden wollen, so geben Sie in das Eingabefeld beispielsweise /usr/etc/passwd ein. Dann haben alle dort eingetragenen Benutzer die Möglichkeit, sich Squid gegenüber zu authentifizieren. Wenn Sie sich für den Webmin-Mechanismus entscheiden, greift Squid auf Ihre WebminBenutzer zurück. Ab Squid 2.5 ist außerdem die Nutzung von NTLM und Digest möglich. Bestimmen Sie dazu die entsprechenden Tools. 28.10 Delay Pools Mit den sogenannten Delay-Pools stellt Ihnen Squid eine effektive Funktion zur Bandbreitenbegrenzung für bestimmte Clients oder URL-Teile zur Verfügung. Mit dieser Funktion können Sie das System so konfigurieren, dass für alle relevanten Aufgaben immer ausreichende Bandbreite verfügbar ist. Squid kennt drei verschiedene Arten von Delay-Pools: www.brain-media.de Delay Pools 377 1. Bei einem Pool der Klasse 1 wird die Download-Rate aller Verbindungen zusammengefasst und darf eine gewisse Bandbreite nicht überschreiten. Mit dieser Konfiguration können Sie allen Nutzern einen maximalen Rahmen zuweisen. 2. Bei einem Pool der Klasse 2 kann zum einen wieder die gesamte Bandbreite begrenzt werden und zum anderen die Bandbreite für einen mit einer ACL festgelegten Bereich oder Benutzer definiert werden. 3. Bei einem Pool der Klasse 3 kann schließlich zusätzlich zu den beiden Pools 1 und 2 noch eine Begrenzung für ein gesamtes Subnetz eingeführt werden. In der Standardkonfiguration ist eine maximale Nutzung von 50 Prozent der verfügbaren Bandbreite vorgesehen. Das Erstellen eines ersten Delay-Pools. Um einen erstes Pool zu erstellen, folgen Sie dem Link Add a new delay pool. Bestimmen Sie die Pool-Klasse und definieren Sie die Begrenzungen. Mit einem Klick auf Erstellen ist die erste Bandbreitenbeschränkung erzeugt. Webmin kompakt 378 Administration des Squid-Proxy-Servers 28.11 Header-Zugriffskontrolle Die Funktion des Verweises Header Access Control ist sehr einfacher Art. Hier können Sie die HTTP-Header beschränken, die Squid von Clients an die Server weitergibt. 28.12 Refresh-Regeln Ähnlich simpel ist die Funktion Refresh-Regeln. Hier können Sie Regeln erstellen, die die Standard-Refresh-Zeit auf Grundlage von regulären Ausdrücken überschreiben. Mit dieser Funktion können Sie beispielsweise die Cache-Zeit für bestimmte Websites oder Protokolle neu definieren – ohne dabei alle Squid-weiten Einstellungen ändern zu müssen. 28.13 Verschiedene Einstellungen Die Funktionen, die sich hinter dem Verweis Verschiedene Einstellungen verbergen, sind nichts für Einsteiger. Hier können routinierte Squid-Administratoren an verschiedenen Schrauben drehen. Sie können beispielsweise den Pfad zu einer Fehlermeldungstextdatei angeben oder verschiedene HTTP- und WCCPEinstellungen bearbeiten. Die Port-Umleitung von Squid. www.brain-media.de Port-Umleitung 379 28.14 Port-Umleitung Squid kommt häufig als transparenter Proxy zum Einsatz, der Requests von Port 80 verarbeitet. Für den Anwender ist die Verbindung über einen transparenten Proxy nicht von einer direkten Verbindung über ein Gateway zu unterscheiden. Squid kann so konfiguriert werden, dass es als transparenter Proxy zum Einsatz kommt, aber im Zusammenspiel mit einer Firewall Requests an Port 3128 übergibt. Dazu müssen Sie zunächst die Linux-Firewall aktivieren und dann im zweiten Schritt die Port-Umleitung für die Clients aktivieren. 28.15 Cache-Manager-Statistik Der Proxy-Server Squid kommt mit einem einfachen CGI-Programm cachemgr.cgi daher, das Ihnen statistische Informationen zu Ihren Cache-Daten liefert. Um auf die Daten zuzugreifen, folgen Sie auf der Squid-Index-Seite dem Verweis CacheManager-Statistiken, wählen den Cache-Server aus (meist localhost) und loggen sich ein. Bei einer neuen Installation können Sie die Felder Manager und Passwort meist leer lassen. Der Logfile-Analyzer Calamaris ist bestens für die Auswertung von Squid-Dateien geeignet. Webmin kompakt 380 Administration des Squid-Proxy-Servers Squid-Protokolldateien auswerten Ihrer Aufmerksamkeit ist sicherlich nicht entgangen, dass über die Webmin-ServerÜbersicht auch SARG (Squid Analysis Report Generator) verfügbar ist. Dabei handelt es sich um einen Logfile-Analyzer, der die Protokolldateien des Proxy-Servers analysiert und aufbereitet. Diese Daten helfen Ihnen, den Zustand des ProxyServers zu erkennen – und gegebenenfalls Maßnahmen für die Optimierung der Konfiguration zu ergreifen. Noch einen Tick besser ist Calamaris (http://calamaris.cord.de). Calamaris ist wie SARG ein Analyseprogramm für Logdateien, das auf die Analyse von ProxyServern spezialisiert ist. 28.16 Cache leeren und neue erstellen Über das letzte Icon auf der Squid-Übersicht können Sie schließlich den Zwischenspeicher leeren und einen neuen Cache erstellen. Dazu folgen Sie dem Link und klicken auf die gleichnamige Schaltfläche. Das Webmin-Modul zeigt das zugehörige Squid-Kommando und mögliche Fehlermeldungen an. 28.17 Modulkonfiguration Auch das Squid-Modul besitzt eine eigene Modulkonfiguration, über die Sie konfigurierbare und Systemeinstellungen einsehen und gegebenenfalls anpassen können. www.brain-media.de Modulkonfiguration 381 Die Modulkonfiguration für das Squid-Modul. Auch bei der Squid-Modulkonfiguration finden Sie zwei Bereiche: zunächst die konfigurierbaren und dann die Systemkonfigurationen. Die anpassbaren Einstellungen sind insbesondere dann interessant, wenn Sie Calamaris für die Auswertung der Protokolldateien verwenden. Bestimmen Sie zunächst, ob alle Calamaris-Berichte erstellt werden und welches Format (HTML oder Text) die Berichte besitzen sollen. Außerdem können Sie weitere Kommandozeilenparameter an Calamaris übergeben. Alle weiteren Einstellungen können Sie in der Regel guten Gewissens beibehalten. Webmin kompakt 382 Administration des Squid-Proxy-Servers www.brain-media.de 383 29 Netzwerkeinstellungen Das Hauptaugenmerk von Webmin liegt in der Administration der unterschiedlichsten Server. Wie Sie gesehen haben, können Sie nahezu alle wichtigen Server in der Standardkonfiguration verwalten. Doch Webmin taugt für mehr. Auch zur Bearbeitung der Netzwerkeinstellungen. Diesen wollen wir uns in diesem Kapitel widmen. Um es vorwegzunehmen: Auch sie sehr umfangreich. Wollte man sie detailliert beschreiben, so könnte man hierfür ein eigenes Buch schreiben. Die Funktionen der Netzwerkkategorie. Das vorliegende Kapitel beschränkt sich auf die wesentlichen Funktionen. Wie Sie nachstehender Abbildung entnehmen können, sind über die Netzwerkkategorie siebzehn Bereiche konfigurierbar, angefangen beim ADSL-Client über die Firewall bis hin zum SSL-Tunnel. Webmin kompakt Netzwerkeinstellungen 384 Wenn Ihr Linux-System über eine DSL-Verbindung mit dem Internet verfügt, so können Sie über den Verweis ADSL-Client dessen Einstellungen bearbeiten. 29.1 Bandbreitenmessung Mit dem Modul Bandbreitenmessung können Sie einen einfachen Bericht erzeugen, der Ihnen Auskunft darüber gibt, welche Datenmengen mit Ihrer Umgebung übertragen werden. Über das zugehörige Formular bestimmen Sie den Zeitraum, für den die Daten angezeigt werden sollen. Um den Bericht zu erzeugen, klicken Sie auf Generiere Report. Die Berichtfunktion greift auf die Funktionen auf IPTables zurück. Die Bandbreitenauswertung präsentiert Ihnen den übertragenen Traffic. Die hier ausgegebenen Informationen sind nützliche Informationen, um sich ein Bild von dem bisherigen Datenauskommen machen zu können. Über das Auswahlmenü Zeige Traffic können Sie bestimmen, für welche Komponenten die Auswertung erstellt wird. Sie haben die Wahl zwischen vier Optionen: · Host · Protokoll · Interner Port · Externer Port www.brain-media.de Erweiterte Internetdienste 385 In der Modulkonfiguration können Sie außerdem anpassen, welche Firewalldaten für die Auswertung verwendet werden. 29.2 Erweiterte Internetdienste Zur Steuerung und Überwachung von Netzwerkverbindungen kam bei LinuxSystemen inetd zum Einsatz. Wird der Daemon beispielsweise mit einer Anfrage an Port x angesprochen, wird diese an das Programm tcpd weitergeleitet. tcpd entscheidet auf Basis der Regeln in den Dateien hosts.allow und hosts.deny, ob die Anfrage zulässig ist. Ist dies der Fall, so wird der entsprechende Serverprozess, zum Beispiel ftpd, gestartet und die Anfrage bearbeitet. inetd ist in der Vergangenheit immer wieder durch Schwachstellen und Unzulänglichkeiten ins Gerede gekommen und wird inzwischen von der erweiterten Variante xinetd abgelöst. Diese bietet weitreichendere Sicherheitsfunktionen, beispielsweise · die Zugriffssteuerung von TCP, UDP und RPC-Diensten, · die Zugriffsbeschränkung auf bestimmte Zeiten, · die Protokollierung von zulässigen, als auch von unzulässigen Anfragen, und · einen effizienten Schutz gegen Denial-of-Service-Angriffe. Seine Konfiguration erfolgt über die /etc/xinetd.conf – oder eben über Webmin. Wenn Sie dem Verweis Erweiterte Internetdienste (xinetd) folgen, präsentiert Ihnen das Modul eine Liste mit Services, die über das System prinzipiell verfügbar sind. In der Dienstübersicht werden Ihnen neben der Dienstbezeichnung folgende Informationen angezeigt: Typ, Port/Nummer, Protokoll, Benutzer, Serverprogramm und Status (ein-/ausgeschaltet). Die Einstellungen eines Dienstes öffnen Sie, indem Sie auf die jeweilige Dienstbezeichnung klicken. Der Dialog zum Bearbeiten eines Internetdienstes präsentiert Ihnen drei Bereiche: Dienst-Netzwerkoptionen, Dienst-Programmoptionen und Dienst-Zugriffskontrolle. In den beiden erstgenannten Bereichen müssen Sie in der Regel keine Änderungen vornehmen. Weitaus interessanter sind die Funktionen der Zugriffskontrolle. Wenn Sie den Dienst nur für bestimmte Hosts freigeben wollen, aktivieren Sie unter Erlaube Zugriff von die Option Nur aufgelistete Hosts und geben in das darunterliegende Feld die IP-Adressen der Hosts ein. Entsprechend gehen Sie vor, Webmin kompakt 386 Netzwerkeinstellungen wenn Sie bestimmte Systeme explizit aussperren wollen. Außerdem können Sie die Zugriffszeiten bestimmen. Diese müssen das Format Std.Std : MinMin - Std.Std : MinMin besitzen. Das Formular zum Bearbeiten eines Internetdienstes. Über die Dienstliste können Sie auch eigene Einträge erzeugen. Klicken Sie dazu auf Erzeuge einen neuen Internetdienst und füllen Sie das Dienstformular mit der Dienstbezeichnung, der Adresse, dem Port etc. aus. Das Interessante an dieser Funktion: Am Fuße der Dienstliste finden Sie den Button Standardoptionen, über den Sie Ihre Vorgaben für alle Dienste definieren können. So können Sie beispielsweise bestimmten Hosts immer den Zugang verwehren. www.brain-media.de VPN-Konfiguration 387 In der xinetd-Modulkonfiguration finden Sie die Pfade zu den relevanten Dateien. Sie können über die Netzwerkkategorie übrigens auch den xinetd-Vorläufer inetd konfigurieren. Verzichten Sie auf dessen Einsatz und verwenden Sie besser die erweiterte Variante. 29.3 VPN-Konfiguration Über die Netzwerkkonfiguration lässt sich auch die OpenSwan-basierte VPNUmgebung konfigurieren. Die VPN-Konfiguration erlaubt das Erstellen neuer und das Bearbeiten bestehender Tunnel sowie das Bearbeiten der globalen Einstellungen und Richtlinien. Mit einer VPN-Lösung wie OpenSwan wird über das ansich unsichere Internet ein sicherer Verbindungskanal erzeugt, der von außen kaum zu knacken ist. Die umfangreichen VPN-Funktionen. Je nach Systemkonfiguration kommt Ihre VPN-Installation bereits mit verschiedenen vordefinierten Verbindungen daher. Wie Sie es von verschiedenen anderen Server-Modulen kennen, können Sie auch hier Vorgaben für alle Verbindungen Webmin kompakt Netzwerkeinstellungen 388 definieren. Folgen Sie dazu dem Verweis Defaults for all connections. Um eine neue Verbindung zu definieren, klicken Sie auf Add a new IPsec VPN connection. Im Bereich Options and policies verwalten Sie insbesondere die öffentlichen und geheimen Schlüssel sowie verschiedene Netzwerk-spezifische Einstellungen. Deren Nutzung ist nur mit soliden OpenSwan-Kenntnissen möglich. Sie sollten sich daher zunächst eingehend mit der Lösung auseinandersetzen. 29.4 Kerberos-Konfiguration Nichts für schwache Nerven ist die Handhabung von Kerberos. Das ist ein verteilter Authentifizierungsdienst, der für offene und unsichere Computernetze entwickelt wurde. Der Dienst bietet Ihnen sichere und einheitliche Authentifizierung in einem ungesicherten TCP/IP-Netzwerk auf sicheren Hostrechnern. Die Authentifizierung übernimmt eine vertrauenswürdige dritte Partei. Diese dritte Partei ist ein besonders geschützter Kerberos-5-Netzwerkdienst. Über die Kerberos-Konfiguration können Sie insbesondere die Einstellungen für die Protokolldateien und verschiedene allgemeine Einstellungen anpassen. Auch hier gilt: Wenn Sie sich für Kerberos interessieren, sollten Sie sich entsprechende Literatur zulegen. Das ist im Rahmen eines Buches wie dem vorliegenden leider nicht möglich. Dazu ist die Materie zu komplex. 29.5 Linux-Firewall Wenn Sie Ihr Webmin-System direkt mit dem Internet verbinden und dieses beispielsweise als Gateway für das lokale Netzwerk dient, so sollten Sie sich unbedingt mit der Firewall-Funktion auseinandersetzen, denn sie hilft, Angreifer fernzuhalten. Seit Jahren verfügen Linux-Distributionen über mehrere Firewall-Lösungen. Aktuell findet man im Kernel die IPTables-Implementierung, die als ausgesprochen robust und solide gilt. In der IPTables-Terminologie spielen verschiedene Begriffe eine wichtige Rolle. Die Firewall besteht aus drei Objekten: · Tabellen (tables) · Ketten (chains) · Regeln (rules) www.brain-media.de Linux-Firewall 389 Die IPTables-Architektur gruppiert die Regeln für die Verarbeitung von NetzwerkPaketen in drei Tabellen: · filter für Paketfilter · nat für Network Address Translation · mangle für Paketmanipulationen Diese Tabellen enthalten Ketten von Verarbeitungsregeln, die aus Mustern bestehen, die wiederum bestimmen, auf welche Pakete die Regel angewendet wird und Ziele, die festlegen, was mit den Paketen passiert. Chains bestimmen also, wo geprüft wird, Pattern, welche Pakete betroffen sind und Targets, was mit diesen geschehen soll. Wichtig für das Verständnis des Systems: Die Filterregeln werden sequenziell bis zum ersten Treffer abgearbeitet. Die Konfiguration der Linux-Firewall. Das Linux-Firewall-Modul erlaubt Ihnen die Verwaltung von Regeln, Tabellen und Ketten. Die Handhabung ist an sich recht einfach. Die Konfiguration kommt mit Webmin kompakt Netzwerkeinstellungen 390 drei vordefinierten Ketten daher, die sich um den eingehenden, den ausgehenden und den weitergeleiteten Traffic kümmern. Um eine neue Regel für eine dieser Ketten zu erstellen, klicken Sie auf Add Rule. Natürlich können Sie auch eigene Ketten erstellen und diese dann mit Regeln füllen. Dazu geben Sie die gewünschte Kettenbezeichnung im oberen Eingabefeld ein. Das Editieren einer Regel. Ein wesentliches Element von Regeln sind die durchzuführenden Aktionen. Sie können beispielsweise folgende Aktionen (Targets) definieren: · Accept: Das Paket wird akzeptiert. · Drop: Das Paket wird ohne Rückmeldung an den Sender verworfen. · Queue: Das Paket wird in eine Warteschlange im Userspace geschickt, sodass es von einem Benutzerprogramm bearbeitet werden kann. www.brain-media.de Netzwerkkonfiguration 391 Essenziell für die Effektivität der Firewall ist ein schlüssiges Konzept, wie Sie mit Ketten, Tabellen und Regeln umgehen. Im Internet finden Sie ausreichend Material für die optimale Handhabung der Firewall-Funktionen. Hinweis: Nicht weiter eingehen können wir im Rahmen dieses Buchs auf die Funktionen NFS-Exporte und NIS-Client und -Server sowie die Shorewall-Firewall. Hier sei auf die Buch-Site verwiesen. 29.6 Netzwerkkonfiguration Wie es sich für eine Netzwerkkategorie gehört, finden Sie dort auch eine Netzwerkkonfiguration. In selbiger finden Sie die Einstellungen für die Netzwerkschnittstellen, das Routing/Gateways, den DNS-Client sowie die Host-Adressen. Die Netzwerkkonfiguration von Webmin. Außerdem finden Sie auf der Netzwerkkonfigurationsübersicht den Button Konfiguration anwenden, mit dem Sie Ihre Änderungen übernehmen. Wenn Sie dem Verweis Netzwerkschnittstellen folgen, präsentiert Ihnen das zugehörige Formular all die Schnittstellen, die aktuell aktiv sind und in einem zweiten Bereich die, die beim Booten des Systems aktiviert werden. Zu jeder Schnittstelle werden die Bezeichnung, der Typ, die IP-Adresse, die Netzmaske und der Status angezeigt. Webmin kompakt 392 Netzwerkeinstellungen Das Hinzufügen einer neuen Schnittstelle ist einfach: Folgen Sie einfach dem gleichnamigen Link und bestimmen Sie die Parameter. Ähnlich einfach ist die Handhabung der Routing- und Gateway-Funktion. Hier präsentiert Ihnen das Webmin-Modul die aktuellen Systemeinstellungen und erlaubt das Bearbeiten und das Erzeugen neuer Routen. Die Routing- und Gateway-Konfiguration. Ähnlich einfach zu handhaben sind die Funktionen, die sich hinter den beiden Links DNS-Client und Host-Adressen verbergen. Auf dem ersten können Sie verschiedene Client-Optionen wie den Hostnamen und die Auflösungsreihenfolge, auf dem zweiten die IP-Adressen und Hostnamen des Systems bearbeiten. www.brain-media.de PPP-Konfiguration 393 29.7 PPP-Konfiguration Auch im DSL-Zeitalter dürfte es noch so manchen Anwender geben, der mit einem herkömmlichen Modem eine Internet-Verbindung herstellt. Über Webmin können Sie die Einwahl und auch die Entgegennahme eines Anrufs konfigurieren. Dazu sind die beiden Funktionen PPP Diaup Client und PPP Einwahl-Server relevant. Um die Verbindung zu einem Provider herzustellen, erzeugen Sie einen Telefonbucheintrag. Klicken Sie auf Add a new ISP Dialer Configuration und geben Sie im dazugehörigen Dialog die Standardinformationen wie Telefonnummer, ModemPort, Log-in und Passwort an. Im unteren Bereich der Verbindungsübersicht können Sie mit einem Klick auf Connect at boot with dafür sorgen, dass bei jedem Systemstart ein bestimmtes Profil angewählt wird. Wenn Ihr System als Einwahlrechner dienen soll, folgen Sie in der Netzwerkkonfigurationsübersicht dem Verweis PPP Einwahl-Server. Dort bestimmen Sie über Serial Port Configuration, welcher Port für die Einwahl verwendet werden darf. Damit sich Anwender von außen einwählen können, müssen Sie entsprechende Einwahlkonten definieren. Außerdem können Sie die Anrufer-ID zur Identifizierung verwenden, wenn dieser von einem stationären Anschluss die Verbindungsaufnahme startet. 29.8 PPTP-Konfiguration Das Point-to-Point Tunneling Protocol (PPTP) ist ein weiteres Protokoll zum Aufbau eines Virtual Private Network (VPN). Es ermöglicht das Tunneling des PPP durch ein IP-Netzwerk. Da es in der Windows-Welt eine feste Größe ist und war, wurde es auch für Linux implementiert. Über die beiden Links PPTP VPN Client und PPTP VPN Server machen Sie Ihr System zu einem entsprechenden Client bzw. Server. 29.9 SSL-Tunnel Schließlich ist über die Netzwerkkonfiguration die STunnel-Konfiguration verfügbar. STunnel (sprich: S-Tunnel) arbeitet typischerweise als SSL-Tunnel zwischen einem Windows-Client und dem Server. Es ermöglicht auf einfache Weise verschlüsselte Sitzungen. Mithilfe von STunnel lassen sich auch Clients wie z. B. Eudora oder Pegasus, die SSL nicht beherrschen, über verschlüsselte Verbindungen betreiben. Webmin kompakt 394 Netzwerkeinstellungen www.brain-media.de CD-Brenner 395 30 Hardware-Konfiguration Webmin taugt nicht nur zur Administration und Konfiguration verschiedenster Server und Netzwerkfunktionen, sondern auch zur Hardware-Konfiguration – wenngleich auch in überschaubarem Rahmen. Über die Hardware-Kategorie können Sie beispielsweise Ihren CD-Brenner, den Drucker, die Festplatten und eventuell vorhandene RAID-Laufwerke konfigurieren. Die Hardware-spezifischen Einstellungen, die Sie über Webmin bearbeiten können. 30.1 CD-Brenner Ein Brenner gehört seit Langem zur Grundausstattung eines jeden Rechners. Über den Verweis CD-Brenner können Sie die sogenannten Brenn-Profile und einige Dateisystem- und Geräteoptionen bearbeiten. Hinter den Brenn-Profilen verbergen sich typische Zusammenstellungen, die Sie auf ein Medium schreiben können. Die Brennfunktion unterstützt vier Profiltypen: · Einzelnes ISO-Image · Dateien und Verzeichnisse · Audio-Tracks · Kopiere CD Webmin kompakt 396 Hardware-Konfiguration Die Handhabung ist einfach: Bestimmen Sie den Typ und klicken Sie anschließend auf Neues Profil hinzufügen. Wenn Sie Audio-Daten auf CD schreiben wollen, muss das Tool mpg123 installiert sein. Beim Kopieren einer CD bestimmen Sie Quell- und Ziellaufwerk und speichern das Profil bzw. speichern und brennen es direkt. Auch das Brennen eines ISO-Images ist sehr einfach, denn dazu müssen Sie lediglich eine Profilbezeichnung angeben und das Image auswählen. Am umfangreichsten sind die Funktionen für den Typ Dateien und Verzeichnisse. Weisen Sie dem Profil zunächst eine Bezeichnung zu und legen Sie dann fest, welche Dateien bzw. Verzeichnisse wo auf CD gesichert werden sollen. Wie Sie es von K3b und anderer Brennsoftware kennen, können Sie den Schreibvorgang testen oder direkt durchführen. Nach dem Speichern eines Profils landet es in der Profilverwaltung. Das Schöne an dieser: Sie können Profile einfach nochmals auf CD schreiben, auch wenn sich Daten in diesem geändert haben. Die Profiloptionen für den Typ Dateien und Verzeichnisse. Unterhalb der Profilfunktion können Sie die verschiedenen Dateisystemeinstellungen wie das Verfolgen von symbolischen Links aktivieren. Hier sind in der Regel keine Anpassungen erforderlich. Wohl aber bei den Geräteoptionen. Hier wählen Sie das zu verwendende Brennwerk aus und bestimmen die Schreibgeschwindigwww.brain-media.de Druckerverwaltung 397 keit. Da die Schreibgeschwindigkeit auf einfach eingestellt ist, sollten Sie diese auf den Wert hochsetzen, den Ihr Brenner unterstützt. 30.2 Druckerverwaltung Die sicherlich wichtigste Hardware-spezifische Funktion ist die Druckerverwaltung. Dabei handelt es sich um Webmin-basierte Schnittstellen für das am meisten eingesetzte Drucksystem CUPS (Common Unix Printing System, http://www.cups.org). CUPS ist ein Drucksystem, genauer ein Daemon, der das Drucken unter den verschiedenen UNIX-artigen Betriebssystemen ermöglicht. Das Drucksystem wurde von Easy Software Products (http://www.easysw.com) entwickelt und kann sowohl unter der GPL als auch unter proprietären Lizenzen verwendet werden. Es ist der Nachfolger von älteren Drucksystemen, beispielsweise von LPD. Die Installation eines Druckers. Webmin kompakt Hardware-Konfiguration 398 Welches Bild sich Ihnen beim ersten Zugriff auf das CUPS-Modul präsentiert, ist abhängig von der jeweiligen Systemkonfiguration. Verfügt Ihr Linux-System bereits über einen Drucker, so finden Sie diesen in der Druckerverwaltung. Falls nicht, können Sie einen ersten Drucker einrichten, indem Sie dem gleichnamigen Link folgen. Der Dialog Drucker installieren bzw. Drucker bearbeiten weist drei Bereiche auf: · Druckerkonfiguration: Hier hinterlegen Sie den Namen und eine Beschreibung. Außerdem können Sie festlegen, ob der Drucker Anfragen akzeptiert, ob er aktiviert wird und ob es sich um den Standarddrucker Ihres Systems handeln soll. · Druckerziel: Hier bestimmen Sie, ob es sich um einen lokalen Anschluss, einen Netzwerkdrucker oder einen Windows-Drucker handelt. Gegebenenfalls geben Sie die Netzwerkadresse und die Kennung samt Passwort an. · Druckertreiber: Im letzten Bereich bestimmen Sie den Treiber, der das Gerät ansteuert. In der Regel sind Sie mit dem CUPS-Treiber am besten bedient. Hier finden Sie fast alle gängigen Modelle und können meist auch erweiterte Druckereinstellungen wie die Auflösung, den Speicher etc. definieren. Die Druckerverwaltung erlaubt außerdem das Anhalten bzw. Starten der Druckerwarteschlange. Halten Sie diese an, um beispielsweise temporär das Drucken über einen Netzwerkdrucker zu stoppen. Die Druckerkonfiguration über die CUPS-eigene Schnittstelle. www.brain-media.de Festplattenpartitionen 399 Wenn Ihnen die Druckerkonfiguration über Webmin zu wenig flexibel ist, so können Sie auch die CUPS-eigene Schnittstelle nutzen, auf die Sie mit einem Standard-Browser über http://ip-adresse_des_systems:631 zugreifen. Über die Schnittstelle sind alle wichtigen Druckkommandos, administrative Aufgaben und eine Unmenge an Anpassungsmöglichkeiten verfügbar. Die Modulkonfiguration für die Druckerverwaltung. Da Sie interessante Anpassungsmöglichkeiten bietet, werfen wir noch einen Blick auf die Modulkonfiguration. Sollten Sie ein alternatives Drucksystem anstelle von CUPS verwenden wollen, so kann es vorkommen, dass dieses nicht korrekt von der Druckerverwaltung erkannt wird. In diesem Fall müssen Sie gegebenenfalls über die Modulkonfiguration den Typ und den Treiber anpassen. 30.3 Festplattenpartitionen In der Hardware-Konfiguration findet sich auch der Partitionsmanager, der Ihnen beim Zugriff einen Überblick zu verwendeten Festplatten und zu den eingerichteten Partitionen bietet. Außerdem ist das Hinzufügen von primären und logischen Partitionen möglich. Webmin kompakt 400 Hardware-Konfiguration Der Partitionsmanager präsentiert Ihnen eine Übersicht der eingerichteten Partitionen. Um die Details einer Partition abzurufen, klicken Sie auf die jeweilige Nummer. Wenn Sie eine primäre Partition hinzufügen wollen, klicken Sie auf den gleichnamigen Link, bezeichnen die Partition, bestimmen den Typ (z. B. Linux, NTFS oder FAT32) und weisen ihr eine bestimmte Größe zu. Fertig. Entsprechend gehen Sie bei einer logischen Partition vor. Auch der Bootmanager GRUB lässt sich über die Hardware-Kategorie nutzen. 30.4 GRUB-Bootmanager In der Hardware-Konfiguration finden Sie auch den Eintrag GRUB-BootKonfiguration. Damit ist die Konfiguration des Boot-Managers GRUB (GRand www.brain-media.de RAID-Geräte 401 Unified Bootloader) möglich. Ein Bootmanager ist für das Starten des Rechners verantwortlich. Er lädt insbesondere beim Startvorgang bestimmte Teile des Betriebssystems, meist einen Kernel. Für Linux gibt es verschiedene solcher Manager. Da GRUB deutlich flexibler ist als der traditionelle Bootloader LILO (LInux-LOader) kommt er immer häufiger bei Linux-Distributionen zum Einsatz. Die GRUB-Übersicht präsentiert Ihnen – je nach Systemkonfiguration – die verfügbaren Boot-Optionen. In diesem Beispiel sind es drei: SUSE Linux 10.1, Diskette und Failsafe-Variante. Die globalen Optionen für den Boot-Manager. Um eine neue Boot-Option zu stellen, klicken Sie auf den Verweis Eine neue BootOption hinzufügen. Zum Bearbeiten einer Option klicken Sie auf das jeweilige Icon. Im Bearbeiten-Dialog können Sie erkennen, von welcher Partition das Betriebssystem gestartet wird, welches der Pfad zum Kernel ist und welche KernelOptionen verwendet werden. Außerdem können Sie den Passwortschutz für jede Boot-Option aktivieren. In den globalen Boot-Optionen bestimmen Sie, welches System das Standardsystem beim Rechnerstart ist. Außerdem hinterlegen Sie hier das Boot-Passwort. 30.5 RAID-Geräte Mit RAID steht Ihnen eine spezielle Technik zur Verfügung, mit der Sie mehrere physische Festplatten zu einem logischen Laufwerk zusammenfassen können, das dann eine größere Speicherkapazität, eine höhere Datensicherheit bei Ausfall einzelner Festplatten und/oder einen größeren Datendurchsatz als eine physische Platte hat. Über den Linux-RAID-Link können Sie entsprechend Geräte mit dem unterWebmin kompakt 402 Hardware-Konfiguration schiedlichen RAID-Leveln erstellen. Webmin macht dabei Gebrauch von den Tool MADM. Die Funktion setzt voraus, dass Sie über freie Partitionen verfügen. 30.6 SMART-Festplattenstatus Eine weitere nützliche Informationsquelle für Ihre Festplatten ist das Tool SMART. Es kann den Status einer Festplatte samt unterschiedlichen Details zur Größe, Umdrehungszahl, Temperatur etc. liefern. Die SMARTsuite verrät Ihnen jede Menge Details zu Ihren Festplatten. 30.7 Systemzeit Über die Hardware-Kategorie können Sie auch die System- und Hardware-Zeit anpassen. Auch die Zeitzone können Sie ändern. Wenn Sie auf Ihrem System beispielsweise eine Groupware-Lösung wie eGroupWare ausführen, sollten Sie einen Zeitserver einbinden, von dem sich Ihr System kontinuierlich die Zeit holt. www.brain-media.de Voicemail-Server und LVM 403 30.8 Voicemail-Server und LVM Sie können Ihren Rechner auch in einen Voicemail-Server verwandeln und die LVM-Funktionalität über Webmin konfigurieren. Für den Aufbau eines digitalen Anrufbeantworters benötigen Sie das vgetty-Paket, das in der Regel erst nachinstalliert werden muss. Ähnlich verhält es sich mit der LVM-Funktionalität. Auch hier müssen meist erst die LVM-Tools installiert werden. LVM (Logical Volume Manager) dient dazu, Festplatten zu einem Pool zusammenzufassen, aus dem dynamisch Partitionen (Logical Volumes) angefordert werden können. Auf diesen Logical Volumes werden die Dateisysteme angelegt. Das Erzeugen einer Laufwerksgruppe. Webmin kompakt 404 Hardware-Konfiguration www.brain-media.de 405 31 Cluster-Kategorie Mit Webmin lässt sich eine Vielzahl von Aktionen auf entfernten Rechnern durchführen. Für einen Administrator vereinfacht sich das Ganze natürlich erheblich, wenn er bestimmte Aufgaben nicht auf einem System, sondern an mehreren vornehmen kann – und zwar gleichzeitig. Genau für diesen Aufgabenbereich besitzt Webmin die Kategorie Cluster. Mit dem „normalen“ Cluster-Begriff, der eine Rechnerfarm beschreibt, die die Kapazitäten der einzelnen Rechner bündelt, hat die Webmin-Cluster-Funktion an sich wenig zu tun. Webmin verwendet für die Steuerung ein eigenes RemoteProcedure-Call-Protokoll (RPC). Das Prinzip ist ansich recht einfach: Ein sogenannter Master-Server kennt die Root-Passwörter der zu managenden Systeme, loggt sich automatisch ein und führt die gewünschten Aktionen aus. Es handelt sich um ein Webmin-spezifisches Protokoll, das meines Wissens nicht öffentlich dokumentiert ist. Die Funktionen der Cluster-Kategorie. Wofür kann man nun die Webmin-Cluster-Funktion konkret verwenden? Diese wahrlich berechtigte Frage beantwortet sich fast von alleine, wenn Sie einen Blick in die Cluster-Kategorie werfen. Sie können mit dieser Funktion beispielsweise zentral Benutzer und Gruppen verwalten, Aufträge starten, Passwörter ändern und sogar Software installieren. Sie sehen: Die Cluster-Funktion hält eine Vielzahl interessanter Funktionen für Sie bereit. Webmin kompakt 406 Cluster-Kategorie Bevor Sie von Ihrem Webmin-System einen oder mehrere andere Rechner verwalten können, muss Ihre Installation diese kennen. Dazu wechseln Sie zunächst zum Webmin-Server-Index in der Webmin-Kategorie. Erzeugen Sie dort einen neuen Server-Eintrag und stellen Sie sicher, dass Sie dort den Benutzernamen und das Passwort für die Anmeldung über Webmin angegeben haben. Achten Sie darauf, dass Sie auch tatsächlich einen Account angegeben haben, der administrative Rechte (meist als root oder admin) auf dem Remote-System besitzt. Nur so ist ein Einloggen und anschließendes Bearbeiten der Einstellungen auf dem RemoteSystem möglich. Kehren Sie dann zur Cluster-Kategorie zurück. Als Nächstes können Sie sich beispielsweise an das Benutzermanagement oder die Software-Installation machen. Vielleicht sollte noch angemerkt werden, dass aufseiten der entfernten Systeme eine Webmin-Installation erforderlich ist. Leider können Sie mit der ClusterFunktionalität keine Windows- oder Mac-Systeme verwalten – auch nicht, wenn dort eine Webmin-Installation ausgeführt wird. Die Benutzer- und Gruppen-Verwaltung. 31.1 Benutzer-/Gruppenmanagement im Cluster Um einen neuen Benutzer oder eine neue Benutzergruppe zu erzeugen, folgen Sie dem Verweis Cluster – Benutzer und Gruppen. Das zugehörige Formular präsentiert Ihnen die betreuten Server, stellt Ihnen eine Suchfunktion zur Verfügung und erlaubt das Anlegen von Benutzern und Gruppen sowie das Synchronisieren. Beachten Sie, dass die Cluster-Benutzer- und -Gruppenfunktion voraussetzt, dass auf allen Systemen das gleiche Benutzerdateiformat verwendet wird. Da auf unterwww.brain-media.de Benutzer-/Gruppenmanagement im Cluster 407 schiedlichen Linux-Varianten auch verschiedene Passwortdateien verwendet werden, z. B. /etc/passwd, /etc/shadow etc., sollten Sie zunächst sicherstellen, dass alle Systeme ein einheitliches Format nutzen. Um einen neuen Benutzer anzulegen, gehen Sie wie folgt vor: 1. Klicken Sie auf die Schaltfläche Benutzer hinzufügen. Es öffnet sich ein umfangreiches Formular, auf dem Sie die Benutzerdetails, die Kennworteinstellungen, die Gruppenzugehörigkeit und weitere Optionen definieren. 2. Geben Sie unter Benutzerdetails den Benutzernamen an und sichern Sie das Log-in durch ein Passwort – am besten mit der Option Vorverschlüsseltes Passwort. 3. Bestimmen Sie dann unter Kennworteinstellungen ein Ablaufdatum oder verwenden Sie eine maximale Anzahl an Tagen, die das Passwort gültig ist. Ein erster Cluster-Benutzer entsteht. Webmin kompakt 408 Cluster-Kategorie 4. Im Bereich Gruppenzugehörigkeit weisen Sie den neuen Benutzer zumindest einer primären, eventuell auch weiteren sekundären Gruppe zu. 5. Im letzten Bereich unter Beim Erstellen können Sie außerdem dafür sorgen, dass ein Home-Verzeichnis erstellt wird, wenn es noch nicht existiert. Standardmäßig werden auch die Dateien ins Stammverzeichnis kopiert. 6. Schließen Sie das Erstellen mit einem Klick auf Erstellen ab. Webmin gibt eine Statusmeldung bei der Durchführung der verschiedenen Aktionen aus. Die Statusmeldung zum Erzeugen eines Cluster-Benutzers. Noch einfacher ist das Erstellen einer Gruppe. Klicken Sie in der Benutzer/Gruppenübersicht auf die Schaltfläche Füge Gruppe hinzu. Geben Sie die Gruppenbezeichnung, das Kennwort, die ID und eventuell bereits erste Mitglieder an. Sie können die neue Gruppe auf allen Servern, auf solchen, die die Gruppe noch nicht besitzen und auf dem lokalen System einrichten. Die Gruppenfunktion stellt Ihnen über die Schaltfläche Synchronisieren eine flexible Funktion zur Verfügung, über die Sie beispielsweise den Abgleich zwischen Benutzern und Gruppen auf den Systemen quasi per Knopfdruck durchführen können. www.brain-media.de Kopierauftrag 409 Der Abgleich von Benutzern und Gruppen über das Cluster hinweg. 31.2 Kopierauftrag Mit der Cluster-Funktion können Sie beliebige Dateien in Ihrem Rechner-Verbund verteilen. Folgen Sie dem Verweis Cluster – Dateien kopieren. Auf dem zugehörigen Formular erzeugen Sie einen neuen zeitgesteuerten Kopierauftrag. Bestimmen Sie die zu kopierenden Dateien und das Zielverzeichnis. Das Zielverzeichnis ist auf allen Servern identisch. Sie können dem Kopiervorgang außerdem Kommandos vor bzw. nach dessen Ausführung mit auf den Weg geben. Bestimmen Sie als Nächstes die Ziele. Sie können den Kopiervorgang auf alle und auf spezifische Gruppen anwenden. Den Kopiervorgang können Sie direkt oder aber auch per Zeitsteuerung zeitlich versetzt ausführen. Aktivieren Sie dazu unter Kopieren nach Zeitplan? die gewünschte Option. Wenn Sie sich für die Zeitsteuerung entscheiden, geben Sie im unteren Bereich den Zeitpunkt und eventuell die Wiederholung an. Um den Auftrag zu speichern, klicken Sie auf Erstellen. Sie landen anschließend in der Liste Webmin kompakt 410 Cluster-Kategorie der Kopieraufträge, die über die Spalte Aktion die unmittelbare Ausführung erlaubt. 31.3 Cron-Auftrag Die Webmin-Cluster-Funktion erlaubt auch die Ausführung eines Cronjobs über die zu verwaltenden Systeme hinweg. Auch bei dieser Funktion ist die Handhabung simpel: Geben Sie an, wer den Auftrag ausführt, welcher Befehl ausgeführt und auf welche Systeme dieser angewendet werden soll. Auch hier können Sie wieder den Zeitpunkt bestimmen. 31.4 Kommandozeile Über den Verweis Kommandozeile ist auch die Ausführung von Befehlen auf Konsolenebene möglich. Allerdings bietet die Funktion keine Interaktivität. Sie können lediglich Kommandos ausführen und die Ausgabe betrachten. Diese Funktion verfügt auch über eine History-Funktion, die die Wiederholung von Kommandos vereinfacht. 31.5 Passwort ändern Wie bereits erwähnt, erlaubt die Web-Cluster-Funktion auch das Ändern von Passwörtern über die angeschlossenen Systeme hinweg. Folgen Sie dem Verweis Cluster – Passwort ändern, wählen Sie den Benutzer aus und geben Sie im Folgedialog das neue Passwort samt Bestätigung ein. Das Ändern des Passworts. www.brain-media.de Software-Management 411 31.6 Software-Management Eine echte Arbeitserleichterung im ohnehin oft sehr stressigen Admin-Alltag ist die Software-Managementfunktion der Cluster-Kategorie. Mit ihrer Hilfe können Sie Software zentral installieren, ohne vor den entfernten Rechnern sitzen zu müssen. Einfacher geht es also kaum. Eine entsprechende Lösung in der Windows-Welt kostet richtig viel Geld. Bei Linux bekommen Sie sie wieder einmal zum Nulltarif. Die Software-Managementfunktion erlaubt das zentrale Installieren von Paketen. Beim Zugriff auf einen Server, der sich in der Cluster-Verwaltung befindet, liest die Managementkomponente zunächst von dem jeweiligen Rechner die installierten Pakete ein und präsentiert Ihnen deren Anzahl unterhalb des jeweiligen Rechner-Icons. Über die Schaltfläche Server vergleichen können Sie einen Vergleich der Software-Informationen durchführen. Die Vergleichsfunktion erlaubt die Auswahl der zu vergleichenden Server und die Beschränkung der Anzeige auf die Unterschiede. Die Managementfunktion erlaubt außerdem die Suche nach Paketen auf den Rechnern. Webmin kompakt 412 Cluster-Kategorie Die Handhabung der Installation entspricht ansonsten der Vorgehensweise, wie sie in der System-Kategorie im Modul Software beschrieben ist. Der Paketvergleich zwischen mehreren Servern. 31.7 Usermin-Server verwalten Die Cluster-Funktion erlaubt auch die Verwaltung von bestehenden UserminServern. Das setzt voraus, dass das Usermin-Modul installiert ist. Ist das der Fall, können Sie über die Usermin-Server-Verwaltung beispielsweise Module, Themes, Usermin-Benutzer und -Gruppen verwalten. Die Usermin-Server-Verwaltung stellt eine gegenüber der Webmin-Server-Verwaltung abgespeckte Funktionalität zur Verfügung. 31.8 Webmin-Server-Verwaltung Von Ihrem zentralen Webmin-Server aus können Sie auf den zu administrierenden Servern eine Vielzahl an Anpassungen vornehmen. So können Sie beispielsweise Server-übergreifend Themes installieren oder auch Benutzer einführen. Im Kopfbereich der Verwaltung präsentiert Ihnen die Cluster-Funktion alle bekannten Webmin-Server. Darunter finden Sie die Einstellungen für die Konfiguration der Webmin-Benutzer und -Gruppen. Hier können Sie Benutzer sowie die ACLs für Benutzer und Gruppen bearbeiten. Über die entsprechenden Schaltflächen ist das Hinzufügen von Benutzern und Gruppen möglich. www.brain-media.de Heartbeat-Monitor 413 Die zentrale Konfiguration der Webmin-Server-Einstellungen. Im Bereich Module und Designs ist die System-übergreifende Anpassung aller Module möglich. Wählen Sie dazu aus dem umfangreichen Auswahlmenü das Modul aus, dessen Eigenschaften Sie vorgeben wollen und klicken dann auf Modul bearbeiten. Passen Sie im Folgedialog beispielsweise die Installation, die Modulkonfiguration oder die ACL an. Unterhalb der Module- und Design-Einstellungen stehen Ihnen einfach zu handhabende Funktionen für die Aktualisierung bzw. Erweiterung von Webmin zur Verfügung. 31.9 Heartbeat-Monitor Zwei weitere Funktionen hat die Cluster-Funktion noch zu bieten. Zum einen den Heartbeat-Monitor, zum anderen den so genannten Konfigurationsautomat. Der Monitor dient der Überwachung von Netzwerkverbindungen zwischen zwei oder mehr Cluster-Knoten. Über deren Verbindung benachrichtigen sich die beiden Clusternodes gegenseitig, ob ihr jeweiliges Gegenstück noch betriebsbereit ist und Webmin kompakt 414 Cluster-Kategorie seine Aufgaben noch erfüllen kann, also „am Leben“ ist. Daher auch der Begriff Heartbeat (Herzschlag). Um die Überwachung zu starten, klicken Sie auf die Schaltfläche Start Heartbeat Monitor. Zuvor sollten Sie allerdings die ClusterRessourcen anmelden, damit der Monitor auch etwas zu überwachen hat. 31.10 Konfigurationsautomat Als letzte Funktion hat die Cluster-Kategorie noch den Konfigurationsautomat zu bieten. Dahinter verbergen sich die Funktionen der Cfengine, einer Richtlinienbasierten Computer-Verwaltung. Sie stellt Ihnen eine automatisierte, gruppenrichtlinien-spezifische Konfiguration und Wartung von Computern zur Verfügung. www.brain-media.de Dateimanager 415 32 Sonstiges Wir nähern uns mit großen Schritten den letzten Funktionen. In der Kategorie Sonstiges finden Sie all die Funktionen, die in den anderen Kategorien nichts zu suchen haben. Bei einer Standardinstallation sind es zehn Funktionen, die wir gegen Schluss noch im Schnelldurchlauf mitnehmen wollen. 32.1 Dateimanager Wenn Sie bei der Administration häufig mit Dateien hantieren müssen, so sind Sie sicherlich für den Java-basierten Dateimanager dankbar, der Ihnen gerade auch beim Remote-Zugriff die Durchführung typischer Dateiaktionen wie das Löschen, das Verschieben, das Kopieren etc. erlaubt. Der Java-basierte Datei-Manager. Da der Aufbau dem typischer Dateimanager entspricht, muss man zur Handhabung nicht unnötige Worte verlieren. Seine Funktionalität erklärt sich von selbst. Webmin kompakt 416 Sonstiges 32.2 Passwortgeschützte Web-Verzeichnisse Neben dem Dateimanager dürfte die Funktion Passwort-geschützte WebVerzeichnisse die zweitwichtigste sein. Sie erlaubt Ihnen, ohne mit dem Apache direkt hantieren zu müssen, das Erstellen der Dateien .htaccess und .htpasswd, die den Passwortschutz für ein Verzeichnis auf Ihrem Webserver erlauben. Im Formular zum Hinzufügen des Schutzes geben Sie den Pfad, die berechtigten Benutzer sowie die Art des Passwortschutzes an. Die Konfiguration des Passwortschutzes für ein Web-Verzeichnis. 32.3 System- und Server-Status In der Kategorie Sonstiges finden Sie auch die Statusfunktion, die Ihnen in einer übersichtlichen Tabelle anzeigt, welche Server aktuell aktiv sind. Ein Starten eines inaktiven Servers aus der Statusübersicht heraus ist leider nicht möglich. Sie können die Ansicht allerdings um alle auf Ihrem System verfügbaren Server erweitern. Wählen Sie dazu den Servertyp aus und klicken Sie auf die Schaltfläche Füge Überwachung hinzu. www.brain-media.de Die weiteren Funktionen 417 Der System- und Server-Status. 32.4 Die weiteren Funktionen Die Kategorie Sonstiges hat noch einige weitere Funktionen zu bieten, die hier allerdings nicht weiter beschrieben werden. Alle weiteren Funktionen in Kürze: · HTTP-Tunnel-Konfiguration: Erlaubt die Konfiguration eines HTTPTunnels. · Eigene Befehle: Mithilfe der Funktion Eigene Befehle können Sie neue Befehle definieren. Die Kommandos werden von sh ausgeführt und können daher Shell-Metacharakter wie |, > und & beinhalten. Auch die Verwendung von Parametern ist möglich, die von Ihnen vor der Ausführung abgefragt werden. · Kommandozeile: Erlaubt die Ausführung eines Kommandozeilenbefehls. Über die History-Funktion lassen sich Befehle bequem wiederholt ausführen. · PHP-Konfiguration: Zeigt Ihnen die Einstellung der PHP-Konfiguration an. · Perl-Module: Hier werden alle Perl-Module samt Kurzbeschreibung, Version und Installationsdatum aufgeführt. · SSH-/Telnet-Login: Eine weitere Java-basierte Funktion, die den SSHbzw. Telnet-Zugriff erlaubt. Webmin kompakt Sonstiges 418 · Upload und Download: Funktion, die das einfache Hoch- und Herunterladen von Dateien auf den Server sowie den Download auf den PC erlaubt. www.brain-media.de 419 Index A ACL ............................................. 79, 227 ACL-Funktion ...................................368 ACL-Typ ...........................................370 Admin-Rechte......................................15 Alias...................................................196 Anzeigeoptionen ................................104 Apache ...............................................182 Apache-Konfiguration .......................191 Apache-Konfigurationsdateien ..........188 Apache-Modul ...................................187 Apache-Modulkonfiguration .............212 Apache-Proxy-Konfiguration ............211 Apache-Server-Konfiguration ...........182 Apache-SSL-Modul ...........................202 AT......................................................131 AT-Steuerung ....................................131 Ausführungslevel ...............................113 Authentifizierung .........................59, 375 Authentifizierungsagent .....................301 Authentifizierungstyp ........................208 Automatische Abmeldung ...................61 Automounter ......................................151 B Back-up-Funktion ................................89 Back-up-Konfiguration ......................119 Back-up-Modul..................................120 Back-up-Optionen .............................117 Bandbreitenmessung ..........................384 Batch-Datei ..........................................96 Bayesscher-Filter ...............................345 Benutzer...............................................51 Benutzergruppen................................317 Benutzermanagement ........................406 Benutzernamen .................................... 74 Benutzer-Synchronisation ................... 80 Benutzerverwaltung............... 74, 94, 289 Berechtigungen.................................... 79 BIND ................................................. 215 BIND-Modul ..................................... 225 Blacklist............................................. 345 Boot-Konfiguration ........................... 111 BOOTP .............................................. 239 BOOTP-Client ................................... 240 Boot-Vorgang .................................... 171 Bootzeit ............................................. 175 Browse-Liste ..................................... 326 Brute-Force-Attacke ............................ 59 C Cache ................................................. 212 Cache leeren ...................................... 380 Cache-Einstellungen .......................... 365 Cache-Manager-Statistik ................... 379 Cache-Verzeichnis..................... 360, 366 Calamaris ........................................... 381 CA-Zertifikat ....................................... 71 CD-Brenner ....................................... 395 CGI .................................................... 186 CGI-Konfiguration ............................ 198 CGI-Programm .......................... 195, 199 CGI-Verzeichnis ................................ 198 CIDR ................................................. 210 Cluster ............................................... 405 Cluster-Kategorie .............................. 405 CRM-System ..................................... 182 Cron-Auftrag ..................................... 410 Cronjob ...................................... 127, 130 crontab ............................................... 125 Cron-Tabelle...................................... 125 CUPS ................................................. 397 CUPS-Dienst ..................................... 170 Webmin kompakt 420 Index CUPS-Skript ......................................171 Ereignisanzeige ................................... 83 Ergebnisliste ........................................ 83 ext3-Dateisystem ............................... 147 D Dateiberechtigung ..............................316 Dateifreigabe .....................................315 Dateimanager .....................................415 Dateinamenkonventionen ..................319 Dateisperrung ......................................69 Dateisystem .......................................146 Daten wiederherstellen ......................119 Datenbank erzeugen...........................277 Datenbank-Back-up ...........................296 Datenbankberechtigungen .................290 Datenbankverbindungen ....................274 Datenbankverwaltungssystem ...........273 Datenkompression .............................301 Datensatztypen...................................220 Datentypen .........................................278 DCC ...................................................350 DCC-Einstellungen ............................352 Debug-Level-Nachrichten .................194 Deinstallationsskript ............................29 Delay-Pool .........................................376 DHCP ................................................235 DHCP-Client .....................................236 DHCP-Server .....................................235 DHCP-Servermodul...........................246 Digest-Funktion .................................269 DNS-Schlüssel ...................................229 Dokumenten-Root .............................194 Druckerfreigabe ................. 315, 320, 331 Druckerkonfiguration ........................398 Druckertreiber ....................................398 Druckerverwaltung ............................397 Druckerziel ........................................398 Druckjobs ............................................74 Drucksystem ......................................170 E Echtheitsbestätigung ..........................304 Einschreibungsregeln.........................264 E-Mail-Modifikationen ......................350 F FancyIndexing ................................... 201 Fehlerlevels ....................................... 193 Festplattenpartition ............................ 399 Fetchmail ........................................... 253 Fetchmail-Konfiguration ........... 254, 255 Fetchmail-Übersicht .......................... 254 Filter .................................................. 203 Freigabe ............................................. 314 Freigabe erstellen .............................. 315 Freigabeeinstellungen ........................ 321 Freigabevorgaben .............................. 330 G Google ............................................... 180 GRUB ........................................ 111, 401 GRUB-Bootmanager ......................... 400 Gruppe anlegen.................................... 80 Gruppenmanagement ......................... 406 Gruppenverwaltung ....................... 74, 94 H Hardlimit ........................................... 123 Hardware-Konfiguration ................... 395 Header-Analyse ................................. 345 Header-Zugriffskontrolle ................... 378 Heartbeat-Monitor ............................. 413 Herunterfahren................................... 169 Herunterfahren-Kommando............... 176 Home-Verzeichnis-Optionen ............. 102 Host-Rechte ....................................... 291 htaccess ............................................. 206 HTTP-Header .................................... 186 www.brain-media.de 421 I M INCLUDES-Filter .............................204 IndexOptions .....................................201 Indexseitenoptionen .............................55 inittab-Datei .......................................112 InnoDB ..............................................280 Internetdienste ...................................385 IP-basierter virtueller Server..............190 IPTables .............................................388 ISAM .................................................280 Mailingliste........................................ 263 Mailman ............................................ 259 Majorcool .......................................... 259 Majordomo ........................................ 259 man-Befehl ........................................ 179 Manpage ............................................ 179 Master-Boot-Record .......................... 111 Master-Server .................................... 217 Master-Zone ...................................... 216 Master-Zone-Eintrag ......................... 219 MBR .................................................. 111 Medientyp.......................................... 184 Merge ................................................ 280 MIME-Typ ........................................ 184 Mitgliederliste ................................... 262 Moderationsregel ............................... 264 Moderator .......................................... 261 Modul klonen ...................................... 52 Modulberechtigungen .......................... 76 Modul-Konfiguration .......................... 40 Modultitel ............................................ 64 Modulübersicht.................................. 190 Modulverwaltung ................................ 50 Modulzugriff ....................................... 68 Mountpoint ........................................ 145 MX-Record........................................ 220 MyISAM ........................................... 280 MySQL .............................................. 181 MySQL-Benutzer .............................. 289 MySQL-Einstellungen ....................... 286 MySQL-Server-Konfiguration .......... 293 MySQL-Systemvariablen .................. 295 J Jetzt-sichern-Bericht ..........................119 K Kennworteinstellungen ........................92 Kennwort-Konfiguration .....................92 Kerberos-Konfiguration .....................388 KEY-Resource-Record ......................222 Klartextpasswort ..................................92 Klon-Funktion .....................................52 Konfigurationsautomat ......................414 Konfigurationsdatei .............................39 Kopierauftrag .....................................409 Kündigungsregeln ..............................265 L LAMP ................................................273 LanManager .......................................313 Laufende Prozesse .............................133 Lease-Einstellung ..............................241 LILO .......................................... 111, 401 Linux-Firewall ...................................388 Listenteilnehmer ................................268 Logical Volume Manager ..................403 Log-in-Dialog ......................................61 LVM ..................................................403 N Namenbasierter Server ...................... 190 Nameserver........................................ 223 NetBIOS ............................................ 313 Netzwerkeinstellungen ...................... 383 Netzwerkkonfiguration ...................... 391 NIS-Server ......................................... 245 NTP-Server........................................ 245 Webmin kompakt 422 Index O R OpenSSH ...........................................299 OpenSSH-Konfigurationsdateien ......311 OpenSSH-Server ...............................301 OpenSSL .............................................31 OpenSSL-Komponente ......................202 OpenSwan..........................................387 Ortsangabe .........................................222 OSDN ..................................................48 RAID-Geräte ..................................... 401 Razor ................................................. 350 RBAC .................................................. 81 Redirector .......................................... 358 Refresh-Regeln .................................. 378 Replikationssystem ............................ 273 Restore-Modul ................................... 120 Reverse-Adresse ................................ 222 rlogin ................................................. 299 rndc.................................................... 230 Roaming-Profil .................................. 339 Rootserver ......................................... 216 RPC ................................................... 405 RPC-Protokoll ..................................... 84 RPM ............................................ 50, 163 RPM-Manager ................................... 164 RP-Record ......................................... 222 Runlevel .................................... 112, 176 P PAM ....................................................62 PAM-Authentifizierung .......................89 PAM-Konfiguration...........................156 Partitionsmanager ..............................399 Passwort-Checker ..............................108 Passwort-Einstellungen..............107, 326 Passwortgeschützte Web-Verzeichnisse ......................................................416 Passwortschutz...................................208 Passwort-Server .................................326 PEM .....................................................71 Per-Directory-Einstellung .......... 186, 199 Perl-SSLeay-Bibliothek .......................18 PHP-Einstellung ................................203 phpMyAdmin ............................181, 273 Port-Umleitung ..................................379 Port-Weiterleitung .....................236, 301 PPP-Konfiguration.............................393 PPTP-Konfiguration ..........................393 Primärschlüssel ..................................281 Primary DNS Server ..........................223 Procmail.............................................346 Protokolldateien ...........................89, 168 Protokolleinstellungen .......................192 Protokollierungskategorie ..................227 Protokoll-Server.................................244 Proxy-Request ...................................368 Proxy-Server ................ 47, 187, 206, 210 Prozessdetails ....................................135 Prozess-ID, ........................................134 Prozessverwaltung .............................133 Pyzor.......................................... 351, 353 S Samba ................................................ 313 Samba Web Administration Tool ...... 334 Samba-Konfigurationsdatei ............... 332 Samba-Modul ...................................... 78 Samba-Modulberechtigung ................. 78 Samba-Zugriffskontrolle ..................... 78 Schlüsselgröße ..................................... 71 SCP.................................................... 305 Secondary Nameserver ...................... 223 SELECT ............................................ 283 Sender Permitted Form ...................... 221 Sendmail ............................................ 270 Server hinzufügen................................ 84 Server-Message-Block-Protokoll ...... 313 Servername ........................................ 323 Server-Prozess ..................................... 15 Server-Side-Includes ......................... 195 Server-Status ..................................... 416 Server-zu-Server-Verbindungen .......... 85 Session-Authentifizierung ................... 69 Session-ID ........................................... 81 Sessions einsehen .............................. 316 www.brain-media.de 423 SFTP ..................................................305 Share ..................................................314 Sicherheitsdienste ................................89 Sitzungen .............................................81 Slave-Zone.........................................223 SMART-Festplattenstatus..................402 SMB...................................................313 SMB-Client........................................313 smbfs-Dateisystem.............................152 SMTP-Headerzeile ............................269 Softlimit .............................................123 Software-Management .......................411 SourceForge .........................................47 Spam ..................................................345 SpamAssassin-Modulkonfiguration...355 Spam-Filter ........................................346 Spam-Klassifizierung ........................349 SQL-Kommandos ausführen .............282 Squid..................................................211 Squid-Hilfsprogramme ......................367 Squid-Konfiguration ..........................375 Squid-Modulkonfiguration ................380 Squid-Protokollierungsfunktion.........363 Squid-Zugriffskontrolle .....................367 SSH....................................................417 SSH-Client................................. 305, 309 SSH-Schlüssel ...................................311 SSL ........................................ 18, 70, 201 SSL-Encryption-Modul .......................33 SSL-Funktionalität...............................70 SSL-Port ............................................202 SSL-Tunnel........................................393 Standardfreigabe ................................323 Standardmodule ...................................51 Stapelverarbeitungsdatei ......................98 strftime .................................................41 STunnel .............................................393 Suchfunktion......................................137 SWAT ................................................334 Syslog-NG .........................................167 System-Handbücher...........................179 Systemkonfiguration ..........................108 System-Status ....................................416 Systemzeit..........................................402 T Tabellenrechte ................................... 292 TAR-Dateisystemsicherungsdetails ... 116 telnet .................................................. 299 Telnet................................................. 417 Textanalyse........................................ 345 TSIG .................................................. 245 TTL ................................................... 218 Typenbezeichung............................... 185 Typenbreite........................................ 280 U Umleitung .......................................... 197 Unix-Benutzer-Authentifizierung ........ 81 Usermin-Server verwalten ................. 412 V Verisign ............................................. 202 Verzeichnisindizierung ...................... 200 Vipuls Razor...................................... 345 virtueller Server ................................. 183 Voicemail-Server............................... 403 Vorverschlüsseltes Kennwort .............. 92 VPN-Konfiguration ........................... 387 W WAMP .............................................. 273 WBM-Datei ......................................... 50 Webmin aktualisieren .......................... 56 Webmin-Add-ons ................................ 15 Webmin-Administrator........................ 15 Webmin-Aktualisierung ...................... 57 Webmin-Benutzerschnittstelle............. 49 Webmin-Benutzerverwaltung .............. 73 Webmin-Homepage. ............................ 25 Webmin-Installation ...................... 16, 57 Webmin-Installationsskript ........... 18, 44 Webmin-Kategorie ........................ 26, 83 Webmin kompakt 424 Index Webmin-Konfiguration............ 31, 64, 82 Webmin-Konfigurationsverzeichnis ....29 Webmin-Log-in ...................................25 Webmin-Logo ......................................25 Webmin-Modul ....................... 26, 27, 28 Webmin-Modul-Übersicht ...................36 Webmin-Port .......................................44 Webmin-Protokollfunktion ..................45 Webmin-Prozessmanager ..................133 Webmin-Schnittstelle ..........................36 Webmin-Server ....................................18 Webmin-Server-Farm ..........................85 Webmin-Server-Index .........................83 Webmin-Server-Sicherheit ..................30 Webmin-Server-Verwaltung ..............412 Webmin-Themes .................................65 Webmin-User ......................................15 Webmin-Webserver .......................17, 43 Weiterleitung .....................................228 Wemin-Konfigurationsmodul ..............43 Winbind .............................................329 Windows-zu-Unix-Druckereinstellungen ......................................................327 WinSCP .............................................305 WINS-Server .....................................323 WKS-Record ..................................... 222 X X11-Weiterleitung ............................. 300 XAMPP ............................................. 273 XDM-Server ...................................... 245 Z Zeichensatzunterstützung .................. 205 Zeit-Server ......................................... 244 Zertifikatautorität................................. 70 Zonenstandards.................................. 229 Zonenvorlage ..................................... 218 Zugriffskontrolle ......... 52, 210, 267, 316 Zugriffskontrollliste............................. 51 Zugriffsroutine................................... 145 Zugriffssteuerung .............................. 227 Zwischenspeicher .............................. 294 Zwischenspeicherung ........................ 212 www.brain-media.de