Community Discussions and Support

The perfect forum for general discussions or technical questions about Mercury Mail Server.


Best regards.

I'm developing a web application that sends emails as messages to registered users. I've long used Mercury as a server and Outlook as a client. Mercury has been configured to be a local server and no matter what email I use, it always sends me mail to the same address. This way I can test multiple messages and user configurations.

However, in the latest update of Outlook I can no longer communicate with the Mercury server.
I would appreciate it if you could tell me what the basic settings are for the new version of Outlook?

recent by Rolf Lindby  ·  May 17 at 2:18 pm

and enjoy your favourite Beach Cocktail instead of sitting in the "dark" server room. smile

Hello Mercurians,
after waiting too long I started my long desired web-interface for Mercury Mail. What started as a small privat project became a little bigger as I realized when working on it, why not making it available to other Mercury Mail users.

After creating, testing and testing and more testing it was finally finished and is ready to use, if you desire. smile
I tried to incorporate as much "daily to use" positions as possible and hope it will help others to maintain Mercury a little easier.

What can you expect ? Here we go:

 Mail Server System
Check Server Module Status, online or off
Change various Template Files
Have the Mail Server Lookup Commands presented
Read and Edit Mercurys Configuration File as needed
Start, Restart and Stop the Server as needed to apply certain Changes. For some changes a Restart is automatically executed

User Management
List, Create and Delete Local User
Change User Passwords
Create/Delete Alias
Create/Delete Synonyms

SMTP Server
Update the SMTP Authentication File
Update the Transaction Filter
Update the Compliance Whitelist
Update the Kill File
Create & maintain Connection Control rules
Create & maintain RBLs

IMAP Server
Update the IMAP Login Alias File
Create & maintain Connection Control rules

POP3 Server
Update the POP3 Login Alias File
Create & maintain Connection Control rules

Content Control
Update Mercurys Spambust File
Update a Custom Content Control File
Update the Content Control Blacklist File
Update the Content Control Whitelist File

SpamHalter Daemon
Update the Sender Whitelist
Update the Local Receiver Exclude List

Mercury Logs
View the different Server Module Logs

System Requirements
A licensed Mercury Mail Server, as Mercury has to run as service, and a Web Server, both on the same machine. The Web Server must handle php, Server Side Includes (SSI) and if Mail Server Logs
are desired, Directory Listings have to be activated in the virtual host configuration for the logs directory.
The project is developed with Apache as Web Server.
Any other Web Server should work as well, maybe some changes to the SSI commands have to be adjusted.
Check the README in the archive for more detailed install instructions.
Questions, Comments or better ideas are welcome.



And a few images as well. Those are missing the IMAP and POP3 menu items as they came later. But you will get an idea, hopefully.





recent by Johannes  ·  Apr 30 at 12:10 am

