# Appearance: What layouts come with DirectAdmin?

A: DirectAdmin Evolution skin (the default) is written in Vue. On every request, it just makes 1 or a few very light JSON calls for text files.

The Sidebar layout: You can change it live just for your session in "Hello, user" -> "Skin options". This can be set to be the default in Customize Evolution Skin under the reseller level.

You can check a live demo (limited with features and what can be shown/clicked) hereopen in new window.

You can brand the skin easily by changing colors, using a custom logo, and changing menu items (removing/adding new ones) in the Customize Evolution Skin section, too.

# I find "Access Level" switches confusing, may I just show everything in one screen?

Yes, just use Icons Grid layout, and select the Merge Access Levels checkbox.

# Is there any guide on how to use the interface?

Yes there is:
https://site-helper.com/evo/sitehelper.phpopen in new window

# Is there a way to enable a DirectAdmin demo for our customers?

Yes, DirectAdmin natively supports demo mode. You can host a demo site yourself on your hosting server, just like https://www.directadmin.com/evolution.phpopen in new window (click Demo Login).

# Is there a replacement for EasyApache?

Yes, the DirectAdmin subsystem is called CustomBuild. FAQ on it here: http://forum.directadmin.com/showthread.php?t=44743open in new window. For beginners, I'd suggest using a GUI instead of command line for it (see the question/answer section below for more information on the GUI).

# Is there any graphical interface to manage system packages/updates?

Yes, CustomBuild has a plugin for it. For new installs, it is activated by default.

# Is CloudLinux supported?

Yes, all components are tightly integrated into DirectAdmin. It fully supports CloudLinux LVE manager, CageFS manager, CloudLinux PHP Selector, NodeJS Selector, and Python Selector. I recommend choosing lsphp as the PHP mode with CloudLinux, as it's the one recommended by CloudLinux: https://docs.cloudlinux.com/limits/#compatibility-matrixopen in new window

# What about support for other well-known products?

DirectAdmin is supported by most popular billing systems such as WHMCS, Blesta, and ClientExec.

Backup solutions like R1Soft, JetBackup, and ClusterLogics have support for DirectAdmin, too.

CSF Firewall is supported and has a GUI for management from the Admin level.

Softaclous/Installatron auto-installers are supported. ImunifyAV/Imunify360 are supported.

# What WWW servers/PHP modes are supported?

As mentioned in https://www.directadmin.com/technologies.phpopen in new window, DirectAdmin supports LiteSpeed, OpenLiteSpeed, Nginx, and Apache as webservers. Nginx as a reverse proxy of Apache is also supported. PHP-FPM, mod_php (with or without mod_ruid2), fastcgi and lsphp are available as PHP modes.

# Does DirectAdmin have a DNS-only license?

At this moment DirectAdmin requires you to have a normal license for DNS clustering (a cheaper, limited-license option is planned, which should work fine with DNS clustering), however, any of your shared webhosting servers could be used for this. A free alternative for a DNS-only server would be https://directslave.comopen in new window.

# Does DirectAdmin support multiple PHP versions by default?

Yes, it allows up to 4 different versions of PHP to be installed and selected per-domain. CloudLinux is recommended if more versions are needed. In addition to these 4 versions, you get hardened (patched) older versions of PHP, such as PHP version 5.2 😃

# Does DirectAdmin support any kind of clustering?

Yes. DirectAdmin fully supports DNS clustering. For more information: </directadmin/general-usage/multi-server-setup>.

A MySQL remote instance can be specified in the DirectAdmin configuration file, this way, you could have a MySQL cluster without any control panel in your infrastructure. Just insert the IP of the remote MySQL server for DirectAdmin, and it will create/use databases from there onwards.

Mail cluster - Currently proxying is tested the most, where you could use mail.yourdomain.com for all of your hosting servers, and that mail.yourdomain.com will know which host to proxy the request to. A guide for this is here. If you're looking to host your emails on a completely separate host, it's not production-ready yet, but it's a work in progress: https://www.directadmin.com/features.php?id=1745open in new window.

Filesystem cluster - If you'd like your /home files to be stored elsewhere, a manual GlusterFS or CEPH mount would be needed. There is no native support for this yet.

# Does DirectAdmin have any inbound/outbound SPAM protection?

Yes, it offers rspamd, SpamAssassin, and SMTP time checks for inbound SPAM. For outbound protection, mail rate-limiting and BlockCracking (which blocks an email account if they send lots of emails to non-existing recipients) are offered.

# Is there any interface to manage ModSecurity rules?

