Enabling Let’s Encrypt for AutoSSL on WHM based Servers

With the recent release of cPanel & WHM version 58 there has been the addition of an AutoSSL feature, this tool can be used to automatically provide Domain Validated SSLs for domains on your WHM & cPanel servers.

Initially this feature was released with support provided for only cPanel (powered by Comodo) based SSL certificates, with the plans to support more providers as things progressed. As of now, cPanel & WHM servers running version 58.0.17, and above, can now also use Let’s Encrypt as an SSL provider. More information on Let’s Encrypt can be found here.

Pre-Flight Check

  • These instructions are intended specifically for a managed Liquid Web server with cPanel.
  • The server should be running cPanel & WHM version 58.0.17, or higher.
  • Command line and root level access via SSH will be necessary to follow this tutorial.

Step #1: Enable Let’s Encrypt Auto SSL provider!

In order to install the Let’s Encrypt AutoSSL provider plugin you will simply log in to the server as the root user via SSH and execute the following command:

# /scripts/install_lets_encrypt_autossl_provider

Running this will add and install the necessary RPM files in order to support Let’s Encrypt as an AutoSSL provider. The command should yield results similar to the following:

Installed the cpanel-letsencrypt RPM! AutoSSL can now use Let’s Encrypt.

Step #2: Verify your work

To double check that this has been successful you can simply pull up WHM and load the ‘Manage AutoSSL’ page. Upon loading this page you should see a list similar to the following screenshot.

WHM AutoSSL w/ Let's Encrypt
If your server’s ‘Manage AutoSSL’ page shows the same options as above you have successfully enabled Let’s Encrypt for AutoSSL.

One thing to keep in mind is that there are some domain and subdomain limits that are enforced by Let’s Encrypt. More details on that can be found in cPanel documentation here: Manage AutoSSL – Domain and rate limits.

What’s New in WHM 58 & What to Look For

In the 58 update of WHM & cPanel several rather large changes have been made to improve upon user experience and to expand available features. As cPanel works to continually expand and improve their offerings, we like to do our best to keep everyone informed and updated. Here are some of the highlights and items to look out for as the 58 update moves to release tier.

What to prepare for?

When large WHM updates, similar to this one, are released, there are often certain items that may exclude a server from being eligible for the update. These are often referred to as ‘update blockers’ within the official documentation. The items here are changes related to these ‘update blockers’.

  • CentOS 5 & CloudLinux 5 are no longer supported by WHM on and after update 58
    • CentOS 5 itself, and therefore CloudLinux 5, are becoming end-of-life status on March 31 of 2017, due to this and software limitations that these OS’s cause, cPanel is removing support preemptively.
  • Servers’ processors must now support 64-bit processing
    • Any older servers with 32-bit (x86) processes will no longer be supported by cPanel/WHM.
  • For a more detailed list of Upgrade Blockers please see: https://confluence2.cpanel.net/display/ALD/58+Release+Notes
  • These update blockers will require a migration in order to update to WHM 58: Feel free to contact our Heroic Support® if you are experiencing these blocks.

What is new?!

On this release cPanel has included a lot of highly-requested features and improvements. This provides for a lot of new opportunities, but with so many changes, it’s easy to lose track of all the great new features that were added. Here are the highlights:

  • Addon Domain to account conversion tool
    • With this new feature you are now able to easily convert an Addon domain into a full-fledged cPanel account.
  • Roundcube is now provided via RPM’s
  • Support for Dovecot’s mdbox storage format
    • Previously email files were stored on a ‘flat file’ manner, one file for each email. Now a user’s complete email storage can use the mdbox file format.
    • For users with large numbers of emails this should help reduce issues and concerns about using up too many disk Inodes.
  • Dovecot now supports email subaddresses
    • Email users can now append their address in a manner that will automatically deliver a message to a specific folder.
    • E.G.: username+Important@email.com will deliver a message directly to the ‘Important’ folder for the username@email.com address.
  • EasyApache 4 has been released
    • It is the default on new WHM installations
      • Existing servers will need to upgrade manually, once upgraded this cannot be reverted.
    • Now fully supports PEAR and PECL
    • EasyApache config tools have been completed as well
      • Provides useful tools to manage EasyApache 4 profiles
    • PHP-FPM support is now included, although it’s not fully refined yet and must be activated outside of WHM.
      • Contact Heroic Support for assistance on setting up and deploying PHP-FPM.
  • Multi-PHP Manager released
    • With EasyApache 4 being released the new Multi-PHP manager has been completed as well.
    • Servers can now operate while providing multiple PHP versions with ease.
  • PHP 7 is now supported and provided via EasyApache 4
  • AutoSSL
    • Free domain-validated SSL certificates are provided by cPanel (powered by Comodo)
    • As of WHM version 58.0.17, and above, AutoSSL now supports Let’s Encrypt as an SSL provider; for more details, see our KB article here.
