Hoe installeer ik DirectAdmin op een Virtuele Server?

  Administratie

DirectAdmin is een programma waarmee u zelf een webhosting-server kunt opstarten.
Er zijn verschillende redenen om hiervoor te kiezen. Redenen kunnen bijvoorbeeld zijn:

  • * U maakt en onderhoud websites voor klanten, en wilt deze klanten zelf het beheer van e-mailadressen laten doen.
  • * U hebt een webshop, welke te druk is voor het shared-hostingplatform, maar te klein voor Managed Hosting.
  • * U wilt webhosting, die u makkelijk kunt opschalen bij verwachtte drukte voor bijvoorbeeld kaartverkoop, en terug kunt schalen buiten deze periode.

Aanmaken Cloud Server

We beginnen met het aanmaken van een Cloud Server, en adviseren de volgende eigenschappen voor een kleine tot middelgrote webserver.

OS: CentOS 7.6
Cores: 4
RAM: 4GB
Disk: 100GB

U kunt dit natuurlijk naar eigen inzicht aanpassen.

Als hostname kunt u het beste een subdomein gebruiken.
Voor ons voorbeeld gebruiken we het volgende subdomein: directadmin.hetvoorbeelddomein.xyz

Let op: U moet hier een domein gebruiken dat in uw beheer is, zodat u in een volgende stap de DNS naar de Server kan laten verwijzen.

Voor een uitgebreide handleiding voor het aanmaken van een Cloud Server kunt u de volgende handleiding bekijken:

Hoe maak ik een Cloud Server aan binnen het controlepaneel?

Ook moet u op dit moment het domein dat u als Hostname heeft ingesteld aan de server te koppelen.

Hoe kan ik een domeinnaam koppelen aan mijn Server?

Let erop dat u behalve het A record voor het hoofddomein, ook een Wildcard-record (*.domein.tld) voor alle subdomeinen aanmaakt.
Hiervoor adviseren wij een CNAME record, zoals in het volgende screenshot:

DA_Wildcard

Als u mail wilt gaan verzorgen voor het domein, is het verder verstandig een MX-record en een SPF-record in te stellen.
De hele DNS-zone ziet er nu als volgt uit:

DA_DNS_Zone

DirectAdmin licentie verkrijgen

U kunt uw direct-admin licentie direct via DirectAdmin verkrijgen, of via ons.
Wij bieden op het moment van schrijven een licentie aan met onbeperkt domeinen voor 7,- ex btw per maand.
Actuele prijzen vind u onderaan op deze pagina [link].
Als u hiervan gebruik wilt maken kunt u dit via e-mail aanvragen.

We hebben hiervoor de volgende gegevens nodig:

  1. IP-adres van de server
  2. Hostname van de server
  3. Gebruikt OS

Deze gegevens kunt u ook bij DirectAdmin.com invullen, om de licentie te activeren.
Wanneer deze instellingen door u of ons zijn gedaan, kunt u DirectAdmin gaan installeren op de server.
De licentie wordt automatisch opgehaald gedurende de installatie.

Uitgaande mail

Op onze VM’s is poort 25 voor het uitgaande mailverkeer standaard geblokkeerd. Dit, om de veiligheid en integriteit van het platform te waarborgen.
Om deze poort open te zetten gaat u eerst in het controlepaneel naar de server toe, en klikt u bij Outgoing port rules op Add outgoing port rule.

DA_OUTGOING_PORT

De mogelijkheid bestaat, dat deze knop niet beschikbaar is voor u; standaard is poort 25 niet beschikbaar om de integriteit van ons platform te bewaken.
Neem even contact [link] op met ons op om dit voor uw account mogelijk te maken.

Hier vult u bij zowel start port als end port “25” in.

DA_PORT_25

De VPS en het Domein zijn nu klaar om DirectAdmin verder te installeren.

DirectAdmin installeren

Om DirectAdmin te installeren, moet u eerst verbinding maken via SSH. Dit doet u op MacOS en Linux via de Terminal.
Hiervoor gebruikt u het volgende commando, waarbij u hetvoorbeelddomein.xyz vervangt door de domeinnaam die u eerder heeft ingesteld.

ssh root@hetvoorbeelddomein.xyz

Als u geen SSH-key heeft ingesteld, zal de server vervolgens om uw wachtwoord vragen. Daarna bent u ingelogd op de server.

Voor Windows heeft u hier in de regel een apart programma voor nodig, zoals bijvoorbeeld het gratis programma Putty [link].
Ervaring leert, dat dit lastiger is met knippen en plakken van tekst, dus kijk van te voren hoe u dit makkelijker kunt doen.

Het eerste commando dat we op de server geven, is het updaten van alle software op de machine:

yum update && yum upgrade

Er worden een aantal vragen gesteld waarop u allemaal Ja kan antwoorden door “Y” te typen.

Vervolgens gaan we ervoor zorgen, dat de installatie voortaan zelf up-to-date blijft, door de volgende commando’s te geven:

yum install -y yum-cron
sed -i '/apply_updates/s/no/yes/g' /etc/yum/yum-cron.conf
systemctl enable yum-cron
service yum-cron start