Currently, it's only available as a plugin with the Comodo (CWAF) free ruleset installed. A GUI is available in the DA admin level.

# Is there any tool/how-to for migration from cPanel?

Yes, please check the following for more information: https://forum.directadmin.com/showthread.php?t=58059&p=296438#post296438open in new window

# Does DirectAdmin have any API?

Yes, it does, and has PHP libraries for that too. Note that any page/information directly in DirectAdmin can be fetched as JSON directly (useful for plugin developers).

# Is there any documentation for plugin development?

Yes, please check the following. I'd suggest checking http://www.custombuild.eu/plugin/custombuild.tar.gzopen in new window as an example of a real-world plugin as it has native Vue integration with the Evolution skin 😃

DirectAdmin also supports "widgets" and "widget-only" plugins. "Vue widget only" example: https://forum.directadmin.com/showthread.php?t=57994open in new window. Another example without Vue (displayed as an iframe): https://forum.directadmin.com/showthread.php?t=43292open in new window.

# Are there any translations available for DirectAdmin?

Yes. At the moment, there is no single place for translations/management, but it should be available soon. Currently, installing a new language is as easy as placing a couple of translation files on the server. You may find many different translations here: https://forum.directadmin.com/forumdisplay.php?f=96open in new window. To create a new language pack, please follow this guide.

# Is it possible to send emails from user-assigned IPs?

Yes, this feature is available since 2015-01, changelog entry: https://www.directadmin.com/features.php?id=1692open in new window. Please note, it was marked as BETA in the changelog for DA 1.47, and is stable in current versions of DA.

# How may we set up a new server with the specific environment we need, instead of changing it after installation?

Please follow the following guide for it.

# Is there an alternative for AutoSSL?

Yes, automated Let's Encrypt.

# Is it easy to set up a smart-host?

Indeed, just a few commands are needed.

# How to set custom php.ini settings?

It depends on the software used.

# Where does DirectAdmin store email data (and where does cPanel do this)?

DirectAdmin stores it here: /home/user/imap/domain.com/email/Maildir/
cPanel: /home/user/mail/domain/email/

Email account configuration (passwords, aliases etc.) are saved in /etc/virtual/domain.com. cPanel stores them in /home/user/etc/domain.com/.

Replacement for /etc/domainusers is /etc/virtual/domainowners on DirectAdmin servers. Local devliery domains are listed in /etc/virtual/domains.

# Where does DirectAdmin store website data?

It is stored in /home/user. Every domain has its own public_html folder. The full path to a domain's public_html: /home/user/domains/domain.com/public_html. Please note that docroot can be customized via the Admin level.

# What's the list of paths used by DA on the system?

Here are all of them: https://www.directadmin.com/paths.phpopen in new window

# We have an email-only server, is there a way to transfer it quickly using rsync and without compressing all emails into backup tarballs?

Check the script from this thread: https://forum.directadmin.com/showthread.php?t=58066&p=296482#post296482open in new window

# How to make webmail.domain.com available, as now only domain.com/webmail works?

Customizations are required and documented here.

# How to make DirectAdmin listen on port 2082 for HTTP requests and port 2083 for HTTPs?

Just set the following settings in the directadmin.conf and restart DirectAdmin:

port=2082
ssl_port=2083
1
2

If you would like to let customers use just the SSL on port 2083, set:

ssl=1
port=2083
1
2

Related help article.

# Does DirectAdmin have any templating system for nginx/openlitespeed/apache configurations?

A: Yes, it does. If you need just a change for a single domain, it's recommended to use Custom HTTPd Configuration from admin level. If you'd like to add a custom block to every website, it can be done this way: https://www.directadmin.com/features.php?id=2155open in new window (real-world example of /usr/local/directadmin/data/templates/custom/cust_httpd.CUSTOM.2.pre here: https://www.litespeedtech.com/support/wiki/doku.php/litespeed_wiki:cache:common_installation:directadmin-sharedopen in new window). If you'd like to re-write a complete template (not recommended, unless you're planning to maintain it).

Regarding global settings, only /etc/httpd/conf/extra/httpd-includes.conf is not touched by

./build rewrite_confs
1

All the other files are always overwritten from /usr/local/directadmin/custombuild/configure/ap2/conf.

If you change something in the configs, for example, /etc/httpd/conf/extra/httpd-mpm.conf, just copy it to /usr/local/directadmin/custombuild/custom/ap2/conf/extra/httpd-mpm.conf, and CustomBuild will always use your customized file. It's also very easy to see what's customized on the system, as you just check /usr/local/directadmin/custombuild/custom for CustomBuild customizations and /usr/local/directadmin/data/templates/custom for custom templates 😃

