Das Perfekte Setup - SuSE 10.1 (32-bit)

Version 1.1
Author: Falko Timme


Diese Anleitung veranschaulicht Schritt für Schritt wie man einen SuSE 10.1 basierten Server einrichtet, der alle Dienste bietet, die von ISPs und Hostern (Web Server (SSL-fähig), Mail Server (mit SMTP-AUTH und TLS!), DNS Server, FTP Server, MySQL Server, POP3/IMAP, Quota, Firewall, etc.) benötigt werden.

Folgende Software werde ich verwenden:
  • Web Server: Apache 2.2.0
  • Database Server: MySQL 5.0
  • Mail Server: Postfix
  • DNS Server: BIND9
  • FTP Server: proftpd (ISPConfig wird mit vsftpd auf SUSE 10.1 nicht funktionieren)
  • POP3/IMAP: ich werde ein Maildir Format verwenden und daher Courier-POP3/Courier-IMAP installieren.
  • Webalizer für Webseiten-Statistiken
Du erhältst ein System, das zuverlässig funktioniert. Wenn Du magst, kannst Du das kostenlose Webhosting Control Panel ISPConfig installieren.

Ich möchte an dieser Stelle darauf hinweisen, dass dies nicht der einzige Weg ist, ein solches System einzurichten. Es gibt viele Möglichkeiten, dieses Ziel zu erreichen - dies ist der Weg, den ich gewählt habe. Ich übernehme keine Garantie, dass dies auch bei Dir funktioniert!

Voraussetzungen

Um ein solches System zu installieren, wirst Du Folgendes benötigen:

1 Das Basissystem

Starte mit der ersten SuSE 10.1-CD und wähle Installation auf dem Startscreen:


Wähle Deine Sprache:


Überspringe den Media-Check indem Du auf Next klickst:


Akzeptiere den Lizenzvertrag:


Wähle New installation:


Wähle als Nächstes Deine Zeitzone:


Wähle auf dem Desktop Selection Screen Other und klicke auf Select...:


Da wir einen Server installieren wollen, brauchen wir keinen Desktop. Daher wählen wir Text Mode und klicken auf OK und dann auf Next.


Der Installation Settings Screen listet die verfügbaren Installationseinstellungen auf. Du kannst jede einzelne Auswahl ändern indem Du Dich zu der entsprechenden Überschrift begibst. Zunächst ändere ich das Partitionsschema indem ich auf Partitioning und dann auf Create Custom Partition Setup und auf Next klicke:



Wähle Custom Partitioning (für Experten):


Nun erstellen wir die Partitionen. Ich werde folgendes Partitionsschema verwenden:

/boot 100 MB
swap 500 MB
/ the rest of the hard disk

Eine Partition ersellen: Klicke auf Create, wähle Primary Partition, wähle das Format aus. Ich werde ext3 für alle Partitionen (ich möchte Quota später installieren, und Quota funktioniert am Besten mit ext3 - es kann sein, dass Du mit reiserFS auf Probleme stößt!) außer für die Swap Partition verwenden. Wähle dann den mountpoint entsprechend des obigen Partitionsschemas aus.







Deine Partitionstabelle sollte nun so ähnlich wie diese hier aussehen, das hängt von der Größe Deiner Festplatte ab. Klicke auf Finish um mit dem nächsten Schritt fortzufahren.


Wechsle nun in den Expertenmodus (die Expert Registerkarte in den Installation Settings), wähle Dein Tastaturlayout und Accept:



Zurück auf dem Installation Settings Screen, klicke auf Accept und dann auf Install:


Die Festplatte wird formatiert:


Die Paketinstallation startet (klicke auf die Details Registerkarte um den Installationsfortschritt abzurufen):


Nach der Basis-Paketinstallation startet das System neu. Entferne die SuSE CD und pass auf, dass Du von der Festplatte startest:



