• If you are still using CentOS 7.9, it's time to convert to Alma 8 with the free centos2alma tool by Plesk or Plesk Migrator. Please let us know your experiences or concerns in this thread:
    CentOS2Alma discussion
  • Inviting everyone to the UX test of a new security feature in the WP Toolkit
    For WordPress site owners, threats posed by hackers are ever-present. Because of this, we are developing a new security feature for the WP Toolkit. If the topic of WordPress website security is relevant to you, we would be grateful if you could share your experience and help us test the usability of this feature. We invite you to join us for a 1-hour online session via Google Meet. Select a convenient meeting time with our friendly UX staff here.

SMTP inbound queue

I am within 24 hours moving my install to another physical server and doing a complete reinstall. I will log my actions precisely and we'll see what happens.

So far plans are to do the following:

Install 2003 Standard w/proper add ons (iis, dns etc.)
install updates (.net etc.)
Install sql server 2005
install cold fustion 7
install plesk -options EVERYTHING BUT tomcat, kaspersky, sitebuilder
add mainDNSaddress.com w/ A for ns1 & ns2 DNS on individual IPs
restore plesk psa backup from old machine
Cross fingers and give a reboot for luck

I'm going to put this on a p4 2.16 DC w/2gb and 4x 320gb in raid 1+0

One large 596 partition

If anything weird happens I will note it here.

DUKom2
 
I've also had the same problem, I've also tried to restart plesksrv, but this've no effect. But I've saw a message in event log - "The server response was: 503 This mail server requires authentication when attempting to send to a non-local e-mail address. Please check your mail client settings or contact your administrator to verify that the domain or address is defined for this server.
" and I think I've found decision, I've opened relay to localhost and problem's been disappear.
 
It's been 2 days since I sent my support ticket to SWsoft and they still didn't fix anything.

From the ticket replies I got from them, it's clear that not even they have any idea how that spam filter works or how to fix it.

This is outrageous! Mr Tarasov, is this the way your company handles serious bugfixes? Apparently it is.
 
Originally posted by Bogdan
It's been 2 days since I sent my support ticket to SWsoft and they still didn't fix anything.

From the ticket replies I got from them, it's clear that not even they have any idea how that spam filter works or how to fix it.

This is outrageous! Mr Tarasov, is this the way your company handles serious bugfixes? Apparently it is.
Bogdan, please check your ticket just now and please give us feedback as soon as possible. We cannot reproduce this issue in our lab and we need your help.
 
I got a patch from you and I installed it on 2 servers for starters to see how it goes. I also set the path to the file to be run for MTA pre-pickup event in ME Admin as it was missing.
 
Originally posted by Bogdan
I also set the path to the file to be run for MTA pre-pickup event in ME Admin as it was missing.
You need to configure pickup event for domain only if it is used "user settings" for Spam Filter and Anti-Virus on this domain.
 
I set your patch up on 2 server yesterday and one of them is still crashing:
--------------------------------------------------------------------
01/24/07 00:06:48 ME-MTA-ERROR: Pre Pickup Event (D:\Program
Files\SWsoft\Plesk\admin\bin\memailfilter.exe
8E420084C09B40A088BF936EB619BA1F.MAI SMTP) needed to be terminated because
its execution time exceeded the specified limit. You should consider
reducing the number of transfer threads or contact the provider of the
pickup event for support.
01/24/07 00:06:49 ME-MTA-022: Antivirus and other filters were bypassed
because you are not licensed to use them. Please run your diagnostic
report for more information.
01/24/07 00:06:52 ME-MTA-ERROR: Pre Pickup Event (D:\Program
Files\SWsoft\Plesk\admin\bin\memailfilter.exe
69A77B3D482B4CB79C9375A151995519.MAI SMTP) needed to be terminated because
its execution time exceeded the specified limit. You should consider
reducing the number of transfer threads or contact the provider of the
pickup event for support.
01/24/07 00:06:52 ME-MTA-022: Antivirus and other filters were bypassed
because you are not licensed to use them. Please run your diagnostic
report for more information.
01/24/07 04:47:09 ME-MTA-ROUTE [8E420084C09B40A088BF936EB619BA1F.MAI] from
[SMTP] Connector queued to [SF] Connector as
[65E583D051B946E5A61097F6950C10DD.MAI]
01/24/07 04:47:09 ME-MTA-ROUTE [BAC9357FAC9841C998A2BBCCBE65B831.MAI] from
[SMTP] Connector queued to [SF] Connector as
[9B006155D34A4BBE9F7AC1FA4D144DB8.MAI]
01/24/07 04:47:09 ME-MTA-ROUTE [1FCE1C2F8E0543CDB55BFBDD504D40B1.MAI] from
[SMTP] Connector queued to [SF] Connector as
[C666193186C14E11988AB06404A4A8BF.MAI]
01/24/07 04:47:09 ME-MTA-ROUTE [69A77B3D482B4CB79C9375A151995519.MAI] from
[SMTP] Connector queued to [SF] Connector as
[34F7B979F9A24F849A4DD2AE120ED9E2.MAI]
01/24/07 04:47:09 ME-MTA-ROUTE [AEFC3E2FCC8F4330A0214E3F597755A6.MAI] from
[SMTP] Connector queued to [SF] Connector as
[6AD1D1072FCC4D3594BAF017739C3E26.MAI]
01/24/07 04:47:09 ME-MTA-ROUTE [63965E9824694FA58748874FFE27F6D7.MAI] from
[SMTP] Connector queued to [SF] Connector as
[A99B674FC82444BE8A0124B437036500.MAI]
01/24/07 04:47:09 ME-MTA-ROUTE [840A36593EC5488C9FA0D8C36B12D89C.MAI] from
[SMTP] Connector queued to [SF] Connector as
[F02379C1A9374239AD93A04617F9F8E0.MAI]
01/24/07 04:47:09 ME-MTA-ROUTE [B25257A5BD794D9A993CB0E872E0A456.MAI] from
[SF] Connector queued to [SF] Connector as
[E75CB3A759EC4460A2A495B122249990.MAI]
01/24/07 04:47:11 Processing file 000B67EAE8B2420B8F9BF6DEE3E0CC7E.MAI
from queue SMTP
01/24/07 04:47:11 Pre Pickup Event executing: D:\Program
Files\SWsoft\Plesk\admin\bin\memailfilter.exe
000B67EAE8B2420B8F9BF6DEE3E0CC7E.MAI SMTP
01/24/07 04:47:11 Processing file 00572B8779C4453093EF6F85FC95C876.MAI
from queue SMTP
--------------------------------------------------------------------
No mails have been processed today between 00:06:52 and 04:47:09

