DirectAdmin installs and works great with Digital Ocean VPS, and Amazon AWS.
Are you trying to Install DirectAdmin in ec2? We can help you.
Here at Ibmi Media, as part of our Server Management Services, we regularly help our Customers to perform related AWS queries.
In this context, we shall look into the process of installing DirectAdmin.
The prerequisite to perform this installation is given below.
1. Launch EC2 instance
Then, login to your AWS EC2 serevr via SSH.
2. Perform System Update and install Perl, Nano and Wget
To do this, execute the below commands:
$ sudo yum -y update
$ sudo yum -y install nano wget perl
3. Enable SSH
Then, enable SSH for root account.
$ sudo nano /etc/ssh/sshd_config
Set PermitRootLogin yes
Set AllowTcpForwarding no
Edit this the authorized_keys to allow login via root account:
$ sudo nano /root/.ssh/authorized_keys
Then delete the lines at the begining of the file that say "COMMAND…" until you get to the words ssh-rsa
Finally, Restart SSH:
$ sudo service sshd restart
4. Configure hostname
Assume the domain is hosting.abc, and you want your server hostname set to server1.hosting.abc.
hostnamectl set-hostname server1.hosting.abc
Check if the /etc/hostname shows the hostname:
$ nano /etc/hostname
We also edit /etc/hosts to make the hostname point to the server IP:
$ nano /etc/hosts
then add xxx.xxx.xxx.xxx server1.hosting.abc at the end where xxx.xxx.xxx.xxx is your server public IP
AWS will reset the hostname everytime the server reboot, so we need to fix this:
$ nano /etc/cloud/cloud.cfg
and add preserve_hostname: true below the syslog_fix_perms
Then reboot the server:
$ reboot
5. Activate Quotas
By default, AWS EC2 use private IP for eth0, to install DirectAdmin, we need to use the public IP:
$ nano /etc/sysconfig/network-scripts/ifcfg-eth0:0
Enter the following content:
DEVICE=eth0:0
BOOTPROTO=none
ONPARENT=yes
IPADDR=xxx.xxx.xxx.xxx
NETMASK=255.255.255.0
ONBOOT=yes
where xxx.xxx.xxx.xxx is your AWS Public IP, then restart the network:
$ /etc/init.d/network restart
If you wish to you IPv6, set your eth0 live below:
IPV6INIT="yes"
IPV6ADDR=2600:1f16:xxxxxxxxxxxx
6. Setup DirectAdmin
Finally, setup DirectAdmin:
echo 1 > /root/.lan
wget http://www.directadmin.com/setup.sh
chmod 755 setup.sh
./setup.sh
Since EC2 runs on a LAN/NAT and behind the firewall, we need to do some configuration.
Follow the steps given below.
1. Enable LAN
Run the below command:
$ nano /usr/local/directadmin/conf/directadmin.conf
2. Open ports for FTP
If you use ProFTPD, edit it’s configure file:
$ nano /etc/proftpd.conf
Add after PassivePorts: MasqueradeAddress xxx.xxx.xxx.xxx where xxx.xxx.xxx.xxx is your AWS Public IP
Add rule to the iptables:
$ iptables -I INPUT -p tcp --dport 35000:35999 -j ACCEPT
$ nano /usr/libexec/iptables/iptables.init
add $IPTABLES -A INPUT -p tcp --dport 35000:35999 -j ACCEPT below the ftp section, like this:
#########################
# ftp
$ IPTABLES -A INPUT -p tcp --dport 21 -j ACCEPT
$ IPTABLES -A INPUT -p tcp --dport 35000:35999 -j ACCEPT
This article covers the steps involved in installing DirectAdmin in EC2. In fact, An EC2 instance is nothing but a virtual private server in Amazon Web Services terminology. It stands for Elastic Compute Cloud server. It is a web service where an AWS subscriber can request and provision a compute server in AWS cloud.