Nu alles up-to-date is, gaan we een aantal pakketten (programma’s) installeren welke nodig zijn voor DirectAdmin.
U kunt de volgende regels geheel kopiëren en plakken.

yum install wget tar gcc gcc-c++ flex bison make bind bind-libs bind-utils openssl openssl-devel perl quota libaio \
libcom_err-devel libcurl-devel gd zlib-devel zip unzip libcap-devel cronie bzip2 cyrus-sasl-devel perl-ExtUtils-Embed \
autoconf automake libtool which patch mailx bzip2-devel lsof glibc-headers kernel-devel expat-devel \
psmisc net-tools systemd-devel libdb-devel perl-DBI perl-Perl4-CoreLibs perl-libwww-perl xfsprogs rsyslog logrotate crontabs file kernel-headers

Eventuele vragen kunt u weer met “Y” beantwoorden.

De volgende drie commando’s halen het installatiebestand op van DirectAdmin, veranderen de rechten, en installeren het.
De laatste stap kan een tijdje duren.

wget -O setup.sh https://www.directadmin.com/setup.sh
chmod 755 setup.sh
./setup.sh auto

Wanneer de melding komt, dat alles geïnstalleerd is kunt u in de terminal iets omhoog scrollen om het wachtwoord om in te loggen terug te vinden.
In ons geval gaat het om de volgende informatie:

Admin username: admin
Admin password: [******************]
Admin email: admin@hetvoorbeelddomein.xyz

De link om in te loggen is uw domein met daarachter “:2222”, in ons geval dus http://hetvoorbeelddomein.xyz:2222

Mocht u per ongeluk de terminal al gesloten hebben, of om een andere reden de informatie niet opgeslagen hebben, kunt u het wachtwoord opnieuw instellen.
Log daarvoor in via SSH, en geef het volgende commando:

passwd admin

Beveiliging

De volgende stappen beveiligen de DirectAdmin server.

Beveiligen tegen DNS AMP aanvallen

Bind (nameserver) staat standaard recursion toe, dat MOET uit.
Anders ben is de machine kwetsbaar voor dns amp attacks, wat een reden kan zijn de machine te blokkeren of uit te schakelen.

Via SSH opent u het configuratie bestand voor wijzigingen met het volgende commando.

nano /etc/named.conf

Zoek de volgende regel:

// recursion yes;

Vervang deze regel door de volgende. Let erop dat u de “//” weghaalt aan het begin van de regel.

recursion no;

SSL/HTTPS activeren

Om ervoor te zorgen dat de beheer-pagina beveiligd is met een SSL certificaat, gaan we via SSH de volgende commando’s uitvoeren.
Let erop dat u directadmin.hetvoorbeelddomein.xyz vervangt door uw eigen subdomein.

Eerst gaan we handmatig het certificaat aanmaken:

cd /usr/local/directadmin/scripts && ./letsencrypt.sh request_single directadmin.hetvoorbeelddomein.xyz 4096

Als het goed is gegaan, ziet u als laatste de volgende regel:

Certificate for directadmin.hetvoorbeelddomein.xyz has been created successfully!

Daarna gaan we ervoor zorgen dat het certificaat ook daadwerkelijk gebruikt wordt:

cd /usr/local/directadmin
./directadmin set ssl 1 \
./directadmin set carootcert /usr/local/directadmin/conf/carootcert.pem \ 
./directadmin set ssl_redirect_host directadmin.hetvoorbeelddomein.xyz
service directadmin restart

Twee-factor-authenticatie (2FA) activeren

Met de gebruiker admin kunt u alle instellingen en websites beheren op uw DirectAdmin-installatie.
Het is dan ook verstandig om deze te beveiligen met 2FA. U kunt deze stap eventueel overslaan.
Voor meer informatie over 2FA kunt u het volgende artikel bekijken:

Twee-factor-authenticatie (2FA) activeren

Wanneer u ingelogd bent, klik u bovenin op het pijltje naast de gebruikersnaam, en kiest u de optie Password

DA_Password

Vervolgens klikt u op Two-Step Authentication en genereert u een Secret.
Er komt een QR-code in beeld, die u kunt scannen met uw 2FA-app naar keuze.

DA_QR_SECRET

U wordt automatisch uitgelogd om opnieuw in te loggen met 2FA.

Hoofddomein toevoegen

Als laatste gaan we het hoofddomein nog toevoegen binnen DirectAdmin.
Dit beheer gebeurd op “User-Level”, en hiervoor moet u bovenin het “Acces-level” aanpassen.

DA_admin_user

Vervolgens gaat u bovenin naar Account Manager -> Domain Setup

DA_Domain_setup

Hier hoeft u enkel het domein nog in te vullen, en onderin op Create te klikken.

DA_create_domain

Uw DirectAdmin is nu klaar voor gebruik!

U kunt via de Account Manager de FTP-gegevens vinden, een Database aanmaken, en SSL-certificaten verstrekken.
Voor meer informatie over het gebruik van DirectAdmin zelf, kunt u hun uitgebreide Forum [link] bekijken.