Free cPanel-provided hostname SSL’s have been provided since WHM release 56 as well.
  • WHM now provides Composer by default
    • Composer is a dependency management tool for PHP-based projects, used frequently in the development and deployment of PHP-based apps, sites, or projects.
    • The WHM provided version does support Composer’s internal update mechanism to stay updated.

What has been changed?

Based on user feedback cPanel will make changes to presets, or default settings, as well as providing updates for 3rd-party tools included in WHM. This section encompases these types of updates.

  • Munin has been updated to provide the 2.0 version
    • Munin is a free system, network, and infrastructure monitoring tool.
  • Reject SPF failures is now enabled by default.
    • This will ensure that servers are checking incoming mail for valid SPF records and will reject Emails which result in a failure.
    • Provides an easier setup for WHM and helps prevent spam.
  • Prevent ‘nobody’ from sending Email now enabled by default.
    • Apache traditionally runs as the ‘nobody’ user and this change to the settings will ensure that by default servers are secure from Apache sending mail.
    • Helps to prevent compromised or unsecure sites for sending outgoing spam.
  • Dovecot now functioning as the local mail delivery agent
    • Exim will now receive inbound messages, connect to Dovecot via LMTP (Local Mail Transfer Protocol) and then deliver the messages.
  • WHM’s internal version of PHP has been updated

What has been removed?

cPanel will often remove redundant, legacy, or unneeded items or features; some of those to keep an eye out for are:

  • Removed ‘Mailserver Selection’ page from WHM
    • In previous releases WHM removed support for Courier and as such this screen is now unused.
  • Bandmin has been removed
    • Bandwidth usages can still be seen and monitored in:
      • Home >> Account Information >> View Bandwidth Usage, or
      • Home >> Metrics >> Bandwidth
  • Stunnel support has been removed
  • Security Advisor has been removed – check on new vs. existing

For more information and details on the various changes coming in the 58 release of WHM and cPanel, please see the official release notes here: https://confluence2.cpanel.net/display/ALD/58+Release+Notes

If you have any questions or are not comfortable making these changes yourself, please feel free to contact Heroic Support®.

A Closer Look at cPanel Notifications

In recent updates, cPanel has modified some of the notification settings for their control panel. As a result, you may find that the priority of certain notification types have changed and you may begin to receive notifications that you previously had not encountered. In particular, the notification options for Security Advisor changed with the release of WHM 56 on April 26, 2016.

The notification changes by cPanel are meant to both help users better manage their servers and also keep them informed of potential security risks, such as those posed by outdated software versions which no longer receive updates.

With some exceptions, many of the notifications are purely informational and not necessarily a cause for alarm. Here are the most common notifications followed up on via support requests:

‘New security advisor notifications with high importance’

WHM’s Security Advisor routinely performs a security scan on the server and alerts you to items it considers potential security risks. For each item flagged, the cPanel notification will clearly explain how to resolve the issue at your convenience. It’s important to note that while some recommendations, such as enabling SMTP Restrictions, Enabling Brute Force Protection, and increasing Password Strength Requirements are worthy of attention in nearly all cases, other recommendations may not be appropriate for your situation. For example, you may prefer not to disable root SSH access or SSH password authentication (and should not unless you have set up and tested SSH keys to connect to your server). To learn more about specific messages, visit our article on cPanel Security Advisor Notices. If you need guidance, feel free to contact Heroic Support®.

‘Your SSL Certificate is now available for download and installation’

