Install cPanel & WHM on AWS EC2 Instance

how to upgrade kernel in centos 7
How to Upgrade the Linux Kernel on CentOS Server
December 16, 2019
How to Install cPanel on Google Cloud
How to Install cPanel on Google Cloud
December 16, 2019

Install cPanel & WHM on AWS EC2 Instance

Install cPanel & WHM on AWS EC2 Instance

Install cPanel & WHM on AWS EC2 Instance

Install cPanel & WHM on AWS EC2 Instance with CentOS 7

Install cPanel & WHM on AWS EC2 Instance with CentOS 7 and set up Email and Security using Web Host Manager (WHM). This latest version simplifies the WHM setup in just two clicks compared to the installation of the old cPanel version.

cPanel is a server management software for website owners which comes with a 15-day trial.

Click here to activate cPanel License

Steps to install cPanel and WHM

  1. Create an EC2 Instance
  2. Setup Route 53 DNS
  3. Configure Security Group
  4. Set up Hostname on AWS
  5. Install cPanel
  6. Agree to Terms and Conditions
  7. Setup Email in WHM
  8. Activate cPanel

Cpanel and WHM can also be installed on other cloud platforms. You can choose any one from below.

Here are some options.

PlatformMachine TypeCost (Monthly)
Digitalocean4GB RAM – 2vCPU$20
Google Cloud PlatformStandard 3.75 GB RAM$25
Amazon Web ServicesA1- Large 4 GB RAM$35
Check how to install cPanel on Google Cloud Platform.

Create an EC2 Instance

Launch a new EC2 Instance with CentOS 7 Amazon Machine Image.

Choose at-least t2 micro instance type.

Add 40 GB of Storage to your root volume.

Configure Security Group by adding rules for these custom ports.

  • SSH with source anywhere (You can also restrict it)
  • HTTP with source anywhere
  • HTTPS with source anywhere
  • DNS (UDP) with source anywhere
  • DNS (TCP) with source anywhere
  • Custom TCP 2077 with source anywhere
  • Custom TCP 2078 with source anywhere
  • Custom TCP 2082 with source anywhere
  • Custom TCP 2083 with source anywhere
  • Custom TCP 2086 with source anywhere
  • Custom TCP 2087 with source anywhere
  • Custom TCP2096 with source anywhere
  • Custom TCP 3306 with source anywhere
  • Custom TCP 2525 with source anywhere

Create an instance by creating a new pem key to access your instance using SSH. Keep this key safe, without this key you cannot access the instance.

Setup Route 53

Create a new DNS Hosted zone for your domain name and update the nameservers of Amazon on your domain name.

In your DNS manager create a new A record with the name cpanel which points to the Public IP Address of the instance.

You can check your DNS records here by entering cpanel.yourdomain.com

Once everything is in place you can go ahead and install cPanel.

Install cPanel

Access your EC2 Instance with the PEM file you just downloaded.

Once you are connected to your instance enter the following commands one by one.

sudo -s
yum update
yum install perl
yum install wget

Then set the hostname with your domain name. Replace yourdomainname.com with your domain name.

hostname cpanel.yourdomainname.com

Download the latest cPanel and install it by running the following command.

cd /home && curl -o latest -L https://securedownloads.cpanel.net/latest && sh latest

It will take around 30 – 40 min to complete the install. Don’t close the terminal until the setup is completed.

Once the setup is completed, you can set the root password by executing the following command.

passwd

Save your password safely, you will need that to login to your WHM.

Set up Hostname in AWS

AWS Instance won’t preserve the hostname (cpanel.yourdomainname.com) you set and changes it to default hostname automatically, so this may result in a locked cPanel & WHM license. To preserve the hostname follow the below simple steps .

cd /etc/dhcp/dhclient-exit-hooks.d/
sudo nano set-hostname.sh

Paste the following contents and hit Ctrl+X followed by Y to save the file. Remember to replace yourdomainname.com with your domain name

#!/bin/sh
hostname cpanel.yourdomainname.com
/scripts/fixetchosts

Set correct permissions to the file you created

chmod 744 set-hostname.sh

That’s all now your cPanel is installed and ready to finish the WHM setup

Setup WHM

