Wondering how to Install DirectAdmin in ec2? We can help you.
Here, at Bobcares, we assist our customers with several AWS queries as part of our AWS Support Services.
Today, let us see how to perform the installation of DirectAdmin.
How to install DirectAdmin in ec2?
Today, let us discuss about the prerequisites and installation procedure followed by our Support Techs.
Prerequisites to Install DirectAdmin in ec2
- Active AWS Account.
- AWS Security Group open on ports 80,995,143,465,53,2222,443,35000-35999,110,1194,993,22,21,25,53,587
- Basic linux knowledge
- DirectAdmin Licnese
Launch EC2 instance
- Firstly, login to AWS Console.
- Then, go to EC2 Dashboard, and click “Launch Instance” button.
- Choose an CentOS 7.
- Choose any Instance type that suit your needs, add storage, configure Security Group then lunch your server.
Installation steps
First and foremost, login to your AWS EC2 serevr via SSH.
- Firstly, update your CentOS and install some basic programs.
sudo yum -y update
sudo yum -y install nano wget perl
- 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
Restart SSH
sudo service sshd restart
- Set your 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
- 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
- Finally, setup DirectAdmin
echo 1 > /root/.lan
wget http://www.directadmin.com/setup.sh
chmod 755 setup.sh
./setup.sh
Configuration of DirectAdmin in ec2
Since EC2 runs on a LAN/NAT and behind the firewall, we need to do some configuration.
Let us see the configuration steps followed by our Support Techs.
Enable LAN
Run the below command
nano /usr/local/directadmin/conf/directadmin.conf
Add this value lan_ip=yyy.yyy.yyy.yyy where yyy.yyy.yyy.yyy is your AWS Private IP
Link the Private IP to your Public IP using the DA Linked IP feature.
Add the LAN IP to DA’s IP manager. Don’t assign it to any Users or Domains.
View the details of the external IP: Admin Level -> IP Manager -> Click the public/external IP.
Link the internal IP to the external IP: Select the LAN IP from the drop down.
Only select Apache, do not select DNS
Then, restart DirectAdmin
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
[Couldn’t complete any of the above? We are here to help you]
Conclusion
In short, today we discussed about the steps followed by our Support Techs to install DirectAdmin in EC2.
0 Comments