Nachdem das System wieder hochgefahren ist, müssen wir einen Hostnamen und einen Domainnamen bereitstellen. Die Bezeichnung meines Servers ist server1.example.com, also gebe ich server1 als Hostnamen und example.com als Domainnamen ein. Danach deaktivieren wir Change Hostname via DHCP, da der Hostname eines Servers statisch sein sollte.


Gib als Nächstes ein Passwort für Root ein. Drücke dann die [Tab] Taste bis Next markiert ist und drücke Return.



Die Network Configuration. Zunächst deaktivieren wir die Standard-Firewall. Das ist notwendig um das System auf die ISPConfig Installation vorzubereiten. ISPConfig hat seine eigene Firewall. Wenn Du nicht vorhast ISPConfig zu installieren, lass die Firewall aktiviert. Um Dich in Textmodus zu navigieren, verwende die Tab-und Pfeiltasten. Aktiviere oder deaktiviere die Auswahl indem Du die Return-Taste drückst.


Markiere dann Network Interfaces und drücke Return. Folgender Screen sollte erscheinen:


Drücke die [Tab] Taste bis [Edit] markiert ist, drücke dann Return. Nun solltest Du auf dem Network Address Setup Screen sein:


Ich möchte IP Adressen nicht von einem DHCP Server beziehen, da ein Server statische IP Adressen haben sollte. Also ändere ich das indem ich Static Address Setup wähle und eine IP Adresse (z.B. 192.168.0.181) und eine Subnet Maske (z.B. 255.255.255.0) eingebe:


Gehe dann zu den Hostnamen und Name Server Einstellungen. Der Hostname (server1.example.com) sollte bereits da sein (das haben wir ja bereits zuvor festgelegt). Gib bis zu drei Name Server (z.B. 145.253.2.75, 193.174.32.18 und 194.25.0.60) ein. Leider können wir Update Name Servers und Search List via DHCP nicht deaktivieren - ich glaube, das dies ein Fehler in YaST ist. Drücke danach OK.


Gehe als Nächstes zu Routing und gib das Standard-Gateway ein. Bei mir ist das 192.168.0.1:



Dann können wir die Konfiguration der Netzwerkkarte verlassen indem wir zweimal Next drücken:



Unsere Netzwerkkonfiguration ist nun abgeschlossen, daher drücken wir auf dem Network Configuration Screen erneut Next:


Die Netzwerkkonfiguration wird gespeichert:


Nun wird die Internetverbindung des Systems getestet und Du kannst Dir die neusten Updates von einem SuSE Spiegel runter laden und installieren. Sei an dieser Stelle etwas geduldig, das kann ein paar Minuten dauern (das Paket Management bei SuSE 10.1 ist ziemlich langsam).




Konfiguriere nun die Online Update Funktion und installiere die neusten Updates, falls verfügbar:





Wenn Du gefragt wirst, wie sich Benutzer authentifizieren sollen, wähle Local (/etc/passwd):


Erstelle einen zweiten Benutzer, der nicht Root ist (z.B. admin):


Lies Dir die Release Notes durch (wenn Du magst...) und drücke Next:


Letztendlich führt YaST einen Hardware-Check durch (Grafikkarten, Drucker, Sound, TV-Karten und Bluetooth). Die Ergebnisse dieses Checks kannst Du so akzeptieren wie sie sind, da diese Hardware für einen Server nicht relevant ist.


Glückwunsch! Deine Basisinstallation ist nun abgeschlossen.


Weiter mit dem nächsten Schritt...

2 Installationsquellen hinzufügen

Um die Paketinstallation zu vereinfachen, werde ich eine Netzwerk-Installationsquelle hinzufügen. Wenn Du alle Pakete von der CD / DVD installieren möchtest, kannst Du diesen Schritt auslassen. Starte yast2:

yast2

Gehe zu Software -> Installation Source:


