Apache2 wird als HTTP/S Server eingesetzt.
# apt-get install apache2 libapache2-mod-php5 php5-cli php5-gd php5-common php5-suhosin libapache2-mod-perl2
Grundsätzliche Einstellungen lassen sich in /etc/apache2/apache2.conf
erledigen.
Damit mod_perl funktioniert muss folgendes in die apache2.conf:
PerlModule ModPerl::Registry <Files *.pl> AddHandler perl-script .pl PerlSendHeader On PerlResponseHandler ModPerl::Registry Options +ExecCGI </Files>
Virtuelle Hosts werden in /etc/apache2/sites-available/default
konfiguriert.
NameVirtualHost *
<VirtualHost *> ServerName www.server.de ServerAlias server.de ServerAdmin webmaster@server.de DocumentRoot /var/www/server.de <Directory /> Options -Indexes FollowSymLinks AllowOverride All </Directory> ErrorLog /var/log/apache2/error-server.de.log LogLevel warn CustomLog /var/log/apache2/access-server.de.log combined ServerSignature Off </VirtualHost>
# ln -s /etc/apache2/sites-available/default /etc/apache2/sites-enabled/default
Nach Änderungen an der Apache Konfiguration muss der Apache Daemon neu initialisiert werden:
# /etc/init.d/apache2 reload
Um SSL nutzen zu können, benötigt man ein Zertifikat. Dies kann man entweder selbst erstellen und signieren oder von eines von einer Certificate Authority verwenden.
CACert bietet kostenlose Zertifikate an und basiert auf einem Web-Of-Trust. Wenn man einen Account bei CACert hat, kann dort seinen CSR (Certificate Signing Request) signieren lassen.
openssl req -new -key zertifikatname.key -out zertifikatname.csr
openssl genrsa -out zertifikatname.key 1024
Hat man dann ein signiertes Zertifikat, kann man es wie folgt in einen Virtual Host einbauen.
Dies wird in /etc/apache2/sites-available/default-ssl
vorgenommen.
NameVirtualHost *:443 <VirtualHost *:443> SSLEngine on SSLCertificateFile /etc/apache2/sslcert/CACert.crt SSLCertificateKeyFile /etc/apache2/sslcert/privkey.pem SSLProtocol all SSLCipherSuite HIGH ServerName www.server.de ServerAdmin webmaster@server.de ServerAlias server.de DocumentRoot /var/www/server.de <Directory /> Options -Indexes FollowSymLinks AllowOverride All </Directory> ErrorLog /var/log/apache2/error-server.de.log LogLevel warn CustomLog /var/log/apache2/access-server.de.log combined ServerSignature Off </VirtualHost>
# ln -s /etc/apache2/sites-available/default-ssl /etc/apache2/sites-enabled/default-ssl