When a user sets an autoreply in Pegasus, and an email comes in from a Gmail address (, the autoreply always fails with:

550-5.7.26 This mail has been blocked because the sender is unauthenticated.

This has puzzled me for a while, since it appears Google is expecting Mercury to authenticate to send mail. But, sending messages to gmail users works fine, just not the autoreplies.

Today I found the reason for the failures. When Mercury sends the autoreply, the envelope sender ( MAIL FROM: ) is empty, actually <>. Google rejects the email because of the empty envelope since it can't apply DMARC rules to the empty envelope sender.

I can't find any way to set an address to use for that. Does anybody know of a way to set an address for Mercury's autoreply messages?


recent by Rolf Lindby  ·  Feb 12 at 12:58 pm

So, what I'm wanting to do is this:

I'm trying to copy my Dad's email archive, which currently exists in hundreds of Pegasus Mail folders, via IMAP, to a different server. My hope is to connect Thunderbird to the remote IMAP server, and to a newly-installed Mercury IMAP server sitting on top of this vast collection of Pegasus mail folders, and then manually drag the folders from one server to the other.

As I mentioned, I've freshly installed Mercury, installing only the IMAP component, and pointed it at the existing Pegasus mail C:\PMAIL\Public folder where his emails live. I got Thunderbird to connect to Mercury via IMAP, but then authentication failed. A little reading made me think I need to create a "local user" for authentication.

So I go to "Manage local users..." which pops up the dialog. I "Add" a new user, give it a valid username, a personal name, and a password, leaving APOP blank. When I hit "OK" from this dialog, the computer gives a little error noise, and no user ends up added. I've tried several different usernames and passwords, made sure the username is alphanum-no-spaces, personal name, no personal name, APOP, no APOP, nothing works. I simply can't add a local user and there's zero feedback as to what might be wrong.

One small clue is that at the top of the "Users defined for this system" dialog, it suspiciously says "Mailbox directory: ???" which makes me think something about the existing Pegasus Mail folders might be confusing it?

One other interesting point is that initially I -was- able to add a local user, which even successfully authenticated once via Thunderbird, but when I next launched Mercury, that user was gone and that's when I started not being able to create any more.

Any thoughts? Thanks in advance for any help y'all can give.

(Edited to add: Mercury 4.91.349; Windows 10 Pro 22H2)

recent by emerson  ·  Feb 7 at 4:24 am

After my last certificate update, I noticed I was no longer able to send mail, although I could still receive mail perfectly.
In my mercuryS logs I am getting the following error...

17:09:13.477: --- 24 Jan 2024, 17:09:13.477 ---
17:09:13.477: Accepted connection from '', port 587, timeout 30 secs.
17:09:13.477: Connection from, Wed Jan 24, 17:09:13
17:09:13.477: << 220 ESMTP server ready.<cr><lf>
17:09:13.481: >> EHLO<cr><lf>
17:09:13.481: << Hello; ESMTPs are:<cr><lf>
17:09:13.481: << 250-TIME<cr><lf>
17:09:13.481: << 250-SIZE<cr><lf>
17:09:13.481: << 250-STARTTLS<cr><lf>
17:09:13.481: << 250 HELP<cr><lf>
17:09:13.525: >> STARTTLS<cr><lf>
17:09:13.525: << 220 OK, begin SSL/TLS negotiation now.<cr><lf>
17:09:13.790: [!] OpenSSL reported error -1/1 during handshake - diagnostics follow:
17:09:13.790: [!] -------------------------------------------------------------------------
17:09:13.790: [!] error:1417A0C1smileSL routines:tls_post_process_client_hello:no shared cipher
17:09:13.790: [!] -------------------------------------------------------------------------
17:09:13.790: --- Connection closed at 24 Jan 2024, 17:09:13.790. ---

I reinstalled Certbot because I could not figure out why I was suddenly getting this error, it is not an error I have ever had before. Any tips on how to fix this would be greatly appreciated. Thanks

recent by ruler  ·  Jan 24 at 7:53 pm

In a few days our Mail Hoster (IONOS Germany) intends to activate further restriction for mail submissions.
For all submitted mails the mail sender domain has to match the mail domain of the user who submits the mail, where "user" means the user name (email address) for authentication the mail submission attempt.

All of our 20 users submit their mails with personal sender addresses to MercuryS, and Mercury C is submitting all of them to the mail provider via the one and only MercuryC user credentials. But all personal email addresses have the same mail domain like the "submitting user" defined in MercuryC. Should work.

So far so good. But in case I've set some Mercury filters where certain incoming external mails will be directly forwarded to the internet again (bouncing), the sender address will not be replaced by a local mail address. And this will lead to a refuse of that mail submission. smile

recent by Joerg  ·  Jan 13 at 6:46 pm

Hello All,

considering switching from Squirrelmail to roundcube.

Running roundcube for a different install I know that I can create folders-in-folders with roundcube.
Situation: Mercury with Pegasus integration mailboxes are containing folder-in-folder folders. Squirrelmail will recognize and handles those automatically without problem.

Question: does roundcube do the same ?
Or does roundcube only recognize folder-in-folder when these folders are created by roundcube?

If one of you could give me an answer, I would appreciate.
Thank you


recent by Joerg  ·  Jan 13 at 6:39 pm
Johannes posted Sep 21 '23 at 3:20 am

Hello Fello Mercurians,

I like automation, for what else do we have computers! smile

Assuming some people, like me, could use a little advise to automate the renewal of the Certificate process for Mercury, I had created a batchfile which will renew the Certificate using , copy and rename the files to be able to use by Mercury and run it at a certain time using the Task Schedule.
There is also Apache involved, as I am running Roundcube for my IMAP connections. In my case I am using the standalone version and therefore I need to shut down Apache to have port 80 or 443 free to use by Certbot spinning up a small webserver.

And I just did a succssfull run. smile smile

Certbot located at c:\certbot
Mercury located at d:\mercury

Here we go:
create a batchfile and call it by Task Schedule with elevated user rights.

First: stop Apache service: net stop apache2.4

Second: start the Certbot renewal process:
cd to certbot\bin and call certbot renew
which will renew one or all certificates which are close to expire.

Third: start Apache service: net start apache2.4

Fourth: copy the files needed by Mercury TO Mercury and rename them at the same time.
Files needed are: c:\certbot\live\domain\fullchain.pem and c:\certbot\live\domain\privkey.pem
To make this happen we use xcopy
xcopy c:\certbot\live\domain\fullchain.pem d:\mercury\mercury.pem /y
xcopy c:\certbot\live\domain\privkey.pem d:\mercury\mercury.prk.pem /y
The /y switch is set to quitely overwrite the files after the first renewal.

Comments: Name of Apache service my differ.
IMPORTANT Note: do not rename the files in the original certbot folder as the renewal process is looking for the original file names. If you want NOT to move the files to d:\mercury and keep them in the original file location, that will propably work, but I have not tested it. I like to keep things clean and seperate.

The full batch file will look like this. You can add comments as you wish.

:: stop apache
net stop apache2.4

:: start renewal process of all certbot certificates
:: cd to certbot.exe

cd certbot\bin
certbot renew

:: start apache
net start apache2.4

:: copy certificate from your domain for mercury. Files to copy & rename
:: are fullchain.pem > mercury.pem ; privky.pem > mercury.prk.pem
:: use xcopy to overwrite file quietly /y
:: rename is not possible as certbot is looking for the original filenames
xcopy c:\certbot\live\\privkey.pem d:\mercury\mercury.prk.pem /y
xcopy c:\certbot\live\\fullchain.pem d:\mercury\mercury.pem /y


The only manual change is to set a new date in Task Schedule for the next renewal.

This is very basic and I am sure there maybe other ways. Maybe we can add them and make it better?



recent by Johannes  ·  Jan 10 at 1:15 am
GolanTrevize8 posted Feb 14 '22 at 6:09 pm

Will DKIM be implemented in future versions of Mercury?

I have SPF and DMARC setup for my domain but after having to help a client recently with DKIM setup in GoDaddy for their Office 365 mail it got me wondering about DKIM support in Mercury.

recent by TonyQuick  ·  Jan 3 at 9:33 pm
jacobsfw posted Nov 17 '23 at 1:02 am

Dear helpful members,

After years of running Pegasus mail without issues, a problem with receiving new mail has arisen and I hope someone can help me.
Upon start-up the Pegasus mail “you have new” mail pop-up banner appears (as normal) and may repeat many times if there is a lot of mail to download (as normal); however, no new mail appears in my inbox. I tried upgrading from version 4.80 to the new 4.81 Beta, but that did not solve the problem. However, if I shut down Pegasus mail and then re-start Pegasus the new mail now appears (under my red "is urgent” mail). Another new problem that seems to have occurred simultaneously with the above problem is that Pegasus mail very often will not close normally anymore. I must use Task Manager to force Pegasus to shut down.
Hopefully you may know a fix without a complete re-install? However, if I do need to do a uninstall /fresh install to solve this problem how can I make sure that my past inbox /outbox and all my folders will be brought back into the program normally, without losing emails or setting preferences?

Thank you in advance for your help!
Kind Regards, jacobsfw
November 16, 2023

dinky1 posted Nov 6 '23 at 11:33 am

T 20231106 112910 65480d05 Established ESMTP connection to
W 20231106 112910 65480d05 421 4.7.0 [TSS04] Messages from temporarily deferred due to unexp
T 20231106 112910 65480d05 Job MO000013 processing complete.

unexp what exactly?

I've noticed repeatedly that the error logs cut off half way through any meaningful message.

Why is this done? - It is not useful at all.

recent by dinky1  ·  Nov 6 '23 at 1:21 pm

The mobile versions of Microsoft Outlook have broken support for using STARTTLS during an IMAP connection. After sending the first STARTTLS command and receiving a reply, they send a second, spurious STARTTLS command. This gets misinterpreted as a bizzare, implausibly high TLS version by OpenSSL, which causes it to cut the connection. Outlook then reports an alleged "certificate error".

Outlook Mobile is still able to connect using the legacy port which uses TLS from the beginning. However, if you connect to the normal port, if it detects STARTTLS support it will attempt to use it even if you attempt to configure it not to.

There's a Python mail suite called Twisted that includes an IMAP server implementation and TLS implementation in pure-ish Python. I was able to build a toy server and patch it so that if received a TLS version of 63.48 (for example), instead of immediately disconnecting it tried to reinterpret that packet as a cleartext IMAP command and, if it was STARTTLS, send another affirmative reply and restart TLS from there. With this patch, Thunderbird, Outlook desktop, Outlook mobile, and Twisted's client libraries were all able to connect and run without issue.

I know this is awful, that OpenSSL goes out of its way to make it hard to support this -- and with good reason -- and that Microsoft should fix their application to comply with the IMAP specification. However, I've reported this problem to them several times and they won't fix it. There is no MercuryI Events support in the DDK (and its internals are specifically and explicitly not documented, unlike most of the rest of Mercury) so I can't fix this on my end; if I'm to get this to work, I'll need it in Mercury itself.

(I'm posting this here because the Feature Suggestions forum doesn't allow new topics, I don't think this is within the scope of a technical support incident, and Mercury's licensing system is down anyway so I couldn't file one even if I was wrong.)

Joerg posted Oct 11 '23 at 9:16 am

We almost exclusively use Thunderbird as IMAP client here. It works very well and fast with the Mercury IMAP server.
However, we noticed one thing ... In TB we always move edited/read emails to other mail subfolders, so that the inbox folder remains clear.
But if you switch back to Pmail in between, there is a completely different, higher number of mails in the inbox folder. I.e. there are sometimes quite a lot of mails still in the inbox folder, which have long been moved to other subfolders in TB. The moved mails also arrive in the subfolders and are also visible there in Pmail.

Moving mails is also not accompanied by any error message. A consistency check of the individual mail folders in Pmail also shows that everything is fine.

Furthermore, we can also access our mailboxes using Roundcube IMAP web client. There I can at least see that the affected emails have already been marked as "deleted" (disabled). So to me it looks like mails are copied to the subfolders, but then only marked as "deleted" in the inbox folder.

Is there a "timer" somewhere when mails marked as "deleted" are finally deleted?

recent by Joerg  ·  Oct 11 '23 at 1:39 pm

We recently set up a new installation and when I enumerate a list it will run once but subsequent attempts fail with the following errors.

The core process window shows “* Transient error - job deferred for later processing.”

The mercury system messages window shows “Core: Error getting mailbox information for MercAdm”

MercAdm is an alias with the mercury software that point to an email address that is valid.

recent by TonyQuick  ·  Sep 20 '23 at 9:57 pm
ruler posted Aug 6 '23 at 5:49 pm

Hi, first I have read through a bunch of posts looking for answers on here but nothing really relates to my issues I am having as such.
I will first explain my setup then explain what I have tried.

My router ( which is forwarding all traffic to my computer ( Ports opened for the mail server are 25, 143, 587, 465 and all point to which is my only computer, nothing else connected to my router.
Windows Firewall disabled, no other firewall or antivirus (fresh OS install) and I am using windows 11 Pro.

My ISP is talktalkbusiness and to connect to their smtp servers I use port 25 strait connection plain text and not secure. I use my username and password they provided for me.

The smart host name I use is

it was all working fine for years and I changed nothing but a few weeks ago connections began to be refused or timed out when connecting to my ISP's server. The message I was getting was Error FF queue job.

The log files really told me nothing apart from conenction timed out. I have been in contact my with ISP and they say over n over n over again it is my end not theirs.

I can not really find a realistic step by step guide on how to properly configure Mercury Mail but I did have it working fine before despite changing nothing.

Under Protocol Modules I have the options ticked as follows...


My PHP.INI file has

[mail function]
; For Win32 only.


It doesnt send or receive anything at all, it ignores emails created through my site and ignores emails created from the GUI send mail feature.

There are too many windows with settings to list here in one go but I am happy to do my best to provide details if needed. I'd appreciate any help to get this working. thanks


AFAIK the auto-reply (e.g. out-of-office notification) functionality of Mercury could only be controlled by Pegasus which is adapting and changing the file extension of the "areply" file.

In the meantime more and more colleagues retire Pmail and replace it by Thunderbird which is collaborating great with Mercury.

But a simple adjustment of Mercury's auto-reply function by another Mail client is missing.
Either we have to keep installed another Pmail installation, only started for switching the areply function, or we have to edit the areply file manually. But we don't want to grant every user full write access to its mailbox directory.

Are there any other solution in place?

recent by Joerg  ·  Aug 19 '23 at 9:12 pm


So the pdf file for mercury mail says that if you use the run a program option for a filter..

"The Run Program rule action will start the specified program, passing a temporary copy of the message on the commandline"

Well it's not working! I thought i was imagining it so i used a small test program i have for displaying parameters that are passed via the command line... no parameters are passed to it from mercury mail.

It does indeed start the program but it does not pass any parameters containing the email.

I really need this as i need to run a second mail server on the same machine on a different port (it's custom for another website and sends email via http to a url). If mercury can call another program and pass the email then the second program can simply pass the email via tcp connection to my other mail server.

Without the email being passed though, i'm unable to get this working.

Any ideas?

recent by Johannes  ·  Aug 16 '23 at 3:50 am
RHMoore posted Jul 30 '23 at 5:37 pm

I have not been able to send emails from Win-Pm to my Spectrum account since July 20th using Win-Pm .. I can still receive and download messages as normal. Accd to the error message log the email address I used for authentication is not the same as the address I've sent from. I've redacted my addresses in the log below, but they are the same. Also I can send email using an identical profile from my iphone or using the web-mail site. The problem occurs ONLY with Pegasus (both 4.8 and 4.81).

12:31:58.786: --- 30 Jul 2023, 12:31:58.786 ---
12:31:58.786: Connect to '', timeout 30 seconds, flags 16842753.
12:32:00.005: >> 220 cmsmtp ESMTP server ready
12:32:00.005: << EHLO []
12:32:00.070: >> hello [], pleased to meet you
12:32:00.070: >> 250-AUTH LOGIN PLAIN
12:32:00.070: >> 250-SIZE 30000000
12:32:00.070: >> 250-ENHANCEDSTATUSCODES
12:32:00.070: >> 250-8BITMIME
12:32:00.070: >> 250-STARTTLS
12:32:00.070: >> 250 OK
12:32:00.077: << MAIL FROM: SIZE=2244
12:32:01.080: >> 550 5.1.0 sender rejected. The email address you are sending as must match the email address you used to auth. Please check your SMTP settings. AUP#Out-1500

Hide topic messages
Enable infinite scrolling
1234 ... 115
All posts under this topic will be deleted ?
Pending draft ... Click to resume editing
Discard draft