Needless to say, the fix you provide is not effective.

Any other bright ideas?
 
Plesk 8.0 doesn't use memailfilter.exe more, so your mail server configuration is wrong, in this case I would like to ask support...
 
Originally posted by andrey
Plesk 8.0 doesn't use memailfilter.exe more, so your mail server configuration is wrong, in this case I would like to ask support...

I was advised to set memailfilter.exe as a pickup event by one of your support engineers:

Hello,

I have logged onto your servers and investigated situation.

Problem is caused by fact that in MTA properties -pickup event executable was cleared (as you mentioned).
I think something changed in mail server management in Plesk 8.1 which causes to clear pickup string after any changes to mail configuration.
I put it back in order email to be going processed by antivirus and spam filter.
I also submit this fact to developers.

Our developers are working on problem and will keep you updated I don't close the ticket

--------
Thanks,
John S. Gakhokidze
Technical Support Engineer
SWsoft, Inc.
 
Originally posted by sergius
Are there any differences beetween these two servers?

The difference is that the server which is still causing problems is 32bit Windows Server 2004 with MailEanable 1.981 and ColdFusion and the one that didn't cause problems in the last 24 hours is Windows Server 2003 x64 Enterprise with MailEnable 2.36 Professional and no ColdFusion.
 
During the last week, the mail problem reoccurred on a a few servers, although not as often as when I didn't have the patch installed.

When the problem happens, there is not perl process running for the spam filter (when filtering works, I can see this running: "D:\PROGRA~1\SWsoft\Plesk\ADDITI~1\Perl\bin\perl" "D:\PROGRA~1\SWsoft\Plesk\ADDITI~1\Perl\bin\psa-spam-filter" "--virtual-config-dir=D:\Program Files\SWsoft\Plesk\Additional\SpamAssassin\SpamFilterUserConfigsPath\%user%@%domain%" "--config-file=D:\PROGRA~1\SWsoft\Plesk\ADDITI~1\Perl\site\etc\mail\spamassassin\local.cf" "--port=783")

As a temporary solution, I set up a vbscript as a scheduled task running every 30 minutes that monitors the number of emails in the queues. If there are more than 100 emails in the SMTP inbound queue, the Plesk Management service is restarted and a notification email is sent to me through another mail server.

Although this is not the best solution for the problem, I can live with it until the development department from SWsoft finishes their investigation for this and releases a final patch.
 
Sure, here it is:
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

Set SMTPInbound = objWMIService.ExecQuery _
("ASSOCIATORS OF {Win32_Directory.Name='D:\PROGRA~1\SWsoft\Plesk\MAILSE~1\MAILEN~1\Queues\SMTP\Inbound'} Where " _
& "ResultClass = CIM_DataFile")

If SMTPInbound.Count > 100 Then
Set objShell = CreateObject("WScript.Shell")
Set objWshScriptExec = objShell.Exec("net stop PopPassD")
Set objStdOut = objWshScriptExec.StdOut
strPopPassDStop = objStdOut.ReadAll

