In Progress [CPANEL-23627] Manage Suspension page in Email Accounts should show current status

matt1206

Well-Known Member
Dec 20, 2011
60
11
58
cPanel Access Level
Root Administrator
Hi,

One of the accounts on a server had outgoing email suspended due to a large amount of mail being sent.

I've tried to remove the outgoing block, but no matter what I do, email is still being deferred.

Code:
Domain DOMAIN.com has an outgoing mail hold.  Message will be reattempted later
I've ran the below:

Code:
# whmapi1 unsuspend_outgoing_email user=USER
---
metadata:
  command: unsuspend_outgoing_email
  reason: OK
  result: 1
  version: 1
I can see that mail is still being held in here:

Code:
/var/cpanel/email_holds/track/DOMAIN.com
Logging into the cPanal account doesn't show either email account suspended.

Not sure if I'm missing something obvious here, but I'm out of things to try.

Cheers,
Matt
 

cPanelMichael

Administrator
Staff member
Apr 11, 2011
47,880
2,261
463
Hi @matt1206,

I'm glad to see you were able to find the command to release the email. Thanks for sharing the outcome!
 

vikins

Well-Known Member
Oct 3, 2006
127
1
168
If an account gets put on hold, why do we have to release it in this way, using the command line? There is no interface? No indication the account is actively on hold except the end cPanel user gets email bounces and then contacts support?
 

cPanelMichael

Administrator
Staff member
Apr 11, 2011
47,880
2,261
463
If an account gets put on hold, why do we have to release it in this way, using the command line? There is no interface? No indication the account is actively on hold except the end cPanel user gets email bounces and then contacts support?
Hello @vikins,

1. The following options are configurable under the Mail tab in WHM >> Tweak Settings if you'd like to adjust what happens when the system detects a potential spammer:

Monitor the number of unique recipients per hour to detect potential spammers.
Number of unique recipients per hour to trigger potential spammer notification.
Select the action for the system to take on an email account when it detects a potential spammer.


2. Additionally, you can adjust the contact preferences on the following option under the Notifications tab in WHM >> Contact Manager if you'd like receive a notification anytime an email user account exceeds the unique recipients per hour threshold:

Outgoing Email Threshold Exceeded

3. To release or delete outgoing mail held in the queue, perform the following actions in cPanel's Email Accounts interface (cPanel >> Home >> Email >> Email Accounts):
  1. Click Manage Suspension.
  2. Select Allow for the Send option.
  3. If applicable, click Delete messages from the mail queue to remove any queued messages.
  4. Click Save.
4. It's not yet offered as part of an option in WHM >> Modify an Account or as a package value, but you can manually add the following value in an account's cPanel user file (e.g. /var/cpanel/users/username123) if you want to apply a different threshold to specific accounts:

