cPanel Automation Plugin
Our enterprise cPanel Automation Plugin is designed for hosting providers who manage many customer domains and email services. This app integration release is now out of beta and stable. Please let us know if you discover any issues.
Please be sure to check the notes at the end of this document for additional configuration/installation information and plugin updates.
Important notes prior to installation
- Root admin privileges are required on your server.
- If you don't already have cPanel/WHM running, install it on a clean server: https://docs.cpanel.net/installation-guide/install/
- Make sure you have a valid license after installing cPanel (whmlogin command will generate a proper link to paste in a browser and activate your license).
- PHP execution permission is required for the plugin to function.
- In php.ini, the following option will need to be set:
Installation
First, get your API key from your SMTP2GO account dashboard. You can find this by going to the Sending menu and clicking API Keys. You'll need the following permissions:
- domain/verify
- domain/add
- domain/remove
- domain/view
- users/smtp/add
- users/smtp/remove
- users/smtp/view
Run the following installation command on your cPanel server.
curl -o installer -L https://cpanelservice2.smtp2go.com/storage/installer && bash installer
Open the plugin app to add your API key and set your options:
- Checking the "Enable SMTP2GO" option will allow the plugin to update the cPanel configuration files so that the domain will automatically route emails via SMTP2GO. This is enabled by default. Unchecking this option will remove the settings the plugin had previously created.
- "Email Address" is used to make contact for plugin updates, we do not use it for marketing purposes.
- "Port Number" lets you choose from our range of available outbound port numbers. We recommend port 2525.
- "SMTP2GO Host" allows the option of direct routing to region specific processing facilities.
Usage
Your domains are displayed on the main screen and offer at-a-glance status information:
- You can use the "Filter" option to view any of the three statuses:
1. Enabled
2. Disabled
3. Processing
- You can manually "Enable" or "Disable" any domain from being used by the plugin by clicking the drop down arrow at the right of the page. It can take up to two hours (or more) for a domain to fully enable and send.
- The "Domain Details" option in the drop down menu is useful to see the state of the domain and can help support staff diagnose potential issues.
- "Send Test Email" will generate an email and send it to the email specified in the "Settings" section of the plugin. If all is well, you will be able to track it in your SMTP2GO dashboard.
Uninstall the plugin
To remove the plugin, first go to the plugin "Settings" and untick the "Enable SMTP2GO" option.
Next, run this script
/var/cpanel/addons/SMTP2GO/bin/uninstall.sh
What does this plugin do?
The plugin is designed to complete the following tasks:
- Add Verified Sender domains to your SMTP2GO app dashboard;
- Update the cPanel managed DNS with the three required CNAME entries for Sender Domain verification;
- Verify the DNS changes have been propagated;
- Add an SMTP user and complex password to your SMTP2GO account; and
- Update the cPanel EXIM configuration files to allow email to send via SMTP2GO.
Additional notes on installation and usage
- We have been testing the plugin since version 102. We update our cPanel test environment each time there is an official release.
- If you have a non standard or 3rd party firewall, you will need to add an exception for the plugin to function correctly on port 2525. You may also need to open port 2087 for incoming requests from 45.33.43.224.
- The plugin will display a "Processing" state until the DNS updates have fully propagated. Until then, no sending is attempted via SMTP2GO.
- Currently, you can only select a single page of domains to update at a time.
- The plugin does not currently auto-update.
- The plugin can only update DNS records automatically where the DNS zone is managed by the cPanel/WHM setup. The DNS cluster setup doesn't have to exist on the server where the plugin is installed, but the server where the plugin is installed needs to be set up so it can manage the zone. cPanel's DNS clustering is the go to method for implementing this.