Set objWshScriptExec = objShell.Exec("net stop plesksrv")
Set objStdOut = objWshScriptExec.StdOut
strPlesksrvStop = objStdOut.ReadAll


Set objWshScriptExec = objShell.Exec("net start plesksrv")
Set objStdOut = objWshScriptExec.StdOut
strPlesksrvStart = objStdOut.ReadAll

Set objWshScriptExec = objShell.Exec("net start PopPassD")
Set objStdOut = objWshScriptExec.StdOut
strPopPassDStart = objStdOut.ReadAll

strRestartMsg = vbNewLine + "Attempting to restart Plesk services:" + vbNewLine + strPopPassDStop + strPlesksrvStop + strPlesksrvStart + strPopPassDStart + vbNewLine

strQueues= "SMTP Inbound queue: " + Cstr(SMTPInbound.Count) + vbNewLine
Set objEmail = CreateObject("CDO.Message")
ObjEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 'Send the message using the network (SMTP over the network).
ObjEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") ="mail.domain.com"
ObjEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
ObjEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False 'Use SSL for the connection (True or False)
ObjEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
' ObjEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 'basic (clear-text) authentication
' ObjEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusername") ="[email protected]"
' ObjEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendpassword") ="password"
ObjEmail.Configuration.Fields.Update
objEmail.From = "[email protected]"
objEmail.To = "[email protected]"
objEmail.Subject = "Please check the mail queues on somePlesk server"
objEmail.Textbody = strQueues + strRestartMsg
objEmail.Send
Set ObjEmail = Nothing
End If
This is my first vbscript, so please cut me some slack if I did something wrong.

Here are a few things you may need to adjust:
Set SMTPInbound = objWMIService.ExecQuery _
("ASSOCIATORS OF {Win32_Directory.Name='D:\PROGRA~1\SWsoft\Plesk\MAILSE~1\MAILEN~1\Queues\SMTP\Inbound'} Where " _
& "ResultClass = CIM_DataFile")
You may need to replace D:\PROGRA~1\SWsoft\Plesk\MAILSE~1\MAILEN~1\Queues\SMTP\Inbound with the path to the SMTP inbound queue on your server.
ObjEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") ="mail.domain.com"
You should replace mail.domain.com with the email server you want to use to relay the notification message. I strongly recommend you use an external SMTP server for this (a reliable one, preferably one that is not running MailEnable and Plesk ;)).
' ObjEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 'basic (clear-text) authentication
' ObjEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusername") ="[email protected]"
' ObjEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendpassword") ="password"
You may want to remove the quotes from the beginning of each line if the SMTP server you want to use to use requires authentication and you may want to replace [email protected] with the username used for authentication and password with the proper password.
Replace [email protected] with the notification recipient's email address.

This should be all. In case of any problems, the Plesk Management Service will be restarted and you should receive an email like this:
SMTP Inbound: 105


Attempting to restart Plesk services:
.
The Plesk PopPass Service service was stopped successfully.

The Plesk Management Service service is stopping....
The Plesk Management Service service was stopped successfully.

The Plesk Management Service service is starting.
The Plesk Management Service service was started successfully.

The Plesk PopPass Service service is starting.
The Plesk PopPass Service service was started successfully.
 
One more thing I forgot to mention. You should add the script in a text file, and save it with a .vbs extension (for example queue.vbs). To run it, write this in a command prompt:

"c:\windows\system32\cscript.exe" queue.vbs
 
Thank you, but i get this error :

Code:
quecheck.vbs(8, 1) SWbemObjectSet: Invalid object path

should this be set to computer name?

Code:
strComputer = "."


code :
Code:
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

Set SMTPInbound = objWMIService.ExecQuery _
("ASSOCIATORS OF {Win32_Directory. Name='C:\PROGRA~1\SWsoft\Plesk\MAILSE~1\MAILEN~1\Queues\SMTP\Inbound'} Where " _
& "ResultClass = CIM_DataFile")

If SMTPInbound.Count > 100 Then
Set objShell = CreateObject("WScript.Shell")
Set objWshScriptExec = objShell.Exec("net stop PopPassD")
Set objStdOut = objWshScriptExec.StdOut
strPopPassDStop = objStdOut.ReadAll

Set objWshScriptExec = objShell.Exec("net stop plesksrv")
Set objStdOut = objWshScriptExec.StdOut
strPlesksrvStop = objStdOut.ReadAll


there's no line break after "\MAILSE~1\MAILEN~1\Q" indeed
 
I found the error thank you,

there shouldnt be any space between
"Win32_Directory" AND ".Name"
 
Originally posted by ha77ab

should this be set to computer name?

Code:
strComputer = "."

strComputer = "." means localhost. Use it like this if you run the script directly on the server.
 
Back
Top