Beginning with WHM version 56, cPanel now includes a free signed SSL certificate to cover the hostname (and only the hostname) of the server on which it runs. This feature eliminates warnings and notices associated with using self-signed SSL certificates and protects all connections to server services, such as email and ftp, and is automatically installed and renewed when possible. In order for the automatic installation to occur, however, the server’s hostname must resolve in a browser (that is, it must have a DNS record). Additionally, if you already have purchased an SSL to cover your hostname (either a dedicated SSL or a wildcard) cPanel will not attempt to overwrite it. Only self-signed SSLs installed on the server services (cPanel/WHM, FTP, SMTP, and the Mailserver) will be overwritten. Only if you have a purchased SSL installed on the hostname, and allow it to expire, will cPanel replace it. In any case, no action should be required on your part unless automated installation fails. In that event, you may contact Heroic Support® for assistance.

‘The system will automatically switch the mail server from Courier to Dovecot … in order to continue receiving updates.’

In cPanel/WHM versions up to 11.52, users were able to choose between two mail servers: Courier and Dovecot. Courier was selected by default, and most cPanel users never had reason to switch. However, beginning with cPanel/WHM version 54, Courier has been deprecated. cPanel will no longer support Courier in future releases, and the control panel can not be updated until the mailserver is switched.

If you want to switch the mail server yourself, you can follow our guide. Should you prefer not to switch to Dovecot and would like to continue to use Courier, you will need to change your cPanel update preferences and select the LTS (long-term support) release tier. cPanel will continue to send daily emails until one of these two actions have been taken. If you do not take any action, cPanel will automatically switch the mailserver at the time indicated in the email.

‘The server has POP3 before SMTP enabled’

This means that SMTP authentication is not being strictly enforced on the server. Effectively, any user who has successfully logged in to receive mail is treated as authenticated to also send mail from the same IP address for an hour after their successful incoming login.

The important thing to note is that it allows the IP address from which a successful email login was made to access the SMTP server, not just the specific user or device from which the successful login was made. In a modern home or office environment, a single public IP address typically is shared by many devices on that network. That’s also the case when you’re connected to a public wireless network, such as at a local coffee shop or shopping center.

With POP Before SMTP (also referred to as POP3 Before SMTP) enabled, it’s possible that a malicious user or compromised device connected to the same network — regardless of how well-secured your personal computer, workstation or mobile device may be — could relay mail through your server. Mitigating that potential security risk would be the primary reason for disabling POP Before SMTP on your server.

However, you should be aware that disabling POP Before SMTP means that any email account would be required to use SMTP authentication, and that would need to be configured in each individual mail client used with each email account in order for the account to be able to send mail.

While all modern mail clients such as recent versions of Outlook, Mac Mail and Thunderbird and any recent smartphone have that ability, the setting may not be enabled by default. If that’s the case, the account configuration would need to be adjusted in the email client.

For assistance configuring email clients, see How To Set Up Any Email Client.

‘The server has unmonitored services’/’The service has failed’

Through its ChkServd service, cPanel is able to monitor enabled services and automatically restart them when necessary. This is separate from, and unrelated to, Sonar Monitoring services which you can configure in your Manage dashboard.

While this is not a new capability, cPanel recently began notifying users of it, along with a list of any enabled cPanel services which were not configured already for monitoring. It is recommended, though completely optional, to enable monitoring for all active cPanel services to improve stability and ensure that services can be recovered as quickly as possible. You can enable monitoring in WebHost Manager at Service Manager, under the Service Configuration section in the left menu.

One thing to keep in mind is that cPanel will alert you to any service it has found to be down and automatically restarted via ChkServd, even if the service intentionally was stopped, such as during an update or a required restart of another service upon which it is dependent.

What that means is that you should not immediately assume the worst any time you receive a “Service Failed” or “Service Recovered” alert from cPanel. If you receive only a single notification of a service restarted, and not multiple alerts for the same service over an extended period of time, there generally is no cause for concern. However, should you receive multiple such alerts for a service, or should the alert indicate that the service could not automatically be restarted, please do not hesitate to contact us so that we may investigate.

‘Altered RPMs found’

While the message subject can sound somewhat ominous, it should not automatically be cause for alarm. Typically this message is generated when cPanel performs an update check and discovers that local files are out of date, have become corrupted or have been updated outside of cPanel. Occasionally, it also can occur when both the 32- and 64-bit versions of a service have been installed.

