How to Set Up ScalaHosting Managed VPS Email Server
ScalaHosting is my recommended VPS (Virtual Private Server) provider for running email servers and websites. This article is going to explain how to set up Scalahosting managed VPS so you can have your own dedicated email server.
You can also run your own website on the same VPS. If you have existing websites running on other hosts, you can request Scalahosting support to transfer your websites to your VPS, entirely free of charge. You can transfer as many websites as you want.
Why Use Scalahosting Managed VPS for Email & Web Hosting
Scalahosting managed VPS (Virtual Private Server) is probably the easiest, fastest, and the best method to run your own email server. Why it’s the best?
- Create unlimited email addresses, unlimited email domains, and send unlimited emails for $29.95 per month.
- Dedicated IP address with high reputation.
- You can use its simple and intuitive control panel to create email addresses. No need to learn how to use the command line to manage a Linux server.
- WebMail client with calendar: Access your email
- You can create quota for each email address.
- Advanced spam protection
- Send and receive emails via POP3/IMAP/SMTP
- Free domain registration/transfer for the first year.
- Automatic daily backups
- Ultra-Fast NVMe SSD to achieve the best server performance.
- Free SSL/TLS certificate for your website.
- They take user requests seriously. A requested feature can be implemented in 1~2 months.
Moreover, you will enjoy the following benefits.
- It’s not just a control panel for mail server. It’s also an all-in-one web hosting platform that allows you to easily set up and manage your website.
- It gives you a premium Softaculous license free for life. Softaculous is a platform to automatically install hundreds of web applications like WordPress, Drupal, Magento, PrestaShop, so you don’t have to learn the Linux command line, which takes lots of time and energy.
- If you have an existing website, you can migrate it to ScalaHosting SPanel Managed VPS, so your mail server and web server run on one host. The ScalaHosting team can help you migrate your website for free.
How to Set Up ScalaHosting Managed VPS For Email Server
Go to ScalaHosting website, scroll down, select the $29.95/month plan and click the Configure Your Server button.
It will take you to the order page.
- Billing cycle: If you choose to pay 36 months upfront, then your cost is $29.95/month.
- Management type: Please choose the default managed option. If you choose the self-managed option, you won’t have the free SPanel control panel, and you won’t get premium softaculous for free.
- Control Panel: Select the default SPanel option. It’s an alternative to CPanel and is included free of charge for your Scalahosting managed VPS.
- Customize Your Server: You can choose a data center here. Leave other options the default.
Then click the continue button. In the next step, you can choose to register a domain name if you don’t have one.
In the next step, enter your email address and a password to create an account at ScalaHosting.
After that, enter some additional information and choose your payment method. Then click the Proceed to payment button and complete the payment. Once that’s done, you will receive an email that contains the details of your VPS.
This email contains a link to set an admin user on SPanel, so click the link to set one, then you will be able to log into the SPanel admin interface. Each Scalahosting account has its own unique URL for accessing the SPanel admin interface.
Upon the first login, you will be greeted by a welcome message that allows you to choose to tour the admin area or create a new account. Select create a new account.
Why do you need to create a new account since you have already created an admin user? There’s a difference.
- Admin user: This type of user can manage the VPS from the SPanel.
- Account: This type of account is for managing a particular website or project.
So if you want to set up a website or create email addresses for your domain name, you use an account to do that. Enter your domain name, then set a username and password.
In the next step, you can define the disk space limit and inodes limit for this new account. I simply choose the default unlimited setting.
You can also define limits for the number of additional domains, email accounts, MySQL databases, and max hourly emails. Again, I choose the default values.
Once the account is created, log out of the admin user and log in with the new account.
Then you will be able to create email addresses for your domain name. Click the Email Accounts
tab to create email addresses.
By default, an email address has no limit on disk space usage. You can set a disk usage quota if you want to.
Once the email address is created, you can click the Access Webmail button to log into the webmail client.
Webmail
Login From a Desktop Mail Client
Fire up your desktop email client such as Mozilla Thunderbird and add a mail account.
- In the incoming server section, select IMAP protocol, choose port 143 and STARTTLS. Choose
normal password
as the authentication method. - In the outgoing section, select SMTP protocol, choose port 587 and STARTTLS. Choose
normal password
as the authentication method.
In the server address
field, you need to use the hostname that’s assigned by Scalahosting. For example, mine is cloud-417368.managed-vps.net.
Hint: You can also use port 993 with SSL/TLS encryption for IMAP, and use port 465 with SSL/TLS encryption for SMTP. You should not use port 25 as the SMTP port in mail clients to submit outgoing emails.
Creating DNS Records For Your Mail Server
Before you can send and receive emails using the new mail server, you need to create several DNS records, which gives your email a higher chance of landing in the recipient’s inbox instead of the spam folder.
- MX record
- A record
- SPF record
- DKIM record
- DMARC record
Note: If you register your domain name at Scalahosting, or transfer your domain name to Scalahosting, then SPanel will automatically create DNS records for your mail server. They can be found at SPanel
-> Domains
-> DNS editor
, so you don’t need to create the DNS records again.
If you registered your domain name at another domain registrar, then you will need to use the DNS editor at your domain registrar’s website, and follow the instructions in this section to create DNS records.
MX Record (Mail Exchanger Record)
The MX record specifies which host or hosts handle emails for a particular domain name. For example, the host that handles emails for linuxbabe.com
is mail.linuxbabe.com
. If someone with a Gmail account sends an email to [email protected]
, then Gmail server will query the MX record of linuxbabe.com. When Gmail finds out that mail.linuxbabe.com
is responsible for accepting email, it then queries the A record of mail.linuxbabe.com
to get the IP address, thus the email can be delivered.
You need to go to your DNS hosting service (usually your domain registrar) to create DNS records. In your DNS editor, create an MX record for your domain name. Enter @
in the Name field to represent the main domain name, then enter mail.your-domain.com
in the Value field.
Your DNS editor may require you to enter a preference value (aka priority value). It can be any number between 0
and 65,356
. A small number has higher priority than a big number. It’s recommended that you set the value to 0
, so this mail server will have the highest priority for receiving emails.
A Record
A record stands for address record. It maps a hostname like mail.your-domain.com
to an IP address. After creating an MX record, you also need to create an A record for mail.your-domain.com
, so it can be resolved to an IP address.
Hint: If you use Cloudflare DNS service, you should not enable the proxy feature when creating A record for mail.your-domain.com
. Cloudflare does not support SMTP proxy.
SPF Record
SPF (Sender Policy Framework) record specifies which hosts or IP addresses are allowed to send emails on behalf of a domain. You should allow only your own email server or your ISP’s server to send emails for your domain. In your DNS editor, create a new TXT record like below.
Where:
- TXT indicates this is a TXT record, since SPF record is a type of TXT record.
- Enter @ in the name field to represent the main domain name.
- v=spf1 indicates this is a SPF record and the version is SPF1.
- mx means all hosts listed in the MX records are allowed to send emails for your domain and all other hosts are disallowed.
- ~all indicates that emails from your domain should only come from hosts specified in the SPF record. Emails that are from other hosts will be flagged as forged.
DKIM Record
DKIM (DomainKeys Identified Mail) uses a private key to digitally sign emails sent from your domain. Receiving SMTP servers verify the signature by using the public key, which is published in the DNS DKIM record.
The Scalahosting SPanel automatically configured DKIM for your email server. The only thing left to do is to create a DKIM record in DNS editor and it’s very easy to do. First, go to SPanel
-> Domains
-> DNS editor
, you will find there’s already a DKIM record. Since your domain name is not registered at Scalahosting, you need to copy this DKIM record and paste it into your domain registrar’s DNS editor.
DKIM record is a type of TXT record, so in your DNS editor, create a TXT record, and enter default._domainkey
in the name field. Copy the DKIM record from SPanel and paste it into your domain registrar’s DNS editor. Note that some domain registers like Cloudflare might require you to delete the parentheses, double quotes and whitespace in the DKIM record.
Note that your DKIM record may need some time to propagate to the Internet. Depending on the domain registrar you use, your DNS record might be propagated instantly, or it might take up to 24 hours to propagate. You can go to https://www.dmarcanalyzer.com/dkim/dkim-check/, enter dkim
as the selector and enter your domain name to check DKIM record propagation.
DMARC Record
DMARC stands for Domain-based Message Authentication, Reporting, and Conformance. DMARC can help receiving email servers to identify legitimate emails and prevent your domain name from being used by email spoofing.
To create a DMARC record, go to your DNS editor and add a TXT record. In the name field, enter _dmarc
. In the value field, enter the following. (You should create the [email protected]
email address.)
v=DMARC1; p=none; pct=100; rua=mailto:[email protected]
The above DMARC record is a safe starting point. If you want to read the full explanation of DMARC, please check the following article.
Checking DNS Record Propagation
To check if your DNS records are propagated to the public Internet, you can use the free service at https://dnsmap.io.
Testing Email Score and Placement
After creating PTR, SPF, DKIM record, go to https://www.mail-tester.com. You will see a unique email address. Send an email from your domain to this address and then check your score. As you can see, I got a perfect score. In the test result, you should check if your PTR record, SPF and DKIM record is valid.
Mail-tester.com can only show you a sender score. There’s another service called GlockApps that allow you to check if your email is landed in the recipient’s inbox or spam folder, or rejected outright. It supports many popular email providers like Gmail, Outlook, Hotmail, YahooMail, iCloud mail, etc.
Warm Up Your IP Address and Domain
If your domain name is very new, then your email might still be landed in the spam folder. This is totally normal because your domain name doesn’t have any reputation. Email deliverability depends heavily on IP reputation and domain reputation. You should use an email warmup service to improve your reputation automatically.
If you have extra time, you can read the following article to learn the ins and outs of email deliverability.
What if Your Email is Rejected by Microsoft Mailbox?
Microsoft seems to be using an internal blacklist that blocks many legitimate IP addresses. If your emails are rejected by Outlook or Hotmail, you need to submit the sender information form. After that, your email will be accepted by Outlook/Hotmail. In reality, Microsoft doesn’t block Scalahosting IP ranges.
Wrapping Up
I hope this tutorial helped you set up ScalaHosting managed VPS email server As always, if you found this post useful, then subscribe to our free newsletter to get more tips and tricks 🙂
I’m in the Scalahost VPS buying section so I can follow this tutorial.
None of the options you have in your images are listed/available at the $14.95 price.
Which server are you using in this tutorial? The options for the lower-end servers listed are asking for $700 to $1,000 for the 36 month option.
They changed the pricing. Now you need to pay $1078.20 upfront for 36 months. That’s $29.95 per month. They do have 30-day money-back guarantee. If you don’t like it, cancel it within 30 days.