Open your browser and navigate to https://cpanel.yourdomainname.com:2087 . At this point, some browsers show a warning message about HTTPS and don’t allow you to visit the WHM page. In this case, you can use your IP Address instead of the domain name (https://PUBLIC_IP_ADDRESS:2087). It will take some time for the SSL certificate to get issued by cPanel.

Install cPanel on AWS EC2 Instance

Enter username as root

Enter the password you created by running the command passwd

Now you will be logged into your WHM.

Click Agree to All.

Provide your email address.

Install WHM on AWS EC2 Instance

Click Finish

Now you will be taken to the WHM home page.

Install cPanel & WHM on AWS EC2 Instance

Setup Email in WHM

In AWS port 25, which cPanel & WHM utilizes for email is not open. So you need to create an account with Mailgun or Sendgrid and integrate with WHM for emails or Configure Amazon SES.

Allow SMTP on Port 2525

Go to Service Configuration >> Service Manager

Tick both boxes next to Exim Mail Server (on another port)

Change Allow Exim to listen on a port other than 25 to 2525

Click Save

Email Configuration

As the standard email port is blocked in Google Cloud, you need to configure a third-party email service provider to send emails. Here we can use Mailgun to configure emails in cPanel.

Make sure you have these DNS records.

A record pointing to mail.domain.com

MX record with 0 priority pointing to mail.domain.com

Mailgun Configuration

Go to Service Configuration >> Exim Configuration Manager.

Click the Advanced Editor tab.

In daemon_smtp_ports enter 465 : 25 : 587 : 2525

In the Section: AUTH box enter.

mailgun_login:
driver = plaintext
public_name = LOGIN
hide client_send = : Default SMTP Login : Default Password

In the Section: PREROUTERS box enter.

mailgun:
driver = manualroute
domains = ! +local_domains
transport = mailgun_transport
route_list = * smtp.mailgun.org::2525 byname

In the Section: TRANSPORTSTART box enter.

mailgun_transport:
driver=smtp
hosts_try_auth = smtp.mailgun.org

Activate cPanel

cPanel is a subscription-based software, you can activate your license.

Save the configurations, that’s everything about cPanel & WHM on AWS.

18324 Comments

  1. cdb oils https://cbdtincturesui.com/ – cbd online cannabidiol cannabidiol oil

  2. We’re a group of volunteers and opening a new scheme in our
    community. Your web site offered us with valuable info to work
    on. You have done an impressive job and our whole community
    will be grateful to you.

  3. I blog quite often and I really appreciate your information. The article has really peaked my interest. I will book mark your site and keep checking for new details about once per week. I opted in for your RSS feed too.

  4. buy cannabis oil medterra cbd oil cbd pills where can i buy cbd oil

  5. cbd tinctures what is cbd oil cbd hemp cbd oil online for sale

  6. When I initially left a comment I seem to have clicked the -Notify me when new comments are added- checkbox and
    from now on every time a comment is added I recieve 4
    emails with the same comment. Is there a way you can remove me from that service?
    Appreciate it!

  7. Its like you read my mind! You appear to know a lot about this, like you wrote the book
    in it or something. I think that you could do with some pics to drive the message home a
    bit, but instead of that, this is fantastic blog. An excellent read.
    I’ll definitely be back.

  8. Hello all, here every one is sharing these knowledge, thus it’s fastidious to
    read this webpage, and I used to pay a quick visit this website everyday.

  9. Hi! I could have sworn I’ve visited this site before but after going through some of the posts I realized it’s new to me.
    Anyways, I’m definitely pleased I came across it and I’ll be bookmarking it and checking
    back regularly!

  10. I every time spent my half an hour to read this weblog’s posts everyday along with a
    cup of coffee.

  11. I blog often and I really appreciate your content. This article has truly peaked my interest.
    I will bookmark your blog and keep checking for new information about once a week.
    I opted in for your RSS feed too.

  12. Час назад мониторил контент интернет, случайно к своему удивлению заметил неплохой ресурс. Смотрите: купить ксеплион 100 в Омске . Для меня этот сайт оказал радостное впечатление. До свидания!

  13. Very good blog post. I certainly love this site. Keep writing!

  14. I’m gone to convey my little brother, that he should also visit this web
    site on regular basis to take updated from hottest gossip.

  15. This is my first time pay a quick visit at here and i am truly
    pleassant to read all at alone place.

Leave a Reply

Your email address will not be published. Required fields are marked *