This message will contain the filename of the package it found to be incomplete, corrupted or otherwise broken; running the command referenced in the message (/usr/local/cpanel/scripts/check_cpanel_rpms –fix) should result in it re-downloading the file successfully.

Please note that anytime updates are pushed to your server outside of cPanel, for example when an important security patch is applied to multiple servers simultaneously, this notice also can be triggered. The issue can be easily rectified by updating cPanel’s operating system packages, which support is happy to help with if you’re unable to run the command specified in the cPanel notification.

‘The cPanel & WHM update process failed’

WebHost Manager/cPanel by default checks for updates to its control panel each day. Due the number of servers running cPanel, there can be times when too many servers are checking in with cPanel’s update server simultaneously, causing the request to time out. And occasionally, the cPanel update server itself may be unreachable.

Whenever that happens, cPanel will alert you and automatically try again the next day. You can, however, manually force it to check for updates (and automatically install the update, if one is available) should you prefer not to wait.

You can find instructions for manually updating cPanel at How To Upgrade and Patch cPanel and WHM.

Should a manual update also fail, or should you receive consecutive update failure messages, please do not hesitate to contact our Heroic Support® team.

‘System integrity checking detected a modified system file’

The default notification preferences beginning in WHM/cPanel version 54 can cause this notification to be sent immediately following an update to cPanel/WHM itself.

This notification may alert you to “FAILED” md5sum comparison tests on any server software (and usually on several components at a time), but should not immediately be cause for alarm.

The server message is triggered any time a core file is changed, and makes it clear that it may be the result of an OS update or application upgrade. If you have automatic updates enabled in WHM, have manually updated cPanel/WHM, or have requested that it be updated for you, then you can safely ignore this message. If you don’t have automatic updates enabled and have not recently updated cPanel, please do not hesitate to contact our Heroic Support® team.

Disabling cPanel Notifications or Changing Alert Settings

You can configure settings for all the cPanel alerts you receive in WHM under Contact Manager in the Server Contacts section of the left menu.

The first tab, Communication Type, allows you to set the alert level that will trigger a notification to each of the communication methods: AIM, email, ICQ, Post to a URL, Pushbullet, or SMS.

The second tab, Notifications, allows you to set the minimum priority for each type of event, such as Service failures (ChkServd), Unmonitored Services, or Backup Successful, which will trigger a notification. You also can disable notifications for each event type using the dropdown menu under the Importance category.
 

How to Open a Port in CSF with WHM/cPanel

The Config Server Firewall offers several advantages over the Advanced Policy Firewall, including more robust protection against Denial of Service, SYN flood and other common attacks.

But one of its most appealing features is its plugin for WebHost Manager that allows you to quickly access firewall settings and common tasks through a graphical interface.

Pre-Flight Check

  • These instructions are intended specifically for opening (and closing) ports in the CSF firewall via WHM.
  • If you want to open or close a port in APF or CSF from the command line over SSH, see http://www.liquidweb.com/kb/opening-ports-in-your-firewall/.
  • If your server currently uses APF but you’d prefer CSF, contact Heroic Support® and request a switch. There is no charge, it typically takes only a few minutes, and the only service that needs to be restarted as a result is the firewall itself. Our support technicians also can port your existing APF rules to CSF. If requesting an upgrade, please be sure to indicate whether your server uses the Guardian backup service so that its rules also can be configured.

Step #1: Open the Firewall Management Page

  1. Once logged in to WHM, you will find the CSF interface under the Plugins section in the left menu.
  2. Click on ConfigServer Security&Firewall or begin typing “firewall” into WHM’s search box at the top left to quickly locate the link.

Step #2: Open Firewall Settings

  1. On the ConfigServer Security & Firewall page, click the Firewall Configuration button to enter advanced settings.

csfeditconfig

Step #3: Manage Ports

    1. On the Firewall Configuration screen, scroll down to the IPv4 Port Settings section.
    2. You will be editing the fields in the Allow incoming TCP ports and Allow outgoing TCP ports sections.

ports2

    • To allow incoming connections to a port, add the number to the TCP_IN = field.
    • To block incoming connections to a port, remove the port number from the TCP_IN = field.
    • To allow outgoing connections from a port, add the port number to the TCP_OUT = field.
    • To block outgoing connections from a port, remove the port number from the TCP_OUT = field.

