I received a question from my client about how to add an external email warning message in Zimbra when receiving an email from outside. He wants to configure like in Office 365. So, this is how I configure external email warning message in Zimbra.
I am using Zimbra 8.8.15 on CentOS 7 when writing this article.
Create disclaimer-external.conf file
su - zimbra vi /opt/zimbra/conf/disclaimer-external.conf
Fill it with the following lines
use strict; $altermime='/opt/zimbra/common/bin/altermime'; @altermime_args_disclaimer = qw(--verbose --pretext=/opt/zimbra/data/altermime/_OPTION_.txt --pretext-html=/opt/zimbra/data/altermime/_OPTION_.html --force-for-bad-html); $defang_maps_by_ccat{+CC_CATCHALL} = ['disclaimer']; $allow_disclaimers = 1; @local_domains_maps = (["."]); @disclaimer_options_bysender_maps = ({ '.' => 'external_domains', },); 1;
Create external_domains.html and external_domains.txt files
vi /opt/zimbra/data/altermime/external_domains.txt
Fill with the following lines
CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
vi /opt/zimbra/data/altermime/external_domains.html
Fill with the following lines
<div style="background-color: #ffeb9c; width: 100%; padding: 2pt; font-size: 10pt; line-height: 12pt; font-family: 'Calibri'; color: black; text-align: left; border: 1pt solid #9C6500;"><span style="color: #9c6500;">CAUTION:</span> This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.</div>
Open file amavisd.conf.in
vi /opt/zimbra/conf/amavisd.conf.in
Add the following line above 1; at the end (before the last line)
include_config_files('/opt/zimbra/conf/disclaimer-external.conf');
Save and restart Amavis
zmamavisdctl restart
Below is an example when receiving email from outside/external
NOTE:
1. If you enable the disclaimer in Zimbra by following the Zimbra Wiki: Domain_level_disclaimer_support, your disclaimer text will be put before the message (–pretext). When the default is after the message
2. Please make sure the amavis service is running
Update 2 Dec 2020
If you want to skip adding an external warning for specific domains, create empty files and add to the configuration
Create empty text and html files
touch /opt/zimbra/data/altermime/local_domains.txt touch /opt/zimbra/data/altermime/local_domains.html
Then add local domains in disclaimer_options_bysender_maps and restart Amavis
@disclaimer_options_bysender_maps = ({ 'example.com' => 'local_domains', '.' => 'external_domains',
Update 30 Jun 2021
if DKIM not signed for outgoing message, please try the guide below
Open amavisd.conf.in
vi /opt/zimbra/conf/amavisd.conf.in
put comment (#) on this line “%%uncomment SERVICE:opendkim%% forward_method => ‘smtp:[%%zimbraLocalBindAddress%%]:10030′”. So that like below
## %%uncomment SERVICE:opendkim%% forward_method => 'smtp:[%%zimbraLocalBindAddress%%]:10030',
Save and restart Amavis
zmamavisdctl restart
Ref: How to Add External Email Warning Message – Prevent Email Spoofing in Office 365
Good luck 🙂
Hello Brother,
when I try to connect using just imap protocol, I receive protocol not supported. I have no problem with imaps and pops. But with just pop or imap, zimbra is not letting me fetch the email. How to resolve this. There is a need that I want to fetch email using just pop or imap ignoring the ssl/tls part.
Please help.
Thanks!
Hello,
Open Zimbra Admin | Configure | Global Settings | POP/IMAP | Enable clear text login
Hi,
thanks for your article.
I tried to implementit on a Zimbra Network 9.0
And works, with the exception that in a multipart mime message add only the text part and not the html.
Any suggestion?
Thanks
Hi Luigi,
If you receive email with html mode, disclaimer will use html mode. If receive text mode, disclaimer will use text mode.
Hi Iman, my email has both (as multipart/alternative) and the disclaimer is added into the text part but the email is displayed in HTML.
As result of corse the disclaimer is not visibile.
Attached the source of the email body.
Thanks
Luigi
Content-Type: multipart/alternative; boundary=”0000000000008d83aa05b1f6d9ae”
–0000000000008d83aa05b1f6d9ae
Content-Type: text/plain; charset=”UTF-8″
CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
Test email Disclaimer.
Luigi
–0000000000008d83aa05b1f6d9ae
Content-Type: text/html; charset=”UTF-8″
Test email Disclaimer.Luigi
–0000000000008d83aa05b1f6d9ae–
Hi Luigi,
Thanks. This also happens when receiving email from Gmail. But it works fine if the email is from another domain
Hi Iman,
Thanks for the clarification, do you think there is any way to solve it for the email arriving from gmail or to force HTML instead of text?
Dear Imanudin Assalamu Alaikum
Thanks for your nice help. I applied this “External Email Warning Message” also working but problem is that all incoming email shows this warning message including local domain. How can I omit to show warning message when getting email from local domain …?
What I have done wrong ?
Regards
Ashraf
Waalaikumussalam,
If you already enable disclaimer previously, you can disable by this command
Dear Iman
Thanks for quick reply. I applied that command but still same. Please check below line is it ok or not…
use strict;
$altermime=’/opt/zimbra/common/bin/altermime’;
@altermime_args_disclaimer = qw(–verbose –pretext=/opt/zimbra/data/altermime/_OPTION_.txt –pretext-html=/opt/zimbra/data/altermime/_OPTION_.html –force-for-bad-html);
$defang_maps_by_ccat{+CC_CATCHALL} = [‘disclaimer’];
$allow_disclaimers = 1;
@local_domains_maps = ([“.”]);
@disclaimer_options_bysender_maps = ({
‘.’ => ‘external_domains’,
},);
1;
Hi Ashraf,
You can create empty text and html files
Then add local domains in disclaimer_options_bysender_maps
Then restart Amavis
Dear Iman
Thanks Solved it.
Dear İman,
Assalamu Alaikum
‘example.com ???.com 9999.net’ => ‘local_domains’,
‘xxxxx.com yyyy.com’
What is the format for writing multiple domains?
@disclaimer_options_bysender_maps = ({
‘example.com’ => ‘local_domains’,
‘example1.com’ => ‘local_domains’,
‘example2.com’ => ‘local_domains’,
‘.’ => ‘external_domains’,
ok.
Hi Iman,
After further testing and checking looks like that the problem is that Gmail does not include the tags to the email body and so altermime does not understand where to insert the disclaimer.
Could you think of any trick to either force altermime to insert the HTML code or to modify the email body to add the 2 missing tags?
Thanks
Luigi
Hi Luigi,
I’ve test in my lab. If you change –pretext and –pretext-html with –disclaimer and –disclaimer-html, altermime works properly. However, altermime will put at the bottom of the message, not at the top of the message
Hi Iman,
Thanks again, this works.
I’m checking altermime on why is doing that. I will let you know if I can find a solution.
Thanks again.
Hi Iman,
I found this in the changelog of alterMIME, explain the problem, but does not bring us close to the solution.
05 May 2010:
PLD-DEV: Changed the way the pretext system works, now it’s the
same as the disclaimer system of specifying files
–pretext=
–pretext-html=
–pretext-b64=
If you have BOTH pretext and disclaimer files specified then
alterMIME will now insert both in the single run.
PLEASE NOTE – due to the streaming requirements the PRETEXT
HTML insertion routine -depends- on there being a BODY tag
present else the insertion will not occur.
Hi Iman,
I found that the problem is not only related to gmail (which does not insert into the email the and tags) but to any email client which will be using a body tag with additional parameters and moving the closing > into next line).
The problem is due to the streaming approach of altermime reading the email line by line so if a tag is split in 2 lines altermime sees the beginning but will not find the ending of the tag and decide there is no tag and will not insert the disclaimer.
Here an extract of an email created by Outlook,:
<p =
as you can see the tag body begin on one line but ends in the next line.
So the solution is to either modify altermime to support tags across lines or to use some other tool to fix the HTML in the email.
Thanks
Luigi
Hi Luigi,
Thanks for your research. That’s why the disclaimer is placed at the bottom by default 🙂
Hi Iman,
Thanks for your reply .. it’s working on gmail well but for other domains it added the caution warning 2 times.. any solution for this?
Hi,
If you already use a disclaimer, please disable and only use this configuration.
Hi Iman bro,
Thanks for your immediate reply, i did not enabled disclaimer in my zimbra server.. i used your configuration only .. but non gmail domains email header looks like this it included 2 times.. i dont know where to check.
testetst
———————————————————————————————————————————————————————–
# CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe. #
———————————————————————————————————————————————————————–
–=_574ea0e3-95ae-4ba5-adc6-41d08a936039
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 7bit
testetst
CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
–=_574ea0e3-95ae-4ba5-adc6-41d08a936039–
Hi Eman,
Good day,
When I configure this, this is not working my zimbra version is 8.7.11_GA_3865.NETWORK.
can you help me with this, please?
By the way, I have a default disclaimer. when I configure this my default disclaimer also not working
Thank you
Thank you.
Hi Eman,
Did you try if this is working in 8.7.11_GA_3865.NETWORK.
Thank you.
Hi Eman,
Good day!
Did you try if this is working in 8.7.11_GA_3865.NETWORK.
Thank you.
Hi Iman,
Is any option to add any tag like [External] in subject for only all external emails..
I have tried the postfix_header_check rule but it add double exteranal tags for all external mails.. can you give some solution…
This below rule i added
cat /opt/zimbra/conf/custom_header_checks
#/^Subject:(.*)/ REPLACE Subject: [EXTERNAL]
if /^Subject:/
# Subject checks go here
/:(.*)/ REPLACE Subject:[EXTERNAL]$1
/^/ OK
endif
Hi, is this solved this problem? I have a same problem.
Hi,
Thanks for this article. Can you share how to add in the subject line as External for all incoming messages which are originated from outside domain.
Hi,
I have to test it in my lab first. The guides will be updated soon
Thank you.
Hi Imam,
could you achieve the solution for adding in subject [External] tag.
Please provide some solution.
Thank in advance.
Regards.
Hi Om,
I will try in my lab first
Thank you Iman for your tutorials on zimbra.
Whenever you get time, Please try getting some solutions for adding in subject [External] tag.
Thanks and Regards
Om
Hello Mr. Iman,
thank you for your article,
i try the script in zimbra version Release 8.6.0_GA_but the script is not working when i send the email from another organization, but i try in zimbra version Release 8.7.11_GA is working.
please advice.
thank you
Hi,
Zimbra 8.6 has obsolete. Please upgrade to the latest version
It works on Zimbra 8.6
You just need to change
/opt/zimbra/common/bin/altermime
to
/opt/zimbra/altermime/bin/altermime
Hi,
I am already using –disclaimer to placed at the bottom, this script breaks everything, how can be used together?
thanks
Hi,
You must choose between –disclaimer or –pretext. You cannot use both
By the way, I have a default disclaimer. when I configure this my default disclaimer not working? Is the way?
Hi Friend,
I have tried this on ZCS 8.8.8, But Warning adds on both incoming and out going emails as well.
Do you have any suggestions.
use strict;
$altermime=’/opt/zimbra/common/bin/altermime’;
@altermime_args_disclaimer = qw(–verbose –pretext=/opt/zimbra/data/altermime/_OPTION_.txt –pretext-html=/opt/zimbra/data/altermime/_OPTION_.html –force-for-bad-html);
$defang_maps_by_ccat{+CC_CATCHALL} = [‘disclaimer’];
$allow_disclaimers = 1;
@local_domains_maps = ([“.”]);
@disclaimer_options_bysender_maps = ({
‘example.com’ => ‘local_domains’,
‘.’ => ‘external_domains’,
},);
1;
Hi Roshan,
Please check my comment here: https://imanudin.net/2020/10/17/zimbra-tips-how-to-add-external-email-warning-message/#comment-58841
Hi Imam,
I have tried this on 8.8.15
But the issue is if i send mail to external user, then he also get the same caution message.
Hi sarfraj,
Please see my update at “Update 2 Dec 2020”
Good day! Tell me how to make sure that my warning does not write in outgoing mail?
I don’t understand. I did everything according to the instructions! All incoming mail is not marked in any way, and everything that I send is marked with a warning. and if I create empty files it doesn’t work at all! Please help me!
Hello Andrey,
If you are using Disclaimer, please disable it.
zmprov mcf zimbraDomainMandatoryMailSignatureEnabled FALSE
send mail to my domain for other domain and dont work((((
Dear Imanudin, Assalamu Alaikum
Please help me…? I face some problem. Some user of zimbra can’t received attached file more then 1MB (even same domain also) but these user can send attach file and some have no problem. I gave you below quota information.
Zimbra version: Release 8.8.7.GA.1964.UBUNTU16.64 UBUNTU16_64 FOSS edition.
message_size_limit = 104857600
zimbraMailContentMaxSize: 102400000
zimbraMtaMaxMessageSize: 104857600
zimbraFileUploadMaxSize: 3145728000
user quota unlimited
error message:
: host 127.0.0.1[127.0.0.1] said: 552 5.3.4 Message
size (10808532 B) exceeds size limit (in reply to end of DATA command)
Regards
Ashraf
Hi,
Please paste the result from the following command
Hi Iman
what if only the incoming email received a disclaimer
Hi Heri,
Could you give me an overview of what do you mean?
Hi Iman, Assalamulaikum
I am using this external email warnings some of our mail server.
Currently I configure it in one another server , but not working.
CentOS release 6.10 (Final)
Release 8.6.0_GA_1153.RHEL6_64_20141215151155 RHEL6_64 FOSS edition, Patch 8.6.0_P14.
what i have to do now.
Hi Jahid, Waalaikumussalam.
please try it in the new version of Zimbra for comparison. I tested it on the new Zimbra
we have implemented –pretext caution successfully but including some domains, gmail & Microsoft does not apply –pretext. what can we do?
thank you.
Hi Imal,
Some domains like gmail does not appear on header if use pretext. However, if you see full header, you will find additional text using pretext.
Hi iman,
you are corerct, i can see this in gmail header
X-Amavis-Modified: Mail body modified (using disclaimer) – mymail.mydomain.com
then any idea on this?
thank you,
Hi,
If you put it in the footer, the disclaimer will show.
Hello Iman,
I have a little question, I did all incoming mail adding incoming mail tag in the body, My problem is repyling mail to much tag. I want to if have a one tag, not add another tag, if not have a body tagging add to tag. Is this possible?
I hope I was able to ask correctly now
Hi Ibrahim,
You can try this one: https://imanudin.net/2017/03/29/zimbra-tips-how-to-disable-disclaimer-when-reply-and-forward-email/. I do not know it works or not
Hi Iman,
I just realized that using this approach breaks DKIM signature for outgoing messages (even if no text is added to the message).
Any Idea?
Thanks
Luigi
Hi Luigi,
If you put disclaimer on the footer/bottom, DKIM works properly. It seems disclaimer breaks DKIM if put on the header
I follow the instructions and it was brilliant to add the disclaimer text to emails. However, this then broke my dkim configuration, so my emails to Google were all failing. It said that amavis modified the body hash.
Do you know a way around this? To have the disclaimer and yet not modify the email so it fails dkim?
Hi Paul,
Please try bypass amavis from local network : https://wiki.zimbra.com/wiki/How_to_bypass_local_network_with_amavis
Hi Paul,
Please see my update on 30 Jun 2021
iamn, in my case nothing appens. is this the correct config? change exemple.com to my domain?
use strict;
$altermime=’/opt/zimbra/common/bin/altermime’;
@altermime_args_disclaimer = qw(–verbose –pretext=/opt/zimbra/data/altermime/_OPTION_.txt –pretext –
html=/opt/zimbra/data/altermime/_OPTION_.html –force-for-bad-html); $defang_maps_by_ccat{+CC_CATCHALL} = [‘disclaimer’];
$allow_disclaimers = 1;
@local_domains_maps = ([“.”]);
@disclaimer_options_bysender_maps = ({
‘MYDOMAIN.com’ => ‘local_domains’, ‘.’ => ‘external_domains’,
},); 1;
Hi,
Please re-check the guidance. Maybe you miss something/step
I followed the instructions and checked everything twice. I’m running on 8.7.11_GA_1854.FOSS
is there any additional set up for this version?
Hi,
Please try it on the dev server using the same version used in this article.
Great guide.
We already have domain disclaimers , when we activate the external warning , now all outbound mails get two disclaimers instead of one.
If we disable the external warning in /opt/zimbra/conf/amavisd.conf.in #include_config_files(‘/opt/zimbra/conf/disclaimer-external.conf’);
Then only 1 disclaimer is send out, as it should be.
Any advice?
Hi Deon,
Please try to follow “Update 2 Dec 2020”
Hello, thank you very much for your manual, it helped me a lot!
And I have a question, is there possibility to disable External Email Warning Message for one or several internal mail recipients ?
Hi Bogdan,
Currently not possible
Dear Iman
I followed the steps using zcs-8.8.15_GA but can’t seem to get it working.
Our domain uses disclaimer and zimbraDomainMandatoryMailSignatureEnabled TRUE
If i send from external domain to my domain the warning does not show.
Any ideas?
Thank you
Hi Emile,
Please try disable your Disclaimer
Hi Iman,
I am using this on zimbra 8.8.15 and it’s working good on the footer as per your instructions. but for few emails it is not inserting the disclaimer and in logs I see the below errors for such emails. Can you help:
amavis[28950]: (28950-04) program /opt/zimbra/common/bin/altermime said: Attempting to add disclaimer\nWARNING: Could not insert HTML disclaimer into email\nDone.\n
Also in few emails we see the disclaimer are inserted multiple times.
Tried this, but it breaks DKIM signing of outgoing emails. upon disabling DKIM Signing:
## %%uncomment SERVICE:opendkim%% forward_method => ‘smtp:[%%zimbraLocalBindAddress%%]:10030’,
completely disables DKIM signing.
Release 8.8.15_GA_3953.RHEL8_64_20200629025823 RHEL8_64 FOSS edition, Patch 8.8.15_P24.
Hi,
TXT part works. HTML not showing up..
Zimbra 9.0.0_GA_4126 (build 20210820113850)
Some internal emails from internal systems are being included this note. Do you know the reason? Where does it check and is the email internal or external?
Hi Yumi,
By default, this guidance will add an external warning for both (internal and external). However, you can ignore it by creating an empty txt/html file. The guide is at the bottom of the article
Thank you for your help.
I have another doubt. I followed your instructions to change “pretext” to “disclaimer” it worked for gmail, the notification is appearing in the footer, but for the other emails it is appearing with the duplicate notification. Do you know why and how to fix it?
Hi Yumi,
Please make sure you do not enable a disclaimer for your domain. If you do, you should choose one. External warning or disclaimer
zmprov mcf zimbraDomainMandatoryMailSignatureEnabled FALSE
It is disabled… I restarted the service and it is still duplicating.
Exemple hotmail
Content-Type: text/plain; charset=”iso-8859-1″
Content-Transfer-Encoding: quoted-printable
Teste
CUIDADO: Este e-mail foi originado de fora da organiza=C3=A7=C3=A3o. N=C3=A3o clique em links ou abra anexos, a menos que reconhe=C3=A7a o remetente e saiba que o conte=C3=BAdo =C3=A9 seguro.=0A
–_000_
Content-Type: text/html; charset=”iso-8859-1″
Content-Transfer-Encoding: quoted-printable
Teste
=
CUIDADO: este e-mail foi originado de fora da organização. Não clique em links ou abra anexos, a menos que reconheça o remetente e saiba que o conteúdo é seguro.=0A
=
=
CUIDADO: este e-mail foi originado de fora da organização. Não clique em links ou abra anexos, a menos que reconheça o remetente e saiba que o conteúdo é seguro.=0A
=
–_000_
Hi,
Related to DKIM signing we fixed to issue by setting allow_disclaimers => 0 to $policy_bank{‘MYNETS’} on line 86 in file /opt/zimbra/conf/amavisd.conf.in
Related to duplicating disclaimer you can try to remove –force-for-bad-html
Hi Sebastian,
Thank you for your sharing
Hi Iman,
Regarding the dkim signing, which is better do you think? Your solutionn in the 30 Jun 2021 Update or Sebastian’s solution in his October 31, 2021 Post?
Thanks,
Bob
Hi Bob,
You can follow Sebastian’s solution
DKIM signing was fixed as per your instructions by setting allow_disclaimers => 0 to $policy_bank{‘MYNETS’} on line 86 in file /opt/zimbra/conf/amavisd.conf.in
whereas when we remove –force-for-bad-html, it stops sending disclaimer.
Also disclaimer is getting skipped in few of the external emails and in few of the emails its getting inserted twice… Not sure the reason though…
I have the same problem with this discalimer: skipped in few of the external emails and in few of the emails its getting inserted twice.
Is there a solution? Thanks.
Hi Paolo,
Some emails from external domain cannot be added. The example is email from Gmail
Hi Sebastian,
Could you please paste the lines that you changed showing what they look like now? I’m faily new to Zimbra and I’m still trying to get my head around a lot of this stuff.
Thanks,
Bob
Hi guys!
When –force-for-bad-html is enabled, it’s sends two disclaimers when email comes from outlook, yahoo and local_domains. But, when comes from Gmail, there is one disclaimer.
So, I remove –force-for-bad-html, stops sending two disclaimers. But when email comes from Gmail, there isn’t disclaimer. 🙁
Has anyone managed to resolve this issue of duplicate notification in some emails?
Hi Iman,
I have followed all step as per above guide, However disclaimer doesn’t work for me.
I am using external disclaimer with my domain which i disabled as suggested in one of your comment. I have tried in both like with –pretext and –disclaimer but no luck.
How do i troubleshoot where is the issue? is there any log where i can see what exactly is the issue?
Below are my zimbra details
OS-Ubuntu
Zimbra version – 8.8.15
domain disclaimer – Which disabled using – zmprov mcf zimbraDomainMandatoryMailSignatureEnabled FALSE
Hi Iman,
How to send the signature created in Zimbra when sending mail from Outlook or Thunderbird?
For example : Signed mail is not sent when sending mail when configured with Activesync, IMAP or POP via Outlook. But when sending mail via Zimbra Web, it is signed.
Waiting for your solutions. Thanks.
Hi Aynur Yilmaz,
You should create signature manually for every devices that used
Hello
I have zimbra Release 9.0.0.GA.4178.UBUNTU20.64 UBUNTU20_64 NETWORK edition, Patch 9.0.0_P25.
I followed You instrtuctions but on my zimbra external email warning message does not work
any sugestion what to check
Hello,
I haven’t tried on Zimbra 9
Hi iman,
Is it possible to add multiple domains dynamically in the script ? i don’t want to edit same file after creating new domain. i should be dynamic . i am having 500+ domains in my environment
Hello Tom,
1. You can use global warning for all domains. The dot (.) it means for any domains
2. Because this from disclaimer/altermime application, you can follow the sample configuration from Altermime for dynamic
Hi Iman;
I got an extra empty line at the begining of each incoming email after adding the disclaimer with the (–pretext), the question is how can I remove it?
Thanx
HI!
If i use disclaimer, this rocesso in post don’t work ?
Regards;
Prezados, bom dia.
Fiz todos os passos, porém parece que barra em alguma coisa ou ele nao consegue ler, porque nao chega o email externo com a mensagem, fiz todos esses passos, e nao deu nenhum erro, so que nao executa.
Hello,
Some emails from outside such as Gmail, the external warning does not appear. Please use PMG to achieve external warning from all domain. Please see the article here: https://imanudin.net/2023/02/16/adding-an-external-warning-to-email-bodies-in-proxmox-mail-gateway-a-simple-guide/
zimbra_external_email_warning_message Does this work in Zimbra 8.8.15 Open Source Version
Hi Sandeep,
Sure. This guidance can be applied in ZCS 8.8.15
Good Afternoon,
I executed this procedure on a Carbonio 24.3.0 email server, but the warning message does not appear.
https://imanudin.net/2020/10/17/zimbra-tips-how-to-add-external-email-warning-message/
Is it necessary to make any other changes?
Best regards,
Hi Douglas Basso,
I haven’t tried it on Carbonio. However, I recommend you to use external antispam like PMG. Then, you can apply external warning [1]
[1] https://imanudin.net/2023/02/16/adding-an-external-warning-to-email-bodies-in-proxmox-mail-gateway-a-simple-guide/
saya di zimbra 8.8.15 ga jalan kenap ya
Hi mas,
Bisa coba pakai external antispam seperti PMG: https://imanudin.net/2023/02/16/adding-an-external-warning-to-email-bodies-in-proxmox-mail-gateway-a-simple-guide/