DirectAdmin op een virtuele server installeren bij PCX

Gewijzigd op Za, 9 Nov om 9:47 AM

DirectAdmin is een programma waarmee je zelf een webhosting-server kunt opstarten.

Er zijn verschillende redenen om hiervoor te kiezen. Redenen kunnen bijvoorbeeld zijn:

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


Inhoudsopgave

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


Je kunt dit natuurlijk naar eigen inzicht aanpassen.


Als hostname gebruik je het beste een subdomein.

Voor ons voorbeeld gebruiken we het volgende subdomein: directadmin.hetvoorbeelddomein.xyz

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


Voor een uitgebreide handleiding voor het aanmaken van een Cloud Server bekijk je hier de handleiding.



Ook moet je op dit moment het domein dat je als Hostname hebt ingesteld aan de server te koppelen. Lees hier hoe.

Let erop dat je 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:



CNAME record



Als je 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:



DNS Zone


DirectAdmin licentie verkrijgen

Je verkrijgt een DirectAdmin licentie direct via de website van DirectAdmin.


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 ga je eerst in het controlepaneel naar de server toe en klik je bij Outgoing port rules op Add outgoing port rule.

Outgoing port rules

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


Hier vul je bij zowel start port als end port '25' in.



TCP poort



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


DirectAdmin installeren

Om DirectAdmin te installeren, moet je eerst verbinding maken via SSH. Dit doe je op MacOS en Linux via de Terminal.

Hiervoor gebruik je het volgende commando, waarbij je hetvoorbeelddomein.xyz vervangt door de domeinnaam die je eerder heeft ingesteld.

ssh [email protected]


Als je geen SSH-key hebt ingesteld, vraagt de server vervolgens om je wachtwoord. Daarna ben je ingelogd op de server.

Voor Windows heb je hier in de regel een apart programma voor nodig, zoals bijvoorbeeld het gratis programma Putty.
Ervaring leert, dat dit lastiger is met knippen en plakken van tekst, dus kijk van te voren hoe je 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 je 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.

Kopieer de volgende regels geheel en plak het daarna.

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 beantwoord je weer met 'Y'.


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, scroll je in de terminal iets omhoog 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: [email protected]


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

Mocht je per ongeluk de terminal al gesloten hebben, of om een andere reden de informatie niet opgeslagen hebben, kan je 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 is de machine kwetsbaar voor dns amp attacks, wat een reden kan zijn de machine te blokkeren of uit te schakelen.


Via SSH open je 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 je 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 je directadmin.hetvoorbeelddomein.xyz vervangt door je 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, zie je 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 beheer je alle instellingen en websites op je DirectAdmin-installatie.

Het is dan ook verstandig om deze te beveiligen met 2FA. Je kunt deze stap eventueel overslaan.

Voor meer informatie over 2FA bekijk je dit supportartikel.


Wanneer je ingelogd bent, klik je bovenin op het pijltje naast de gebruikersnaam en kies je de optie Password.

Password in het menu kiezen



Vervolgens klik je op 'Two-Step Authentication' en genereer je een Secret.

Er komt een QR-code in beeld, die je kunt scannen met een 2FA-app naar keuze.



QR code voor 2fa



Je 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 je bovenin het 'Acces-level' aanpassen.



Access level user



Vervolgens ga je bovenin naar Account Manager -> Domain Setup

Domain setup



Hier hoef je enkel het domein nog in te vullen en onderin op Create te klikken.



DA_create_domain



Je DirectAdmin is nu klaar voor gebruik!


Je 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, bekijk je hun uitgebreide Forum.

Was dit artikel nuttig?

Dat is fantastisch!

Hartelijk dank voor uw beoordeling

Sorry dat we u niet konden helpen

Hartelijk dank voor uw beoordeling

Laat ons weten hoe we dit artikel kunnen verbeteren!

Selecteer tenminste een van de redenen
CAPTCHA-verificatie is vereist.

Feedback verzonden

We stellen uw moeite op prijs en zullen proberen het artikel te verbeteren