De meeste beheerders die besluiten om met Linux aan de slag te gaan in hun productie-omgeving, kiezen daarbij voor een van de twee grote commerciële distributies, Red Hat en SuSE. Daarbij wordt vrijwel altijd een supportcontract met de leverancier afgesloten. Op die manier is men verzekerd van onderhoud, ondersteuning, training en andere dienstverlening.

Voor de meest gebruikte grootzakelijke Linux versie, Red Hat Enterprise Linux, zijn echter nog twee alternatieven beschikbaar. Beide zijn exacte kopieën van RHEL, zonder afwijkingen van de originele distributie.

Geen geheimen

De eerste is Oracle Enterprise Linux. Speerpunt daarvan is de bijbehorende onderhoudsdienst die Oracle onder de naam Unbreakable Linux aan de man brengt. Deze is wat goedkoper dan die van Red Hat. Maar omdat er verder geen toevoegingen zijn, is dit RHEL-alternatief eigenlijk alleen interessant voor bestaande Oracle-klanten.

Heb je zelf al voldoende Linux-kennis in huis en durf je het wel aan zonder ondersteuning, dan is CentOS (Community Enterprise Operating System) een aantrekkelijke optie. Dat kost namelijk helemaal niets. Voor wie al bekend is met RHEL heeft deze distributie geen geheimen.

Net als Oracle Enterprise Linux is CentOS exact hetzelfde als RHEL. Men heeft ook hier om juridische redenen de originele merknaam, de logo's en alle verwijzingen naar Red Hat eruit moeten slopen. De leden van de CentOS community refereren dan ook steevast naar Red Hat als de ‘Prominent North American Enterprise Linux Vendor’. Ten slotte laat ook de actualiteit van CentOS niets te wensen over. De laatste releases verschenen binnen een maand nadat Red Hat met zijn nieuwe versie uitkwam.

Bug report

Ga je inderdaad met CentOS aan de slag, dan biedt de installatie verder geen verrassingen. Wel heeft CentOS een voorkeur voor yum (RPM package management) als vervanger van up2date. Voor het opzetten van een internetserver gebruikten we gewoon de meegeleverde versies van vsftp, BIND en MySQL. Wel voegden we software RAID, user quota en Extended Attributes en Access Control Lists (EA/ACL) aan het file system toe. De netwerkconfiguratie is rommelig (vanwege de hooks voor de grafische Network Configuration tool), maar dat is al zo lang het geval dat we er inmiddels aan gewend zijn.

Vervelender is dat de configuratietemplate die met BIND wordt meegeleverd niet deugt, maar dat is niet de schuld van CentOS. Na een bug report bij Red Hat heeft de maintainer beloofd deze te verbeteren in Fedora versie 9.

qmail

Sendmail, de traditionele MTA (Mail Transport Agent) op elke Unix-smaak, hebben we eruit geconfigureerd. Daarvoor in de plaats kwam qmail, een alternatief dat zowel sneller als veiliger is, en bovendien (als eenmaal geïnstalleerd) gemakkelijker en flexibeler te configureren en te beheren.

Voordat het zo ver is, moet wel eerst een hoop werk worden verzet. Behalve (net)qmail zelf met bijbehorende patches, installeer je namelijk ook ucspi-tcp, de daemontools, vpopmail (virtuele mail users), ezmlm (mailing list manager), een autoresponder, vacation, Courier IMAP (IMAP en POP server, met famin en authlib), ClamAV (virusscanner), SpamAssassin (spamfilter) en simscan (een C-gebaseerde opvolger van Qmail-Scanner, om ClamAV en SpamAssassin aan qmail te koppelen).

Daarbovenop kun je dan weer verder bouwen met webgebaseerde tools als vqadmin (beheer vpopmail), QmailAdmin (beheer qmail), qmailmrtg (mailstatistieken) en SquirrelMail (web-based mailclient).

suexec

Ook over de standaard meegeleverde Apache webserver waren we niet helemaal tevreden. Die hebben we echter niet opnieuw gebouwd maar aangepast. Zo werden naast de standaard modulen ook GeoIP, mod_guard, mod_evasive20 en eAccelerator (een PHP accelerator) geïnstalleerd.

Daarnaast hadden we een probleem met de meegeleverde suexec module. Deze is zo gecompileerd dat CGI-directory’s alleen onder de directory /var/www/cg-bin/ kunnen bestaan. Hoewel dat vanuit veiligheidsoverwegingen natuurlijk een goed idee is, zit het in de weg als je meerdere websites met elk hun eigen document root op dezelfde server wilt draaien. Of, zoals in ons geval, als je CGI-toepassingen in de /usr/local/ hiërarchie wilt installeren.

Dat betekent dat we deze module opnieuw moesten compileren met de optie --suexec-docroot=/. Daarvoor hebben we de source RPM van Apache binnengehaald en de .spec file aangepast. Na hercompilatie (rpmbuild) hoeven we alleen de module uit de binaire RPM te vissen (cpio) en op de juiste plaats te zetten.

Speeltuin

CentOS is een mooi alternatief voor wie op zoek is naar een robuust serverplatform. Wil je het zonder Red Hat kunnen doen, dan dien je wel zelf over voldoende Linux-expertise te beschikken. Wat dat betreft komt ook ervaring met Fedora, de ontwikkelspeeltuin voor de commerciële Red Hat distributies, goed van pas. Die bevat de laatste versies van alle software, maar heeft verder exact dezelfde structuur als RHEL.

Met OpenSUSE biedt Novell weliswaar ook een communityversie van zijn Linux-distributie, maar dat heeft een vergelijkbare functie als Fedora. Er blijkt geen gratis versie van hun SLES-distributie (SuSE Linux Enterprise Server) beschikbaar te zijn. Naar verluidt is de leverancier wel bereid om ook servers zonder support met de updates van ondersteunde systemen mee te laten lopen.

Bron: Techworld