Site icon Hazedawn

Centos 8 with DirectAdmin installation checklist

  1. Purchase VPS, VDS or Dedicated server
  2. Purchase DirectAdmin License. You must have to have valid server IP.
  3. Login to server with root
  4. Begin Installation : DirectAdmin
  5. Change permission :
    chmod 755
  6. Run the script :
    ./ auto

    You may run manual installation script as follows:

  7. You will be asked “Would you like to install these required pre-install packages?” Write “Y”
  8. Then put Client ID, License ID and Hostname.
  9. Put ethernet devices
  10. Select your desired apache/php setup. Option 1 is recommended. But CentOS 8 does not support ruid2! So you have to select option 4
  11. DirectAdmin server is ready now! Collect login info from installation terminal. Login DirectAdmin using your IP.
    For example,
  12. If you face problem connecting server, check ethernet device name at /usr/local/directadmin/conf/directadmin.conf and edit if needed. (to see ethernet device name type /sbin/ifconfig

    This may be eth0, venet0:0, eth0:1, eth1 etc.

  13. Install default domain from user panel > Account Manager > Domain Setup (Optional)
  14. Special Note
    1. If you face problem connecting server, check ethernet device name at /usr/local/directadmin/conf/directadmin.conf and edit if needed. (to see ethernet device name type /sbin/ifconfig

      This may be eth0, venet0:0, eth0:1, eth1 etc.

    2. Setup SSL Certificates : LetsEncrypt (may be already installed during installation process)
      1. Enable LetsEncrypt in /usr/local/directadmin/conf/directadmin.conf
      2. Restart DirectAdmin Service with command:
        service directadmin restart
      3. Add the /.well-known Alias:
        cd /usr/local/directadmin/custombuild
        ./build rewrite_confs
      4. Install the most recent version of the script:
        cd /usr/local/directadmin/custombuild
        ./build update
        ./build letsencrypt
        ./build rewrite_confs
    3. Install SSL certicate for server hostname. For example,
      1. LetsEncrypt free certificate
        cd /usr/local/directadmin/scripts
        ./ request_single 4096
      2. Check whether SSL is enabled at /usr/local/directadmin/conf/directadmin.conf. Make it
      3. Now is secured with https.
  15. Other Security measures:
    1. Install CSF (Config Server Firewall) with BFM (Brute Force Monitor) [Follow this]
    2. Change DirectAdmin port from 2222 to your choice. [Follow this]
    3. Change SSH port
      1. Open sshd_config file at /etc/ssh/sshd_config
      2. Change Port 22 to your desired port. For example, Port 231
      3. Restart SSHD service
        systemctl restart sshd.service
    4. Disable direct access to root user. [Follow this]
    5. Change web apps alias (optional)
      1. Create custombuild “custom” directory
        cd /usr/local/directadmin/custombuild
        mkdir -p custom/ap2
        cp -Rp configure/ap2/conf custom/ap2
      2. Then go to the file at /usr/local/directadmin/custombuild/custom/ap2/conf or /usr/local/directadmin/custombuild/custom/ap2/conf/extra
      3. To edit httpd alias we have to edit alias at /usr/local/directadmin/custombuild/custom/ap2/conf/extra/httpd-alias.conf
      4. Change alias to your choice. Original httpd-alias.conf is as below
        Alias /.well-known/acme-challenge /var/www/html/.well-known/acme-challenge
        Alias /config /var/www/html/redirect.php
        Alias /roundcube /var/www/html/roundcube
        Alias /webmail /var/www/html/roundcube
        Alias /phpMyAdmin /var/www/html/phpMyAdmin
        Alias /phpmyadmin /var/www/html/phpMyAdmin
        Alias /pma /var/www/html/phpMyAdmin

        You can change the bold word(s) and also delete any line if you don’t need.

      5. Restart Apache
        sudo systemctl restart httpd.service
      6. Rewrite config
        cd /usr/local/directadmin/custombuild
        ./build update
        ./build rewrite_confs
  16. Other settings and configurations
    1. Increase file upload size from 10 mb to your desired size at Server Manager > Administrator Setting > Server Settings (tab) > Max Request / Upload Size
    2. DirectAdmin allows 4 active php (Can also be done with CustomBuild Build Software)
      cd /usr/local/directadmin/custombuild
      ./build update
      ./build set php1_release 7.1
      ./build set php2_release 5.6
      ./build set php3_release 7.0
      ./build set php4_release 7.3
      ./build set php1_mode php-fpm
      ./build set php2_mode php-fpm
      ./build set php3_mode php-fpm
      ./build set php4_mode php-fpm
      ./build php n
      ./build rewrite_confs

      User can select PHP version on their “Domain Setup”.

    3. Install ClamAV from DirectAdmin Build Software. Edit Options and Build.
      1. If ClamAV not functioning or down, follow quick fix
        perl -pi -e 's|nofork|foreground|g' /etc/systemd/system/clamd.service
        systemctl daemon-reload
        systemctl restart clamd.service
    4. Install SpamAssassin
      1. yum install spamassassin
        chkconfig spamassassin on
        service spamassassin start
      2.  Login to DirectAdmin and enable it from user panel.
    5. Create One-Click login to RoundCube and phpMyAdmin [Follow this]
  17. Enable firewall SELinux
  18. Need Partition? [Follow this]
  19. View Directory Tree Structure In Linux [Follow this]
  20. Host name instead ip address
    • This can be easily done by creating a default domain.
    • This domain will be used in send email too.

File edited: directadmin.conf, csf.conf, sshd_config

Important command line

DirectAdmin Status

systemctl status directadmin.service

DirectAdmin Restart

systemctl restart directadmin.service


service directadmin restart

Restart CSF firewall

csf -r

Restart httpd

sudo systemctl restart httpd.service


systemctl restart sshd.service
Exit mobile version