De indiaan: Apache

 
08 januari 2008

Apache is al jaren de standaard als het om webservers gaat. Hoewel er de laatste tijd andere servers aan die heerschappij knagen, ondersteunt vrijwel geen van allen de onderdelen die in latere gebruikt worden (SVN via WebDAV, Auth via een database). De reden om te kiezen voor Apache 2 in plaats van de nog veel gebruikt 1.3 serie is geheel arbitrair.

Qua installatie zijn we vrij snel klaar: apt-get install apache2

Als je nu naar je server browst, krijg je een grote witte achtergrond met in dikke, vette letters It Works.

Om een en ander te beveiligen, beginnen we bij het activeren van SSL. Om dat te doen, moeten we de volgende stappen doorlopen:

  • apt-get install openssl
  • a2enmod ssl
  • edit /etc/apache2/ports.conf en voeg Listen 443 er aan toe op een nieuwe regel

Genereer nu een SSL-certificaat. Voor een simpele server kun je volstaan met het volgende commando: openssl req -new -x509 -days 365 -nodes -out /etc/apache2/ssl/apache2-cert.pem -keyout /etc/apache2/ssl/apache2-key.pem. Dit levert je een zelf getekend certificaat op. Als je liever een officieel getekend certificaat wil, kun je terecht bij een van de vele VeriSign klonen. Vergeet in ieder geval niet om de key af te schermen voor alle gebruikers behalve die waaronder de web server draait (www-data op Debian).

Als laatste stap volgt nog de configuratie van de sites. Kopieer de file /etc/apache2/sites-available/default naar iets als default-ssl. Voeg in default :80 toe aan de tags NameVirtualHost en VirtualHost. In default-ssl moeten dezelfde tags voorzien worden van :443. Daarnaast moet daar binnen VirtualHost het volgende worden toegevoegd:

SSLEngine on
SSLCertificateFile /etc/apache2/ssl/apache2-cert.pem
SSLCertificateKeyFile /etc/apache2/ssl/apache2-key.pem

Zorg dat de nieuwe site ook beschikbaar gemaakt wordt met a2ensite default-ssl. Apache kan nu herstart worden met /etc/init.d/apache2 force-reload en als je naar https://<server> surft, krijg je dezelfde pagina te zien als eerder bij de niet beveiligde verbinding. Daarmee is de basis gelegd om de overige onderdelen van het systeem te installeren.

Omdat Apache de belangrijkste toegangspoort tot het systeem wordt, kan het geen kwaad om nog wat extra’s te doen voor het beveiligen ervan. Want hoewel Apache qua veiligheid redelijk goed bekend staat is ook Apache niet waterdicht. Om potentiële problemen te voorkomen of de gevolgen te beperken tot een security update beschikbaar is, kan mod-security geinstalleerd worden. Voor een op Debian toegespitste installatie kun je hier terecht; kijk in de comments voor de locatie van een pakket voor Etch. Deze wordt gemaakt door de Debian-maintainer, maar was niet op tijd geschikt voor Etch zelf.


Werken met ?
Kijk dan bij onze mogelijkheden voor starters en/of ervaren IT'ers.


Categorieën: Development

Tags: , ,


Reacties (2)

  • Thomas Zeeman schreef:

    Wat bedoel precies met indianen clonen? Meerdere Apache instanties opzetten op dezelfde server?

    Geplaatst op 15 april 2008 om 14:37 Permalink

  • tjeerd schreef:

    mag ik ook indianen clonen

    Geplaatst op 15 april 2008 om 13:35 Permalink