0 Shares 2975 Views

DirectAdmin Installation Guide

Apr 20, 2013
0 2976

Step 1:  Do you meet the system requirements?


– Clean OS install: check install.html to ensure you’ve got a supported OS

– At least one external IP address (NAT/LAN-based systems will NOT work)

– SSH installed, gcc, g++, openssl-devel installed. Common pre-install commands

Step 2:  Make sure your license information is correct.

Sign into your client account at https://www.directadmin.com/clients and click the “view” link next to your license.

Verify that the server IP address and operating system is correct. Also make sure that the license is Active and Verified (if it isn’t, then our billing system hasn’t processed your order yet).

Step 3:  Begin the installation!


**** SPECIAL NOTICE for non-root ssh logins ****


If logging in as a user other than admin or root (using su to gain root access):


You *must* add “AllowUsers username” to /etc/ssh/sshd_config before you log out from root or you’ll lose root on the server forever, and you’ll have to format.


Login as root and download the setup.sh file


# wget http://www.directadmin.com/setup.sh

Hint: Use “fetch” instead of “wget” on FreeBSD systems.


Change permissions on the setup.sh file


# chmod 755 setup.sh

Run the setup script!


# ./setup.sh

You will be prompted for a client ID number, license ID number, and hostname.  


Important:  The hostname should not be the same as the primary domain name.  e.g. gary.com is not a good hostname, where server.gary.com is.  Having the same host/main domain name will cause e-mail and FTP problems.  Also, please make sure the hostname resolves once you setup DNS.


That’s it!  Please see below if you are installing on a VPS, or wanting to setup DirectAdmin for secure (https://) control panel access.


Special notice for VPS/VDS installs:

After the install, add:


for example, on many vps systems it will be:

other systems where the IP is not the base IP on the device, you’d need to simply set the correct number:

or other systems with the IP on a different device, it might be:

type: /sbin/ifconfig
to see which device your IP is in.
to /usr/local/directadmin/conf/directadmin.conf.

Replace devicename with the FULL devicename reported by ifconfig. If your VDS/VPS system emulates eth0, then you may skip this step.


Setup SSL Certificates:

This step is only required if you wish to use DirectAdmin through SSL. You will also have to change set SSL=1 in the directadmin.conf file:


Named Reload Bug (RedHat 7.2 Only)


Make sure that the /etc/rndc.conf file has the following data for the “server localhost” directive:

# cat /etc/rndc.conf

server localhost {
key “rndckey”;

If you don’t see that anywhere, use an editor such as pico or vi to make the file contain the above text.


Accessing the Control Panel


DirectAdmin can be accessed at http://server.ip.address:2222 — use the Admin username/password specified in the setup.txt file in your scripts directory. 


Dealing with RPM errors

When installing RPMs, errors can sometimes occur. Don’t panic, solving them is usually easy. If you didn’t know what to install during your RedHat installation, you might have installed a few services, such as apache and sendmail. These services must be removed before the rpm will be able to be installed.

For example, lets say you are trying to install exim and you get the following:

# rpm -ivh exim-3.36-2.i386.rpm
Preparing…                 ########################################### [100%]
file /somefile from install of exim-3.36-2 conflicts with file from package sendmail-8.1

This would mean that sendmail is already installed on your server and you must remove it. This can easily be accomplished by running the following:

# rpm -e –nodeps sendmail

Then you will be able to install your rpm. This follows for other services such as apache, apache-devel, wu-ftp, php, MySQL and so forth. If you need to figure out if you already have a service installed, you can run

# rpm -q servicename


# rpm -qa | grep substring

Where substring is just a word. For example, using “apache” might return:

# rpm -qa | grep apache




If you are having trouble with RPMs hanging, please look at:


You may be interested

Most from this category