Step #4: Save Changes and Restart the Firewallrestartcsf

  1. Scroll all the way to the bottom of the Firewall Configuration page and click the Change button to save the settings.
  2. After saving the settings, you will be given the option of restarting the firewall or returning to the settings page to continue editing. Since your changes will not take effect until the firewall is restarted, you will need to click the Restart csf+lfd button to apply the new settings.

Tip: Also Check Storm® Firewall Settings

Storm® Dedicated and VPS customers also have access to a separate Storm® Firewall.

If you are using the Storm® Firewall and have configured it to use advanced settings, you will want to ensure that the ports you’ve changed in WHM also are changed there.

  1. You can access your Storm® Firewall settings from Manage. After clicking on your server name, navigate to the Network section and select the Firewall tab.
  2. If it’s active and using advanced settings, you will need to replicate your port rule in the Storm® Firewall interface to ensure traffic can reach the port.
  3. Find more information and detailed instructions for managing the Storm® Firewall at How to Configure a Storm Firewall.

Find Detailed Information in Our Knowledge Base

To learn how to unblock an IP address via the command line, visit:

 

How to Manage the CSF Firewall in WHM/cPanel

Should you discover (or suspect) that a client or customer’s IP address has been blocked in the firewall, or you just need to open (or close) a port on your cPanel server, you may be able to quickly resolve the issue yourself if you have access to WebHost Manager and the ConfigServer Firewall (CSF).

If your server is using CSF, you will find its interface listed in WHM as ConfigServer Security&Firewall under the Plugins section in the left menu. You also can begin typing “firewall” into the search box at the top left to narrow down the choices.

Note: Should you find no such listing in WHM, feel free to request an upgrade from the APF firewall when contacting support. There is no charge, it typically takes only a few minutes and the only service that needs to be restarted as a result is the firewall itself. Our support technicians also can port your existing APF rules to CSF. If requesting an upgrade, please be sure to indicate whether your server uses the Guardian backup service so that its rules also can be configured.

Unblocking an IP Address in CSF

To determine whether an IP address is blocked, you can use the Search for IP button on the ConfigServer Security&Firewall page. Simply enter the IP address into the search field and click the button.

csfsearchforip

If the IP address is blocked, the reason for the block will be listed and an unlocked padlock icon will appear to the right of the blocked IP address. Clicking the padlock icon will unblock the IP in the firewall.

csfunblock

 

Allowing (Whitelisting) an IP Address

It is important to note that there are two components to the csf firewall, the firewall itself and the Login Failure Daemon (lfd).

To whitelist an IP address in the firewall (csf.allow), you can enter the IP address into the Quick Allow section, along with an optional comment for the allow (such as “Office network”), and click the Quick Allow button.

csfallow

When an IP address is whitelisted in CSF, it still can become blocked by lfd for abusive behavior such as multiple failed logins or repeated violation of certain modsecurity rules. This helps to mitigate the sort of brute-force attacks that could occur should a computer or device on the same network as a whitelisted IP address become compromised or infected with malware.

It is recommended to whitelist IPs only as necessary and, for a long-term solution, focus on resolving the issue which led to the block (such as incorrect login credentials). However, as a temporary measure while troubleshooting or otherwise working to correct the underlying issue, you can prevent an IP address from being blocked by lfd by adding it to the ignore list (csf.ignore).

That can be done using the Quick Ignore button on the ConfigServer Security&Firewall page.

csfquickignore

Blocked IP? Don’t Forget to Check cPHulk

WebHost Manager also includes the cPHulk Brute Force Protection module which, like the Login Failure Daemon component of the ConfigServer firewall, can block IP addresses (independently of the firewall) when they have repeated failed login attempts.

If you’re trying to unblock an IP address but no block is to be found in the firewall, you will want to check cPHulk as well. In WHM, you’ll find cPHulk Brute Force Protection listed under the Security Center section of the left menu.

On cPHulk’s History Reports tab, you can search for failed logins, blocked users, blocked IP addresses, or one-day blocks.

Removing a block is as easy as clicking the Remove Blocks and Clear Reports button.

cphulkclearblocksYou also can whitelist IP addresses, with an optional comment, under the Whitelist Management tab.