Wähle Add und gib einen Spiegel in Deiner Nähe ein. Eine Liste von Spiegeln findest Du hier: http://www.opensuse.org/Mirrors_Development_Build.

Ich habe diesen http Spiegel ausgewählt (ja, es ist ein http Spiegel, auch wenn die URL mit ftp startet :-) ):

ftp.uni-erlangen.de/pub/mirrors/opensuse/distribution/SL-10.1/inst-source




Als Server Name, gebe ich ftp.uni-erlangen.de und als Directory on Server gebe ich /pub/mirrors/opensuse/distribution/SL-10.1/inst-source ein:


Schließlich verschiebe ich meine neue Installationsquelle an den Anfang der Liste, damit die Software Pakete bevorzugt mit ihr bezogen werden. Gleichzeitig entferne ich meine SuSE CDs aus der Liste (normalerweise würde es reichen, die CDs einfach von der Liste zu nehmen, aber YaST scheint das als einen Fehler anzusehen - immer als ich die CDs runter bewegt habe, waren sie wieder am Anfang der Liste wenn ich das nächste Mal in YaST war...).


Drücke danach Finish. Du musst jetzt geduldig sein, bei meinen Tests hat es bis zu 10 Minuten (!) gedauert bis YaST die Installationsquelle aktualisiert hat. Während dieser Zeit erschien es mir als würde YaST hängen, aber es hat tatsächlich gearbeitet. Du kannst das in einer zweiten Kommandozeile mit folgendem Befehl überprüfen

tail -f /var/log/YaST2/y2log

Ich habe keine Ahnung, was die SuSE Entwickler mit YaST gemacht haben, aber es ist mit Sicherheit eine üble Veränderung...

3 Einige Software-Pakete installieren

Nun installieren wir einige Pakete, die wir später noch brauchen. Führe dies aus

yast -i findutils readline libgcc glibc-devel findutils-locate gcc flex lynx compat-readline4 db-devel wget gcc-c++

Wenn Du auf einem 64-bit System (und nur dann!) arbeitetst, musst Du openssl-devel-32bit ebenfalls installieren:

yast -i openssl-devel-32bit


4 Quota

Um Quota zu installieren, führe Folgendes aus

yast -i quota

