SQLite of MySQL
De binaries van OpenDNSSEC in EPEL zijn gecompileerd voor gebruik met SQLite. Hoewel de documentatie het gebruik van SQLite afraadt voor productie-omgevingen, is deze embedded database prima te gebruiken voor kleine tot middelgrote installaties. Voor grotere aantallen domeinen of wanneer je dezelfde database ook op andere manieren wilt gebruiken, kun je beter MySQL gebruiken. Ondanks dat alle informatie met betrekking tot de onderliggende database in de configuratiebestanden wordt gedefinieerd, moet de software daarvoor wel eerst opnieuw gecompileerd worden.
We gebruiken daarvoor de source RPM van OpenDNSSEC, hier te downloaden:
Installeer gelijk de header files voor de dependencies:
yum install ldns-devel CUnit-devel
Zijn er andere, nog niet geïnstalleerde dependencies, dan klaagt rpmbuild
daar vanzelf over. Het is echter belangrijk om de hele build niet als root maar als gewone gebruiker uit te voeren:
rpm -i ./opendnssec-1.4.5-2.el6.src.rpm cd rpmbuild/SPECS/
Edit de file opendnssec.spec als volgt:
Requires: opencryptoki, softhsm, mysql BuildRequires: ldns-devel >= 1.6.13, mysql-devel, openssl-devel %configure --with-ldns=%{_libdir} --with-database-backend=mysql
En bouw de binary RPM opnieuw:
rpmbuild -ba opendnssec.spec
Als dat zonder foutmeldingen gelukt is, dan kunnen we dit pakket op ons systeem installeren:
rpm -Uhv ./rpmbuild/RPMS/x86_64/opendnssec-1.4.5-2.el6.x86_64.rpm
Nadeel van deze aanpak is natuurlijk wel dat updates handmatig uitgevoerd moeten worden. Let bovendien op dat je deze versie bij een update niet overschrijft met een SQLite-versie van OpenDNSSEC afkomstig uit EPEL. Om dat laatste te voorkomen, kunnen yum-gebruikers bijvoorbeeld deze regel toevoegen aan de /etc/yum.conf file:
exclude=opendnssec