Please be aware that whitelisting an IP address here means that the IP address always will be able to attempt to log into the server. That could potentially present a security risk in the event that a computer or device on the same local network as the whitelisted IP becomes compromised or infected and uses brute force to try to gain protected access. For this reason, IP address whitelisting in cPHulk should be used sparingly and with caution.

Opening and Closing Ports in the Firewall

port1On the ConfigServer Security & Firewall page in WebHost Manager, click on the Firewall Configuration button to enter advanced settings.

On the Firewall Configuration screen, scroll down to the IPv4 Port Settings section, and locate the Allow incoming TCP ports and Allow outgoing TCP ports sections.

ports2

You will need to add the necessary port to the appropriate list (or remove a listed port to block it), then scroll all the way to the bottom of the page and click the Change button to save your settings and restart the firewall.

Port Still Unreachable? Check Your Storm® Firewall

If you have a Storm® server, you have access to an additional firewall which can be accessed via your Manage interface by clicking on your server’s dashboard.

You’ll find your Storm® Firewall settings under the Network section, on the Firewall tab. If you’ve enabled it with advanced settings, you will want to ensure you’ve opened the port there as well.

stormfw

To open a port when using the Advanced Firewall Configuration, click the Add Rule link, give it a Label and set the Destination Port, Protocol, and Action, then click the green button.

Repeat for any additional ports you’re opening (or closing) and then click the Apply Firewall Settings button to apply the settings and restart the firewall.

Find Detailed Information in Our Knowledge Base

 

How to Check the Version of cPanel / WHM

Pre-Flight Check

  • These instructions are intended specifically for checking your version of cPanel or WHM via the command line or the WHM dashboard.
  • I’ll be working from a Liquid Web Managed CentOS 7 server, and I’ll be logged in as root.

Method #1: Checking the Version of cPanel / WHM by the ‘cpanel’ Command

Using the cPanel command:

/usr/local/cpanel/cpanel -V

11.50.0 (build 27)

Continue reading “How to Check the Version of cPanel / WHM”

How to Install WordPress in cPanel / WHM with Softaculous

WordPress is a very popular option for running a website or blog and can be used to get your content online quickly. This guide will walk you through installing the WordPress server software via cPanel / WHM and Softaculous. Liquid Web makes WordPress hosting easy and painless, for every level of customer, especially since all of our managed plans are backed by our 24/7/365 Heroic Support®.

Pre-Flight Check
  • These instructions are intended for installing WordPress in cPanel / WHM with Softaculous.
  • I’ll be working from a Liquid Web cPanel / WHM CentOS 6.6 server, and I’ll be logged into my cPanel account.

Continue reading “How to Install WordPress in cPanel / WHM with Softaculous”

How to Disable SSLv3 for Exim and Protect Your WHM/cPanel Server from POODLE

Your Guide to POODLE and WHM/cPanel
I. How to Disable SSLv3 for Apache and Protect Your WHM/cPanel Server from POODLE
II. How to Disable SSLv3 for Exim and Protect Your WHM/cPanel Server from POODLE

There’s a new POODLE in town, but unfortunately it’s not the kind of pooch you want around. POODLE stands for Padding Oracle On Downgraded Legacy Encryption. It’s an exploit that, although not considered to be as serious as Heartbleed, is one that should still be protected against. For more information read the Google Blog.

Fortunately, protecting your WHM/cPanel server is easy. Just follow the steps below:

Continue reading “How to Disable SSLv3 for Exim and Protect Your WHM/cPanel Server from POODLE”

How to Disable SSLv3 for Apache and Protect Your WHM/cPanel Server from POODLE

Your Guide to POODLE and WHM/cPanel
I. How to Disable SSLv3 for Apache and Protect Your WHM/cPanel Server from POODLE
II. How to Disable SSLv3 for Exim and Protect Your WHM/cPanel Server from POODLE

There’s a new POODLE in town, but unfortunately it’s not the kind of pooch you want around. POODLE stands for Padding Oracle On Downgraded Legacy Encryption. It’s an exploit that, although not considered to be as serious as Heartbleed, is one that should still be protected against. For more information read the Google Blog.

Fortunately, protecting your WHM/cPanel server is easy. Just follow the steps below:

Continue reading “How to Disable SSLv3 for Apache and Protect Your WHM/cPanel Server from POODLE”