Bearbeite /etc/fstab damit es wie folgt aussieht (ich habe ,usrquota,grpquota der Partition /dev/sda3 (mount point /; Dein Gerätename ist vielleicht /dev/hda2 oder ähnlich) hinzugefügt:

vi /etc/fstab


/dev/sda3            /                    ext3       acl,user_xattr,usrquota,grpquota        1 1
/dev/sda1 /boot ext3 acl,user_xattr 1 2 /dev/sda2 swap swap defaults 0 0 proc /proc proc defaults 0 0 sysfs /sys sysfs noauto 0 0 debugfs /sys/kernel/debug debugfs noauto 0 0 devpts /dev/pts devpts mode=0620,gid=5 0 0 /dev/fd0 /media/floppy auto noauto,user,sync 0 0
Führe dann Folgendes aus:

touch /aquota.user /aquota.group
chmod 600 /aquota.*

und starte das System neu:

shutdown -r now

Nachdem das System wieder hochgefahren ist, aktiviere Quota wie folgt:

quotacheck -avugm
quotaon -avug

5 DNS Server

Führe dies aus

yast -i bind bind-chrootenv bind-devel bind-utils

Dann fügen wir die System Startup Links für BIND hinzu und starten es:

chkconfig --add named
/etc/init.d/named start

Bind wird in einem chroot Gefängnis unter /var/lib/named ausgeführt.

6 MySQL

Um MySQL zu installieren, führen wir Folgendes aus

yast -i mysql mysql-client mysql-shared perl-DBD-mysql perl-DBI perl-Data-ShowTable mysql-devel

Dann fügen wir die System Startup Links für MySQL hinzu und starten es:

chkconfig --add mysql
/etc/init.d/mysql start

Überprüfe nun ob der Netzwerkbetrieb aktiviert ist. Führe Folgendes aus

netstat -tap

In der Ausgabe solltest Du eine Zeile wie diese sehen:
tcp        0      0 *:mysql                 *:*                     LISTEN      6621/mysqld
Wenn Du sie nicht siehst, bearbeite /etc/my.cnf, kommentiere die Option skip-networking aus:

vi /etc/my.cnf


#skip-networking
und starte Deinen MySQL Server neu:

/etc/init.d/mysql restart

Führe Folgendes aus

mysqladmin -u root password yourrootsqlpassword
mysqladmin -h server1.example.com -u root password yourrootsqlpassword

um ein Passwort für den Root-Benutzer anzulegen (sonst kann jeder auf Deine MySQL Datenbank zugreifen!).

7 Postfix mit SMTP-AUTH und TLS

Postfix ist bereits installiert, jedoch müssen wir jetzt Cyrus-SASL installieren:

yast -i cyrus-sasl cyrus-sasl-crammd5 cyrus-sasl-digestmd5 cyrus-sasl-gssapi cyrus-sasl-otp cyrus-sasl-plain cyrus-sasl-saslauthd

Dann fügen wir die System Startup Links für saslauthd hinzu und starten es:

chkconfig --add saslauthd
/etc/init.d/saslauthd start

Danach erstellen wir die Zertifikate für TLS:

mkdir /etc/postfix/ssl
cd /etc/postfix/ssl/
openssl genrsa -des3 -rand /etc/hosts -out smtpd.key 1024
chmod 600 smtpd.key
openssl req -new -key smtpd.key -out smtpd.csr
openssl x509 -req -days 3650 -in smtpd.csr -signkey smtpd.key -out smtpd.crt
openssl rsa -in smtpd.key -out smtpd.key.unencrypted
mv -f smtpd.key.unencrypted smtpd.key
openssl req -new -x509 -extensions v3_ca -keyout cakey.pem -out cacert.pem -days 3650

Als Nächstes konfigurieren wir Postfix für SMTP-AUTH und TLS:

postconf -e 'mydomain = example.com'
postconf -e 'myhostname = server1.$mydomain'
postconf -e 'smtpd_sasl_local_domain ='
postconf -e 'smtpd_sasl_auth_enable = yes'
postconf -e 'smtpd_sasl_security_options = noanonymous'
postconf -e 'broken_sasl_auth_clients = yes'
postconf -e 'smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,check_relay_domains'
postconf -e 'inet_interfaces = all'
postconf -e 'alias_maps = hash:/etc/aliases'
postconf -e 'smtpd_tls_auth_only = no'
postconf -e 'smtp_use_tls = yes'
postconf -e 'smtpd_use_tls = yes'
postconf -e 'smtp_tls_note_starttls_offer = yes'
postconf -e 'smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key'
postconf -e 'smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt'
postconf -e 'smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem'
postconf -e 'smtpd_tls_loglevel = 1'
postconf -e 'smtpd_tls_received_header = yes'
postconf -e 'smtpd_tls_session_cache_timeout = 3600s'
postconf -e 'tls_random_source = dev:/dev/urandom'

Um TLS Verbindungen in Postfix zu erstellen, bearbeite /etc/postfix/master.cf und aktiviere die tlsmgr Zeile sodass es wie folgt aussieht:

vi /etc/postfix/master.cf


tlsmgr    unix  -       -       n       1000?   1       tlsmgr
Starte Postfix neu:

/etc/init.d/postfix restart

Um herauszufinden, ob SMTP-AUTH und TLS richtig funktionieren, führen folgenden Befehl aus:

telnet localhost 25

Nachdem Du die Verbindung zu Deinem Postfix Mail Server aufgebaut hast, gib Folgendes ein

ehlo localhost

Wenn Du die Zeile

250-STARTTLS

und

250-AUTH

siehst, ist alles in Ordnung.


Gib ein

quit

um zur Kommandozeile des Systems zurückzukehren.

8 Courier-IMAP/Courier-POP3

Ich möchte einen POP3/IMAP Daemon verwenden, der Maildir unterstützt. Daher verwende ich Courier-IMAP und Courier-POP3.

yast -i courier-imap fam-server courier-authlib expect tcl

Danach fügen wir die System Startup Links hinzu und starten POP3, IMAP, POP3s und IMAPs:

chkconfig --add fam
chkconfig --add courier-authdaemon
chkconfig --add courier-pop
chkconfig --add courier-imap
/etc/init.d/courier-pop start
/etc/init.d/courier-imap start
chkconfig --add courier-pop-ssl
chkconfig --add courier-imap-ssl
/etc/init.d/courier-pop-ssl start
/etc/init.d/courier-imap-ssl start

Wenn Du ISPConfig nicht verwenden möchtest, konfiguriere Postfix so, dass es E-Mails an eine Maildir* des Benutzers sendet:

postconf -e 'home_mailbox = Maildir/'
postconf -e 'mailbox_command ='
/etc/init.d/postfix restart

*Bitte beachte: Wenn Du vorhast ISPConfig auf Deinem System zu verwenden, musst Du dies nicht tun, da ISPConfig die notwendige Konfiguration mit Hilfe von procmail recipes durchführt. Aber pass bitte auf, dass Maildir unter Management -> Server -> Settings -> EMail im ISPConfig Web Interface aktiviert ist.

9 Apache/PHP5

Nun installieren wir Apache mit PHP5:

yast2 -i apache2 apache2-devel apache2-mod_perl apache2-mod_php5 apache2-prefork perl-HTML-Parser perl-HTML-Tagset perl-Tie-IxHash perl-URI perl-libwww-perl php5 php5-devel zlib zlib-devel

Dann installieren wir einige PHP5 Module:

yast2 -i php5-bcmath php5-bz2 php5-calendar php5-ctype php5-curl php5-dbase php5-debuginfo php5-dom php5-filepro php5-ftp php5-gd php5-gettext php5-gmp php5-iconv php5-imap php5-ldap php5-mbstring php5-mcrypt php5-mhash php5-mysql php5-mysqli php5-ncurses php5-odbc php5-openssl php5-pcntl php5-pgsql php5-posix php5-shmop php5-snmp php5-soap php5-sockets php5-sqlite php5-sysvsem php5-tokenizer php5-wddx php5-xmlrpc php5-xsl php5-zlib php5-exif php5-fastcgi php5-pear php5-sysvmsg php5-sysvshm ImageMagick curl

Als Nächstes bearbeiten wir /etc/apache2/httpd.conf:

vi /etc/apache2/httpd.conf

und ändern DirectoryIndex zu
DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php5 index.php4 index.php3 index.pl index.html.var index.aspx default.aspx
Bearbeite /etc/sysconfig/apache2 und füge das Wort rewrite der APACHE_MODULES Zeile hinzu:

vi /etc/sysconfig/apache2


APACHE_MODULES="actions alias auth_basic [...] negotiation setenvif ssl suexec userdir php5 rewrite"
Füge auch SSL der APACHE_SERVER_FLAGS Zeile hinzu:
APACHE_SERVER_FLAGS="SSL"
Konfiguriere Dein System nun so, dass es Apache beim Hochfahren startet:

chkconfig --add apache2

Führe dann Folgendes aus

SuSEconfig
/etc/init.d/apache2 start

9.1 PHP und Perl global deaktivieren

(Wenn Du nicht vorhast ISPConfig auf diesem Server zu installieren, bitte überspringe diesen Abschnitt!)

In ISPConfig wirst Du PHP und Perl pro Webseite konfigurieren, d.h. Du kannst festlegen, welche Webseite PHP und Perl Skripte ausführen kann und welche nicht. Das funktioniert nur, wenn PHP und Perl global deaktiviert ist, da sonst alle Webseiten in der Lage wären, PHP/Perl Skripte auszuführen, ganz gleich was Du in ISPConfig festlegst.

Um PHP und Perl global zu deaktivieren, bearbeiten wir /etc/mime.types und kommentieren die application/x-perl und application/x-php Zeile aus:

vi /etc/mime.types


#application/x-perl pl pm al perl
#application/x-php php php3 php4
Danach starten wir Apache neu:

/etc/init.d/apache2 restart


10 Proftpd

Ich möchte Proftpd anstelle von vsftpd verwenden, was SuSEs Standard FTP Server ist, da die Control Panel Software, die ich auf diesem Server installieren werde (ISPConfig), Proftpd auf SUSE 10.1 (auf anderen Distributionen ist das anders) verlangt. Da es für Proftpd keine SUSE Pakete gibt, muss ich es manuell kompilieren:

cd /tmp/
wget --passive-ftp ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.0.tar.gz
tar xvfz proftpd-1.3.0.tar.gz
cd proftpd-1.3.0/
./configure --sysconfdir=/etc
make
make install
cd ..
rm -fr proftpd-1.3.0*

Erstelle nun die Datei /etc/init.d/proftpd:

vi /etc/init.d/proftpd


#! /bin/sh
# Copyright (c) 2000-2001 SuSE GmbH Nuernberg, Germany. # All rights reserved. # # Original author: Marius Tomaschewski <mt@suse.de> # # Slightly modified in 2003 for use with SuSE Linux 8.1, # by http://www.learnlinux.co.uk/ # # Slightly modified in 2005 for use with SuSE Linux 9.2, # by Falko Timme # # /etc/init.d/proftpd # ### BEGIN INIT INFO # Provides: proftpd # Required-Start: $network $remote_fs $syslog $named # Required-Stop: # Default-Start: 3 5 # Default-Stop: 0 1 2 6 # Description: Starts ProFTPD server ### END INIT INFO# Determine the base and follow a runlevel link name. base=${0##*/} link=${base#*[SK][0-9][0-9]} # Force execution if not called by a runlevel directory. test $link = $base && START_PROFTPD=yes # Modified by learnlinux.co.uk test "$START_PROFTPD" = yes || exit 0 # Modified by learnlinux.co.uk # Return values acc. to LSB for all commands but # status (see below): # # 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 proftpd_cfg="/etc/proftpd.conf" proftpd_bin="/usr/local/sbin/proftpd" proftpd_pid="/usr/local/var/proftpd.pid" [ -r $proftpd_cfg ] || exit 6 [ -x $proftpd_bin ] || exit 5 # Source status functions . /etc/rc.status # First reset status of this service rc_reset case "$1" in start) echo -n "Starting ProFTPD Server: " test -f /etc/shutmsg && rm -f /etc/shutmsg /sbin/startproc $proftpd_bin rc_status -v ;; stop) echo -n "Shutting down ProFTPD Server: " test -x /usr/local/sbin/ftpshut && /usr/local/sbin/ftpshut now && sleep 1 /sbin/killproc -TERM $proftpd_bin test -f /etc/shutmsg && rm -f /etc/shutmsg rc_status -v ;; restart) ## If first returns OK call the second, if first or ## second command fails, set echo return value. $0 stop $0 start rc_status ;; try-restart) ## Stop the service and if this succeeds (i.e. the ## service was running before), start it again. ## Note: not (yet) part of LSB (as of 0.7.5) $0 status >/dev/null && $0 restart rc_status ;; reload|force-reload) ## Exclusive possibility: Some services must be stopped ## and started to force a new load of the configuration. echo -n "Reload ProFTPD Server: " /sbin/killproc -HUP $proftpd_bin rc_status -v ;; status) # Status has a slightly different for the status command: # 0 - service running # 1 - service dead, but /var/run/ pid file exists # 2 - service dead, but /var/lock/ lock file exists # 3 - service not running echo -n "Checking for ProFTPD Server: " checkproc $proftpd_bin rc_status -v ;; probe) ## Optional: Probe for the necessity of a reload, ## give out the argument which is required for a reload. [ $proftpd_cfg -nt $proftpd_pid ] && echo reload ;; *) echo "Usage: $0 {start|stop|status|restart|reload|try-restart|probe}" exit 1 ;; esac # Set an exit status. rc_exit
Führe dann dies aus

chmod 755 /etc/init.d/proftpd
chkconfig --add proftpd

Starte Proftpd:

/etc/init.d/proftpd start

Aus Gründen der Sicherheit kannst Du folgende Zeilen /etc/proftpd.conf hinzufügen:

vi /etc/proftpd.conf


DefaultRoot ~
IdentLookups off ServerIdent on "FTP Server ready."
Pass auf, dass Du folgende Zeilen auskommentierst um ftp Benutzern CHMOD zu erlauben:
# Bar use of SITE CHMOD by default
#<Limit SITE_CHMOD> # DenyAll #</Limit>
und starte Proftpd neu:

/etc/init.d/proftpd restart


11 Webalizer

Um Webalizer zu installieren, führe Folgendes aus

yast2 -i webalizer


12 Die System Uhr synchronisieren

Wenn Du die System Uhr mit einem NTP Server synchronisieren möchtest, führe Folgendes aus:

yast2 -i xntp

Füge einen NTP Server mit YaST hinzu:

yast2

Wähle Network Services -> NTP Client:


Wähle dann Automatically Start NTP Daemon During Boot. Aktiviere unter NTP Server Configuration Use Random Servers from pool.ntp.org. Wähle dann Finish und Quit.

13 Installiere einige Perl Module, die von SpamAssassin (in ISPConfig) benötigt werden

Führe dies aus

yast2 -i perl-HTML-Parser perl-Net-DNS perl-Digest-SHA1


14 AppArmor deaktivieren

AppArmor ist eine Sicherheitserweiterung von SuSE (ähnlich wie Fedoras SELinux). Meiner Meinung nach brauchst Du ein sicheres System nicht zu konfigurieren. Für gewöhnlich verursacht das mehr Probleme als dass es Vorteile schafft. Daher deaktiviere ich es (das ist ein Muss wenn Du später ISPConfig installieren möchtest).

So können wir es deaktivieren:/etc/init.d/boot.apparmor stop
chkconfig -d boot.apparmor

15 ISPConfig

Die Konfiguration des Servers ist nun abgeschlossen. Wenn Du magst, kannst Du nun ISPConfig installieren. Sieh Dir dazu bitte die Installation von ISPConfig an: http://www.ispconfig.org/manual_installation.htm

15.1 Eine Notiz über SuExec

Wenn Du CGI Skripte unter suExec ausführen möchtest, solltest Du /srv/www als das Home Verzeichnis für Web Sites festlegen, die von ISPConfig erstellt werden, da OpenSuSE 10.1s suExec mit /srv/www as Doc_Root erstellt wird. Führe /usr/sbin/suexec2-V aus und die Ausgabe sollte wie folgt aussehen:

/usr/sbin/suexec2 -V


Um /srv/www als Home Verzeichnis für Webseiten während der Installation von ISPConfig auszuwählen, führe Folgendes aus: Wenn Du nach dem Installations-Modus gefragt wirst, wähle den Expertenmodus.


Später, während der Installation wirst Du gefragt, ob das Standard-Verzeichnis /home/www das Verzeichnis sein soll, in dem ISPConfig Webseiten erstellen soll. Antworte mit n und gib /srv/www als das Home Verzeichnis für Webseiten an.

16 Links