Code:
EMAIL_OUTBOUND_SPAM_DETECT_THRESHOLD=
The value must be higher than the value set for the global Number of unique recipients per hour to trigger potential spammer notification setting (thus you can allow some accounts to send more emails than what's configured with the global value).

5. I appreciate the need to manage held emails and to manage a list of email accounts actively holding outgoing emails in the WHM UI. I encourage you to vote and add feedback to following feature request if you'd like to see this added in the future:

Add option to release/deliver queued email for a cPanel user in the UI.

Thank you.
 

vikins

Well-Known Member
Oct 3, 2006
127
1
168
#3. None of the email accounts for this cPanel user were shown as held when checked using the gui interface you are describing. The mail server was bouncing messages with the warning "Domain example.com has an outgoing mail hold". The envelope for these bounces clearly showed one of this cPanel users email accounts as the sender. So, it was not showing a per user hold, but a domain hold in the bounce message. To release the hold I ran the following command 'whmapi1 release_outgoing_email user=example_user' where example_user was the cPanel username for the account. That allowed mail to flow again. I could find no way to do this in the gui, in the end user cPanel or WHM.

#4. I will make use of this feature to increase allowable mail limits for just this account. Obviously an interface would make this more useful. The issue is remembering that there's a custom setting. If there is a way to see it visually and track it, then it won't get lost in the shuffle. If it only exists in a config file it will get overlooked and forgotten about.

#5. Voted, thank you.
 

cPanelMichael

Administrator
Staff member
Apr 11, 2011
47,880
2,261
463
#3. None of the email accounts for this cPanel user were shown as held when checked using the gui interface you are describing. The mail server was bouncing messages with the warning "Domain example.com has an outgoing mail hold". The envelope for these bounces clearly showed one of this cPanel users email accounts as the sender. So, it was not showing a per user hold, but a domain hold in the bounce message. To release the hold I ran the following command 'whmapi1 release_outgoing_email user=example_user' where example_user was the cPanel username for the account. That allowed mail to flow again. I could find no way to do this in the gui, in the end user cPanel or WHM.
Thanks for the clarification. Can you share a specific entry from /var/log/exim_mainlog when this happens to confirm we are on the same page in terms of what action is leading to the holding of outgoing emails?
 

vikins

Well-Known Member
Oct 3, 2006
127
1
168
The account sent a large mailing initiated from their WordPress based site. It wasn't spam, but it was large. So everything worked as it should. The problem was that there was no indication on how to remove the hold other than searching the forum and finding out how to do it via command line.
 

cPanelMichael

Administrator
Staff member
Apr 11, 2011
47,880
2,261
463
The account sent a large mailing initiated from their WordPress based site. It wasn't spam, but it was large. So everything worked as it should. The problem was that there was no indication on how to remove the hold other than searching the forum and finding out how to do it via command line.
Hello @vikins,

The feature request referenced earlier and linked below is open to address this concern by requesting a WHM UI to release the held messages:

Add option to release/deliver queued email for a cPanel user in the UI.

Please ensure to vote and add feedback to this request.

Thank you.
 

vikins

Well-Known Member
Oct 3, 2006
127
1
168
I think the key here is that you thought this would show up as a hold on one of the end users email accounts in their cPanel. But since the hold is initiated due to mailings from the server though something like WordPress, the hold seems to be applied to the entire domain and not a specific email account. And as we've been talking about, there is no GUI interface for controlling such holds. Since PHP based software sending emails isn't uncommon I think this could be affecting many others as well.
 

cPanelMichael

Administrator
Staff member
Apr 11, 2011
47,880
2,261
463
Hello @vikins,

There are a couple of open cases related to this feature, but I want to be sure the case descriptions match the cPanel & WHM version you are using. Can you verify which cPanel & WHM version is installed on the system you are testing with? You can find the version by running the following command:

Code:
cat /usr/local/cpanel/version
Thank you.
 

cPanelMichael

Administrator
Staff member
Apr 11, 2011
47,880
2,261
463
When the issues occurred it was the newest v76. Currently running 78.0.20 but the issue has not occurred again.
Feel free to share step-by-step reproduction instructions if you encounter the issue again and we'll take another look.

Thank you.
 

vikins

Well-Known Member
Oct 3, 2006
127
1
168
To be clear, the issue that triggers a hold has not occurred again. It isn't as if it happened again and there was suddenly a GUI interface to unblock domain-level email holds. The original issue remains, I'm sure.
 

cPanelMichael

Administrator
Staff member
Apr 11, 2011
47,880
2,261
463
Hello @vikins,

Thank you for clarifying.

Internal case CPANEL-23627 is open to request a change to the Manage Suspension interface in cPanel >> Email Accounts so that users can see the current suspend/hold status of each individual email account (no matter how it was suspended). I'll monitor this case and update this thread with more information on it's status as it becomes available.

Thank you.
 

vikins

Well-Known Member
Oct 3, 2006
127
1
168
You keep speaking of individual email accounts, but this was not a hold on an email account, it seems to have been a hold on the domain. As far as I know, there is already an interface in the end user cPanel to see if individual email accounts have a hold on them. I don't think there is an interface in WHM to see this info, but there should be as well as something to show if an overall domain has a hold.