# How to customize exim/dovecot?

Please check </other-hosting-services/preventing-spam/general/#spamblocker-install-and-extra-modules>. I wouldn't suggest doing direct /etc/exim.conf changes, because then you would need to turn exim configuration updates off 😃 If you'd like to manage it yourself, then there is no problem with setting exim_conf=no in CustomBuild and managing /etc/exim.conf manually.

When editing dovecot configs, the same custom/ structure as mentioned above applies. Copy the config to /usr/local/directadmin/custombuild/custom/dovecot/conf and then you're safe with having config updates enabled.

# What's preferred way to add custom php.ini settings?

Execute "php --ini". It's recommended to place it into the php.conf.d directory, for example, 90-custom.ini. As DirectAdmin does not overwrite the php.ini file, you may edit it directly, but it's not so easy to notice the customizations when you migrate the server, for example.

# How to deploy a new server with Evolution skin settings copied over from our other server?

Evolution stores the custom config in /usr/local/directadmin/data/users/admin/skin_customizations/evolution/ (admin can be a reseller name, so keep this in mind if you'd like to copy reseller's branding). Just copy this directory and you have your settings there.

# How to create custom CustomBuild configuration files correctly?

The /usr/local/directadmin/custombuild/configure/ folder is where DirectAdmin stores its configuration file templates for services (not per-vhost configs, those are stored in /usr/local/directadmin/templates) and loads them to the system after configuration rewrite/updates. Note that /usr/local/directadmin/custombuild/configure/ is always overwritten by DirectAdmin with CustomBuild updates, but there is a way to store these configs permanently.

Anything you find in /usr/local/directadmin/custombuild/configure/, you'd just place it to the same path, just the "configure" part changed to "custom", so, it'd be /usr/local/directadmin/custombuild/custom/.

For example, if you would like to have modified version of /etc/httpd/conf/extra/httpd-mpm.conf, you may find its 'template' is stored in /usr/local/directadmin/custombuild/configure/ap2/conf/extra/httpd-mpm.conf, so, it means you can copy your /etc/httpd/conf/extra/httpd-mpm.conf (or template file from configure/) directly to /usr/local/directadmin/custombuild/configure/ap2/conf/extra/httpd-mpm.conf, to prevent any overwrites with "./build rewrite_confs" or updates.

DirectAdmin will not modify any files placed in /usr/local/directadmin/custombuild/custom/ folder and they will have priority over /usr/local/directadmin/custombuild/configure/ folder.

The /usr/local/directadmin/custombuild/custom/ folder does not exist by default, so you will have to create it (mkdir), and place files there manually.

Please note, we have /etc/httpd/conf/extra/httpd-includes.conf, which is never overwritten, so, you can place anything you want there, too (this is what plugins usually do).

# How to enable skin selection for end-customers?

First, you should enable this option in /usr/local/directadmin/conf/directadmin.conf: https://www.directadmin.com/features.php?id=977open in new window

Value may be changed using:

/usr/local/directadmin/directadmin set user_can_select_skin 1 restart
1

After the change, users could change their skin in: User level -> System Info & Files -> Site Summary / Statistics / Logs -> Edit Account Configuration (button)

# Is it possible to run Backup or Restore using terminal (CLI) instead of using GUI?

Not an elegant way, but yes.

# Does DirectAdmin support realtime quotas?

Yes, and the option is enabled by default now: https://www.directadmin.com/features.php?id=2310open in new window

# How to disable the "Change domain name" functionality?

Just add CMD_CHANGE_DOMAIN to the never_commands list in directadmin.conf. If that's the only function you'd like to disable, it can be done this way:

/usr/local/directadmin/directadmin set never_commands CMD_CHANGE_DOMAIN restart
1

# I have the Enhanced skin set in my packages/accounts, how to switch everything to evolution using the command line?

perl -pi -e 's|skin\=enhanced|skin=evolution|g' /usr/local/directadmin/data/users/*/user.confperl -pi -e 's|docsroot\=./data/skins/enhanced|docsroot=./data/skins/evolution|g' /usr/local/directadmin/data/users/*/user.conf
perl -pi -e 's|skin\=enhanced|skin=evolution|g' /usr/local/directadmin/data/users/*/packages/*.pkg
1
2

# How to forbid layout changes on Reseller or User levels?

Customize Evolution Skin -> Misc. Options -> Forbid users changing the skin layout on user level

For resellers: https://www.directadmin.com/features.php?id=2201open in new window