KvFG Wiki

Karl-von-Frisch-Gymnasium Dußlingen

Benutzer-Werkzeuge

Webseiten-Werkzeuge


ag:computer:karlchen:webserver

Apache

Apache und PHP installiert:

Unter Debian Lenny:

sudo apt-get install apache2 php5 libapache2-mod-php5

Unter Ubuntu Server:

sudo apt-get install apache2 php5

SSL

Dann SSL aktiviert und neu gestartet:

sudo a2enmod ssl
sudo /etc/init.d/apache2 restart # aeltere Systeme
sudo service apache2 restart # neuere Systeme

Zertifikate eingerichtet:

sudo openssl req -new -nodes -keyout server.key -out server.csr -newkey rsa:2048

FIXME

sudo openssl req -new -nodes -sha256 -keyout server.key -out server.csr -newkey rsa:4096 # Sollte SHA256 liefern

Zertifikat selber signieren:

sudo openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt

Bitte beachten: Es ist relativ Wurscht, was man in die Felder bei Key einträgt - lediglich das Feld

Common Name (eg, your name or your server's hostname)

ist zentral und MUSS die Subdomain und Domain und Toplevel-Domain des Servers enthalten. Also entweder:

www.kvfg.info

oder

karlchen.kvfg.info 

Die Zertifikatdateien müssen nun noch an den richtigen Platz:

sudo mkdir -p /etc/apache2/ssl
sudo mv server.key /etc/apache2/ssl
sudo mv server.crt /etc/apache2/ssl

Die Apachekonfiguration muss angepasst werden, damit der Indianer weiß, wo die Zertifikate zu finden sind:

sudo vi /etc/apache2/sites-available/default-ssl

Wie das geht ist inzwischen weiter unten dokumentiert und unterscheidet sich je nach eingesetztem Betriebssystem etwas.

Im Verzeichnis /etc/apache2/sites-enabled dann einen Link setzen

sudo ln -s ../sites-available/default-ssl 000-default-ssl

default-ssl unter Ubuntu 10.04

Hier ein Auszug aus der default-ssl für Ubuntu 10.04 LTS Server:

NameVirtualHost ip.des.servers:443

<IfModule mod_ssl.c>

<VirtualHost kvfg.info:443>
        ServerAdmin webmaster@localhost
        ServerName kvfg.info:443
        ServerAlias www.kvfg.info:443
        ServerAlias www.kvfg.info:443
        ServerAlias kvfg.info:443
...
         SSLCertificateFile /etc/ssl/certs/server.crt
         SSLCertificateKeyFile /etc/ssl/certs/server.key
         ServerSignature On
...

default-ssl unter Ubuntu 12.04

Ab Ubuntu 12.04 funktioniert das obige Verfahren nicht mehr so glatt, weil der Apache beim Starten motzt. Hier einige Code-Schnipsel mit Informationen zur Einrichtung:

NameVirtualHost ip.des.servers:443

<IfModule mod_ssl.c>
<VirtualHost *:443>
        ServerAdmin admin@domain.tpl
        ServerName  karlchen.kvfg.info:443
        ServerAlias karlchen.kvfg.info:443
        ServerAlias www.karlchen.kvfg.info:443

        SSLCertificateFile /etc/ssl/certs/server.crt
        SSLCertificateKeyFile /etc/ssl/certs/server.key
        ServerSignature On

        DocumentRoot /var/www/dokuwiki

        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/>
                Options -Indexes FollowSymLinks MultiViews
                AllowOverride all
                Order allow,deny
                allow from all
        </Directory>

...

     # Ab hier kommen die Eintraege fuer Eure Unterverzeichnisse

     Alias /mediag /var/www/mediag

     # Ab hier die Eintraege fuer gesicherte Verzeichnisse

     <Directory /usr/lib/cgi-bin/>
        AuthType Basic
        AuthName "AwStats auf Karlchen - Protected Area"
        AuthUserFile /etc/apache2/htaccess/awstats.auth
        require valid-user
     </Directory>

Wenn der ServerName nicht in der apache2.conf steht, dann muss noch in

/etc/apache2/conf.d

eine Datei mit dem Namen fqdn angelegt werden, die den ServerName enthält:

ServerName karlchen.kvfg.info

Dann den Apachen neu starten und es sollte funktionieren.

StartSSL

Am 06.01.2011 wurde bei https://startssl.com ein kostenloses, für ein Jahr gültiges SSL Zertifikat eingefangen, das auch gleich aktiviert wurde. Die Apache Konfiguration hat sich hierdurch wie folgt verändert:

#   SSL Engine Switch:
        #   Enable/Disable SSL for this virtual host.
        SSLEngine on
        SSLCertificateFile /etc/apache2/ssl/kvfginfo.cert
        SSLCertificateKeyFile /etc/apache2/ssl/kvfginfo.key
        SSLCertificateChainFile /etc/apache2/ssl/sub.class1.server.ca.pem
        SSLCACertificateFile /etc/apache2/ssl/ca.pem
        #SSLCertificateFile /etc/ssl/certs/server.crt
        #SSLCertificateKeyFile /etc/ssl/certs/server.key
        ServerSignature On

Die SSL Dateien gehören root und dürfen vom Apachen lediglich gelesen werden.

Beachte: Bei SHA256 Zertifikaten müssen andere intermediäre Zertifikate verwendet werden, die StartSSL hier zur Verfügung stellt: http://www.startssl.com/certs/class2/sha2/pem/sub.class2.server.sha2.ca.pem

Tests

Zum Testen der Einstellungen und auch zum Testen der nun kommenden Mailserverkonfiguration wurde „auf die Schnelle“ ein DokuWiki installiert und damit man das Ding auch findet, die Startseite von https://www.kvfg.info bzw. https://karlchen.kvfg.info angepasst.

php.ini

Die php.ini ist im folgenden Ordner zu finden:

/etc/php5/apache2/php.ini

Hier können Anpassungen für PHP vorgenommen werden, die nach einem Restart des Apachen dann auch gelten.

Sonstige Änderungen

Da einige Verzeichnisse mit .htaccess-Dateien arbeiten, wurde die Unterstützung dafür in folgender Konfigurationsdatei des Apache-Servers aktiviert:

/etc/apache2/site-enabled/000-default
/etc/apache2/site-enabled/000-default-ssl

Eintrag:

        Options -Indexes
        AllowOverride All
        
Durch die Nutzung unserer Seiten erklären Sie sich mit der Verarbeitung Ihrer Daten in der in unserer Datenschutzerklärung niedergelegten Form einverstanden. Datenschutzerklärung ansehen
ag/computer/karlchen/webserver.txt · Zuletzt geändert: 2014/11/04 17:59 von d.weller