Nieuwe DirectAdmin thema beschikbaar: Evolution

Eindelijk na jaren tijd is er een nieuwe thema ontwikkeld die de wat ouderwetse Enhanced thema vervangt. Ze waren vorig jaar al bezig met het ontwikkelen van de thema en en hebben het vandaag uitgebracht.

Enhanced thema DirectAdmin DirectAdmin Enhanced thema dashboard
Enhanced dashboard (oude thema) Evolution dashboard thema

Na het uitvoeren van de volgende stappen op de server wordt de thema Evolution beschikbaar:

cd /usr/local/directadmin/data/skins
mkdir evolution
cd evolution
wget http://demo.directadmin.com/download/evolution.tar.gz
tar -xvzf evolution.tar.gz
cd /usr/local/directadmin/data/skins
mv enhanced enhancedORG
mv evolution enhanced

Ga naar de DirectAdmin panel (https://domeinnaam:2222) en login met je inloggegevens.

SSL Config aanbevolen security instellingen

De onderstaande settings in SSL Config zijn aanbevolen om de security level zo hoog mogelijk te blijven:

Invoegen/aanpassen in bestand:
/usr/local/directadmin/custombuild/configure/ap2/conf/extra/httpd-ssl.conf

SSLProtocol All -SSLv2 -SSLv3 -TLSv1
SSLHonorCipherOrder On
SSLCipherSuite ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256


Vervolgens volgende uitvoeren:
service httpd restart

Of als custombuild in directadmin, dan hetvolgende uitvoeren:
cd /usr/local/directadmin/custombuild
./build rewrite_confs

CAA dns records instellen voor DirectAdmin

CAA  record is een DNS record waarmee de domeineigenaar kan aangeven welke CA certificaten er uitgegeven mogen worden voor jouw domeinnaam.

Om CAA records te kunnen aanmaken in de DNS instellingen van een domeinnaam dient eerst de CAA records optie toegevoegd worden in DirectAdmin,

dit kan door het onderstaande in de /user/local/directadmin/conf/directadmin.conf te plaatsen:

dns_caa=1

Herstart vervolgens Directadmin:

service directadmin restart

 

Voeg CAA DNS records toe in DirectAdmin, door naar Server Manager en vervolgens naar DNS Administration te gaan.

Hieronder een voorbeeld van een CAA record waarvan de SSL door Letsencrypt is uitgegeven:

Name TTL Type Value
@ 5 Min. CAA 0 issue “letsencrypt.org”

DNS CAA record with SSL Letsencrypt

 

Mocht je ook je daarnaast ook een mail willen ontvangen als een SSL certificaat is aangevraagd door een CA wat niet in de DNS records staan dan kun je de tag iodef gebruiken. Hieronder een voorbeeld:

Name TTL Type Value
@ 5 Min. CAA 0 iodef “mailto:kieseenmail@sccmblog.nl”

DNS CAA record iodef

 

RFC6844 – DNS Certification Authority Authorization (CAA) Resource Record

HSTS header toevoegen in DirectAdmin

HSTS header: HTTP Strict Transport Security

Voeg de onderstaande regel toe aan /user/local/directadmin/conf/directadmin.conf:

SSL=1
hsts=5184000

Als de bovenstaande regel is ingevoerd en de services is gereboot, en de waarde van hsts groter of gelijk aan 0 is, dan zal de header ingesteld worden met de onderstaande waarde (max-age van 1 jaar):
Strict-Transport-Security: max-age=31536000

LET OP: deze waarde wordt nu alleen toegevoegd aan de inlogpagina van DirectAdmin.

Wil je de HSTS header ook toevoegen aan een domeinnaam, dan zul je per domeinnaam de onderstaande twee regels moeten toevoegen aan het .htaccess bestand:

Apache .htaccess Code Directive
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"

Installeer DKIM voor DirectAdmin

  1. Voer de onderstaande stappen in de commandline:
    cd /usr/local/directadmin
    ./directadmin set dkim 2
  2. Activeer het in de exim configuratie en exim zelf:
    cd /usr/local/directadmin/custombuild
    ./build update
    ./build exim
    ./build eximconf
  3. Zet het voor de benodigde gebruikers aan in de DirectAdmin paneel onder:
    User Level -> E-Mail Accounts -> Enable DKIM

Of voer de onderstaande commando uit om DKIM voor alle reeds aanwezige domeinnamen aan te zetten:
echo "action=rewrite&value=dkim" >> /usr/local/directadmin/data/task.queue

Opmerking: De dkim=2 instelling, die bij punt 1 is aangegeven, zal DKIM niet voor een nieuwe domeinnaam activeren wanneer deze wordt aangemaakt. Het maakt echter alleen  deze functie beschikbaar voor de gebruiker, dus de gebruiker dient zelf dan DKIM nog aan of uit te zetten. Bij gebruik van dkim=1 zal DKIM automatisch worden geactiveerd als er een nieuwe domeinnaam wordt aangemaakt binnen DirectAdmin.  Gebruik dkim=1 alleen als de domeinnamen de lokale DNS service gebruiken, dus als voorbeeld  geen aparte PowerDNS server. Als er een externe DNS gebruikt wordt, moeten de DKIM TXT regels gecopieerd worden naar de externe DNS, anders worden de uitgaande e-mails wel gesigneerd alleen zal de dns check mislukken, en dat is een ramp omdat je dan helemaal geen DKIM meer hebt.

IPv6 activeren voor DirectAdmin

Stap 1:
Ga naar /usr/local/directadmin/conf/directadmin.conf en plaats de volgende regel erin:
ipv6=1


Stap 2:
Herstart nu directadmin:
/etc/init.d/directadmin restart
of
services directadmin restart


Stap 3:
Voeg je ipv6 ip bij toe.
Ga in het hoofdscherm van DirectAdmin met het Admin account naar IP Management.

In het blok IP kunt u de verkregen IPv6 nummer opgeven.
Het veld netmask kun je de subnetmask invullen, druk op add IP.

directadmin voeg ip adres toe

 


Stap 4:
Eens toegevoegd klik je in het IP Management hoofdscherm op je huidige ipv4 adres.
Onder “Select an IP to Link to …” kies je het toegevoegde ipv6 IP.
Je houdt de vinkjes aangevinkt en klikt op Link.

DirectAdmin selecteer een ip adres die aan een andere ip adres gekoppeld dient te worden

De webserver is nu klaar om alle websites ook te hosten via ipv6.


Stap 5:
DirectAdmin plaatst automatisch de AAAA records van de DNS instellingen voor alle domeinnamen die al ingevoerd zijn.


Stap 6:
Nu dien je na enkele uurtjes te testen of de DNS instellingen zijn gewijzigd door bijvoorbeeld te pingen:

ping -v6  het ipv6 ipadres

DNSSSEC aanzetten in DirectAdmin

DNSSEC is een tool wat gebruikt wordt om het opvragen van de dns te controleren en valideren.

Je kunt de optie aanzetten in DirectAdmin 1.44.1 en nieuwere versies door het onderstaande uit te voeren:

cd /usr/local/directadmin/scripts
./dnssec.sh install

die zou moeten bevestigen of uw named.conf is ingesteld, en zal dnssec = 1 in directadmin.conf automatisch inschakelen. Als het script denkt dat je iets mist in je named.conf, zal het je vertellen wat je moet toevoegen.

Om DNSSEC op een domein in te schakelen, gaat u naar:

Admin Level -> DNS Admin -> domain.com
Klik op “Generate Keys”
klik vervolgens op  “Sign”


In de zone zouden eruit moeten zien als de waarden die onderaan staan. Kopieer de twee DS-records en plak ze in de website van uw domeinregistrar.
Een voorbeeld van een DS-waarde kan er zo uitzien, met de volgende tags:

Key Tag Algorithm Digest Type Digest
27529 5 1 BF698E47B53CC0B887AAF07B84586ABB289E3AAB


Waar spaties normaal zijn in Digest Type = 2, moet u dus de hele Digest-waarde plakken.
Als u subdomeinen hebt die als volledige domeinen zijn gemaakt, moet u extra stappen volgen om de vertrouwensketen verder te zetten in de zone van het hoofddomein. Voor normale subdomeinen die onder een domein zijn gemaakt, is geen extra actie vereist, omdat ze deel uitmaken van de normale zone van het domein.

Webmail en mysql subdomeinen automatisch instellen bij nieuwe domeinnamen binnen DirectAdmin

DirectAdmin installatie/configuratie

webmail.domain.com en mysql.domain.com als standaard voor nieuwe domeinnamen instellen

Je moet Virtualhost voor apache instellen. Dit kun je doen door een 2e virtualhost toe te voegen naast de standaard domein gedeelte.

# cd /usr/local/directadmin/data/templates
# cp virtual_host2.conf custom
# cd custom

Nu kun je de nieuwe gecopieerde virtual_host2.conf bestand aanpassen en het stukje onder de gestreepte lijn aan het einde toevoegen. Let erop dat je de nieuwe VirtualHost onder de bestaande plaatst!

|?DOCROOT=`HOME`/domains/`DOMAIN`/public_html|
 |?OPEN_BASEDIR_PATH=`HOME`/:/tmp:/usr/local/lib/php/|
 <VirtualHost |IP|:|PORT_80| |MULTI_IP|>
 |CUSTOM|
 |?CGI=ScriptAlias /cgi-bin/ `DOCROOT`/cgi-bin/|
   ServerName www.|DOMAIN|
   ServerAlias www.|DOMAIN| |DOMAIN| |SERVER_ALIASES|
   ServerAdmin |ADMIN|
   DocumentRoot |DOCROOT|
   |CGI|

 .
 .

 </VirtualHost>

--------------------------------------------

 <VirtualHost |IP|:|PORT_80| |MULTI_IP|>
   ServerName webmail.|DOMAIN|
   ServerAdmin |ADMIN|
   DocumentRoot /var/www/html/roundcube
   CustomLog /var/log/httpd/domains/|DOMAIN|.bytes bytes
   CustomLog /var/log/httpd/domains/|DOMAIN|.log combined
   ErrorLog /var/log/httpd/domains/|DOMAIN|.error.log
 </VirtualHost>

 <VirtualHost |IP|:|PORT_80| |MULTI_IP|>
   ServerName mysql.|DOMAIN|
   ServerAdmin |ADMIN|
   DocumentRoot /var/www/html/phpMyAdmin
   CustomLog /var/log/httpd/domains/|DOMAIN|.bytes bytes
   CustomLog /var/log/httpd/domains/|DOMAIN|.log combined
   ErrorLog /var/log/httpd/domains/|DOMAIN|.error.log
 </VirtualHost>

Sla het bestand op en sluit het af. Voer vervolgens het onderstaande uit:

# echo "action=rewrite&value=httpd" >> /usr/local/directadmin/data/task.queue /usr/local/directadmin/dataskq d

Zodat het weggeschreven wordt in de httpd.conf bestand.

Vervolgens dienen de instellingen ook naar de DNS gedeelte overgenomen te worden.

# cd /usr/local/directadmin/data/templates
# cp dns_a.conf custom
# cd custom
# echo "webmail=|IP|" >> dns_a.conf

Er wordt voor de nieuwe dns zone een webmail A record aangemaakt. Voor de bestaande dns zones zal je het zelf nog handmatig de webmail A record naar de domein IP adres moeten toevoegen.

External links

NTP

Het Network Time Protocol of Netwerk tijdprotocol (NTP) is een protocol waarmee computers die onderling met elkaar in verbinding staan, hun interne klok kunnen gelijkzetten aan die van andere computers.

/etc/ntp.conf

server 0.nl.pool.ntp.org
server 1.nl.pool.ntp.org
server 2.nl.pool.ntp.org
driftfile /var/db/ntp.drift

/etc/rc.conf

ntpd_enable="YES"

Vervolgens kun je de tijdzone nog veranderen naar Amsterdam, doormiddel met de volgende commando:

cp /usr/share/zoneinfo/Europe/Amsterdam /etc/localtime