/
ChangeLog
1100 lines (969 loc) · 54.4 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
2020-08-12 Version 9.4
This release fix several issues reported by users during the last
year, it also adds some new features and configuration directives.
* Add support for dockerization based on the httpd apache2
docker image with sa_cache cron support built in.
It also comes with a docker-compose example file.
* Add configuration directive POSTSCREEN_DNSBL_THRESHOLD to set the
threshold to detect case where postscreen reject an ip address. By
default reject: RCPT from ... are not logged by postfix, we mark
message as DNSBL rejected when DNSBL rank value is upper or equal.
Default: 3.
Complete list of change and credits:
- Fix on possible use of an undefined value as an ARRAY reference.
Thanks to Paul Brown for the report.
- Change INSTALL file as a symlink to the README file
- Update installation prerequisite
- Fix previous patch on bounce address validation tag when the email
address start with <.
- Remove bounce address validation tag (prvs=) from email address.
Thanks to Shawn for the feature request.
- Add support for dockerization. Thanks to Lukas Elsner for the
patch.
- Fix week number parameter in URL. Thanks to jassi0001 for the
report.
- Fix warning: undefined value as an ARRAY reference at line 2619.
Thanks to Jason Dishop for the report.
- Add configuration directive POSTSCREEN_DNSBL_THRESHOLD to set the
threshold to detect case where postscreen reject an ip address.
Thanks to Hasan Calisir for the feature request.
- Fix debian build with unsupported format in changelog version.
Thanks to loopism for the report.
- Remove INSTALL file that was duplicating information from README.
2019-08-08 Version 9.3
This release fixes some bugs reported since last release and adds several
additional milters and useful features.
New features:
- Add support to Eset Mail Security reporting Virus and Spam detection.
- Add report of sender relay for RBL Check detailed report.
- parse amavisd-new spam detail and autolearn
- Add support to MimeDefang filter_check_header that discard message
following mail header score.
- Add report of all recipients addresses for spam with multiple recipients
as when messages are discarded they all have the same ID. This was
resulting in the right count of senders but wrong count of recipients.
Note that in this case the spam received counter is still related to
senders count as they are not sent. Thanks to Hans Mayer for the report.
- Add parsing of SPF/DKIM log entries.
- Added database lookup of virtual domains, so sendmailanalyzer is not
limited to the LOCAL_DOMAIN configuration directive. This is useful
for mail servers which have virtual users and domains in their database
and therefor no static configuration.
- Change pie graph to bar graph for top senders and recipient.
- Allow file path as value for LOCAL_DOMAIN configuration directive.
New configuration directives:
- Add new configuration directive RELAY_IP_ONLY to only store recipient or
sender relay as Ip addresses. Actually when possible sendmailanalyzer
extract the fqdn part of the relay not the Ip address. Enable this
directive if you just want Ip addresses.
- Add three new configuration directives to the sendmailanalyzer configuration
file:
- VIRTUAL_DOMAIN_DB DBI:mysql:database=mailserver:host=localhost
Leave this unconfigured if you don't have virtual domains in a database
set up or set the value to a valid Perl DBI DSN (data source name). Here
this is a connection to a MySQL database so it require that Perl module
DBI and DBD::MySQL are installed on your system.
- VIRTUAL_DOMAIN_DB_USER and VIRTUAL_DOMAIN_DB_PASS
The user and password to use to connect to the database.
- VIRTUAL_DOMAIN_DB_QUERY SELECT name FROM virtual_domains
The SQL query to use to retrieve the list of virtual domain that will
be appended to the LOCAL_DOMAIN array. See LOCAL_DOMAIN for more
information.
- Add EXCLUDE_LINE configuration directive to exclude all lines matching a
regexp from being parsed. Character # in the regex need to be escaped with
a backslash. Use it to prevent unwanted line to be reported in Rejection reports.
- Add NO_HOST_DOMAIN configuration directive. When activated, remove domain part
of the syslog hostname. Some programme use FQDN instead of the single hostname.
Set it to 1 if you have two report for the same hostname but one with the domain
part.
- On some MTA, message delivery is done outside and only queuing is logged,
this mean that messages are counted as incoming but not delivered. Enable
new directive NO_QUEUE_EXCLUSION to force sendmailanalyzer to take them
as sent.
Complete list of change and credits:
- Add support to Eset Mail Security reporting Virus and Spam detection.
Thanks to Peter Mares for the feature request.
- Fix bug on extracting subject starting with Fwd: or Re:
- Remove code for parsing ipv6 addresses in data files, it should be no
more used as character : is replaced by _ in ipv6 address at storage
time.
- Fix Top Spam statistic when click to open detail sender relay was not
shown. Thanks to biji for the report.
- Fix for postfix amavis log that contains no Message-ID. Thanks to biji
for the patch.
- Add report of sender relay for RBL Check detailed report. Thanks to
biji for the patch.
- Parse amavisd-new spam detail and autolearn. Thanks to biji for the
patch.
- Fix parsing of barracudacentral.org rbl. Thanks to biji for the patch.
- Fix calendar that was not displaying last week. Thanks to Pete Sherwin
Villanueva for the report.
- Fix percent values of hbar graphs
- Add new configuration directive RELAY_IP_ONLY to only store recipient or
sender relay as Ip addresses. Actually when possible sendmailanalyzer
extract the fqdn part of the relay not the Ip address. Enable this
directive if you just want Ip addresses.
- Add support to MimeDefang filter_check_header that discard message
following mail header score. Thanks to Hans Mayer,for the report.
- Add report of all recipients addresses for spam with multiple recipients
as when messages are discarded they all have the same ID. This was
resulting in the right count of senders but wrong count of recipients.
Note that in this case the spam received counter is still related to
senders count as they are not sent. Thanks to Hans Mayer for the report.
- Update README using: pod2text doc/sendmailanalyzer README.
- Fix documentation about systemd start script. Thanks to Kenneth Fribert
for the report.
- Add parsing of SPF/DKIM log entries. Thanks to r-sherwood for the feature
request.
- Added database lookup of virtual domains, so sendmailanalyzer is not
limited to the LOCAL_DOMAIN configuration directive. Thanks to
thinksilicon for the patch.
- Change pie graph to bar graph for top senders and recipient. Thanks to
Jonathan Baker-Bates for the feature request.
- Fix ipv6 placeholder in top reports and csv export.
- Fix code to handle the exceptional case where a new log has the same size
of the old one.
- Fix top postgrey week caching.
- Fix new log file with the exact same size than the previous one that was
not parsed.
- Change clean_relay() function to handle ipv6 addresses.
- Fix relay cleaning on postgrey logs.
- Fix postfix parsing of spam reject.
- Fix make clean to remove autogenerated man files.
- Update copyright year.
- Change default HTML charset to utf-8 instead of iso-8859-1. Thanks to
Philippe Schlumpf for the report.
- Add translation for delivery flow with new Unknow direction.
- Improve set_direction() function.
- Try to automatically skip verbose mode in postfix that pollute the log
and generate lot of wrong SysErr. Thanks to Kenneth Fribert for the report.
- Allow file path as value for LOCAL_DOMAIN configuration directive.
The file must contain the list of domain name that must be checked
against the sender/recipient relays, one perl line. Thanks to Steffan
Noord for the feature request.
- Fix case where a message was stored as not delivered, now a message that
is not queued on localhost is considered as delivered. Thanks to enekux
for the report.
- Fix delivery direction when only LOCAL_DOMAIN was set. Thanks to enekux
for the report.
- Fix direction in cache, changes from sendmailanalyzer was not reported
into set_direction() function.
- Fix duplicate of recipient entries in detailed view when the message sent
was also been registered as spam. Thanks to Paul Cantle for the report.
- Fix wrong report of DNSBL Spam blocked that was including all 550 5.7.1
messages even those not related to RBL. It now attempts to find keywords
"see" or "listed" in the rejection status.
- Fix missing translation and empty links in main menu, Perl since 5.26 does
not include current directory . into the @INC array. Thanks to Enrico Morelli
for the report.
- Update Apache configuration information and set default to 2.4 configuration.
- Fix spec file on lang files. Thanks to Steve Jones for the patch.
- Fix storage of sender relay for postfix MTA. Thanks to Stephe Jones for the
report.
- Add condrestart to start script. Thanks to Steve Jones for the patch.
- Add information about rebuilding report.
- Fix unparsed line of MailScanner+Clamd. Thanks to Johan Glenac for the report.
- Apply patch to exclude line that match a regex in the real time parsing.
- On some MTA, message delivery is done outside and only queuing is logged,
this mean that messages are counted as incoming but not delivered. Enable
new directive NO_QUEUE_EXCLUSION to force sendmailanalyzer to take them
as sent. Thanks to Cedric Saunier for the report.
- Allow policyd-weight "Policy action=DUNNO" to be parsed like "decided action=DUNNO".
- Fix start script to kill all pids of the GPID to stop sendmailanalyzer
processes. Thanks to sirydog81 for the report.
- Fix regexp in AMAVIS_NAME to detect amavis log lines. Thanks to enekux for
the report.
- Fix a possible non detected amavis log line.
- Update Spanish translation to proper es_ES, using UTF-8 charset.
- Fix parsing of amavis virus detection. Thanks to Jean-Francois Legendre
for the report.
- Rename and update spanish locale to es_ES, not sp_SP which does not exist.
Thanks to Jesus Guardon for the report.
- Add start script for gentoo. Thanks to Edoardo Liverani for the file.
- Fix bug that prevent sendmailanalyzer to follow the systemd journal in
background. Thanks to James xuxd for the report.
- Change path to PID file from /tmp to /var/run. Thanks to James xuxd for the
report.
- Fix postfix log entry with to=+orig_to= that was not storing the date and in
consequences was not added to data file. Thanks to kpal38 for the report.
- Fix SPF rejection. Thanks to Erik for the report.
2016-01-17 Version 9.2
This release fixes some bugs reported since last release and adds several
additional milters and useful features.
* All column in detailed views are now sortable.
* Add support to systemd journalctl with the JOURNALCTL_CMD configuration
directive or the -j command line option.
* Allow parsing of log files coming from multiple host.
* Add support to postfix clamsmtpd virus and spampd detection.
* Add report of subject in detailed view when available in log file.
* Add date before hour in the detailed report.
* Add explanation about how to rebuild reports in documentation.
There's also new command line parameters or configuration directive:
* Add -j | --journalctl command line option to specify the journalctl command
* Add -F | --force command line option to be used instead of -f | --full to
parse full log file without taking care of the history file LAST_PARSED.
This is useful if you always have log files with fresh entries and log
files coming from multiple host. Before that you had to remove the
history file before parsing a new log.
Here is the full list of change and credits:
- Update de_DE translation file. Thanks to Wolfgang for the patch.
- Fix wrong ExecStop command. Thanks to fmalfatto for the patch.
- Add sorttable.js javascript to be able to sort on each column in detailed
views. Thanks to Siervo Andrey Amado Benavides for the patch.
- Fix systemd start script
- Allow yyyy-mm-dd hh:mm:ss in history timestamp for journalctl together
with iso format: yyyy-mm-ddThh:mm:ss.
- Prevent redefining --since journalctl option if it is already given in
JOURNALCTL_CMD or --journalctl.
- Add documentation about JOURNALCTL configuration directive and the -j or
--journalctl command line option.
- Fix command line option in uppercase and not.
- Fix wrong status and spam rule for spam rejected by eXpurGate milter.
Thanks to Tiyma Ahmed for the report.
- Fix Postfix/Amavis discarded spam and virus that appears with status sent.
Thanks to Miquel Angel Daniel Veny for the report.
- Fix long spamassassin messages that are not detected as spam by sendmail
analyzer. Thanks to Stefan Berger for the patch.
- Add information about the FORCE configuration option and -F command line.
- Add -F | --force command line option to be used if you always have log
files with fresh entries and log files coming from multiple host. Thanks
to Sladjan Andjelic for the feature request.
- Update Debian package and documentation in packaging/README. Thanks to
Nicolas Quiniou-Briand for the report.
- Update copyrights.
- Fix start script, it was not killing off the process, added -s kill. Thanks
to Gary McLean for the patch.
- Add support to sendmail milter with subject rewriting.
- Fix an other issue in message delivery direction. Thanks to Gary McLean for
the report.
- Add date before hour in the detailed report.
- Add date with hour to the CSV details file output. Thanks to Tsioritafita
Rajahanisainana for the report.
- Remove --duplicate option, it is too much confusing. Fix case where SA
doubled recipient entries with the same message-id but not the same MTA id.
- Fix postfix double delivery by using "queued as" and "orig_queue_id".
- Fix case where sender relay was not checked against LOCAL_DOMAIN to find
mail incoming direction. Thanks to Kulikov Dmitrii for the report.
- Fix case to avoid double when postfix send the message locally to a plugin.
- Change MTA_NAME default value to add spampd: sm-mta|sendmail|postfix|spampd
- Add support to postfix clamsmtpd virus and spampd detection. Thanks to
Zdenek Zamecnik for the feature request.
- Add subject field to CSV download.
- Add report of subject in detailed view when available in log file. Thanks
to Tsioritafita Rahajanisainana for the feature request.
2015-04-18 Version 9.1
This release fixes one year of reported issues, adds several additional milters
and useful features.
* Add CSV export of top senders and recipients as well as search results.
* Add STARTLS status report in the Status report.
* More translation file: Russian and Italian.
* Add DSN report for postfix log.
* Add support to Exim log file.
* Add support to milter-limit reported in Top Rejection & Events report
with status starting with "has exceeded ...".
* Improve incremental mode by seeking directly to last parser position
in the logfile after last run. It will also auto detect file rotation
and fall back to the start of the file when the file has changed.
* Add postfix warning into SysErr reports.
* Add support to spampd spam detection.
* Add information about settings for sendmailanalyzer into systemd service.
* Add ruleset=check_relay with reject=550 5.7.1 to the spam reports.
There's also new command line parameters or configuration directive:
* --duplicate command line option to use to fix a bad Postfix behavior
which use different MTA id per recipient for a single message. Note that
when enabled, you will not see messages with multiple recipient.
* Add new configuration directives EXCLUDE_FROM, EXCLUDE_RELAY and EXCLUDE_TO
to not report emails from/to the specified list of senders/recipients or
from senders relay.
* Add WEEKLY_FREE_SPACE configuration directive to force sa_cache to archive
or remove data file each weeks instead of default per month.
Here is the full list of change and credits:
- Detailed views are now also downloadable as CSV file. Thanks to Tsioritafita
Rahajanisainana for the feature request.
- Fix computation of starttls graph. Thanks to MAYER Hans for the report.
- Allow download of Top senders and recipients in CSV format from a link [csv]
after the column header. Thanks to Tsioritafita Andre Rolly Rahajanisainana
for the feature request.
- Add russian translation. Thanks to sef1976 for the patch.
- Add --duplicate command line entry to fix a bad Postfix behavior which use
different MTA id per recipient for a single message. Note that when enabled
you will not see messages with multiple recipient. Thanks to Olivier Zolli
for the report.
- Add STARTLS status report. Thanks to Hans Mayer for the feature request.
- Fix documentation about MAIL_GW and MAIL_HUB where ip addresses must be
used instead of DNS name. Thanks to Roger for the report.
- Fix comment to MAIL_GW and MAIL_HUB where ip addresses must be used instead
of DNS name. Thanks to Roger for the report.
- Remove rejected mail from top senders statistics. Thanks to Michal Paulus
for the report.
- Add DSN report for postfix log. Thanks to Wolfgang for the feature request.
- Fix DNSBL entries are missing if the from=<>. Thanks to Olivier Zolli for
the patch.
- Update configuration file in debian directory.
- Add Italian translation file. Thanks to Luca Sasdelli for the patch.
- Fix unrecognized virus infection log report produced by amavis-new. Thanks
to Olaf Menzel for the report.
- Fix case where incoming message was not counted in messaging flow.
- Fix spamd sendmail parser, some messages was lost. Thanks for Sir Y Dog
for the report.
- Remove README.RPM from slackBuild, the file no longer exists. Thanks to
Syr Y Dog for the report.
- First work on adding support to Exim log file.
- Add new configuration directives EXCLUDE_FROM, EXCLUDE_TO and EXCLUDE_RELAY
to not report emails from the specified list of senders or senders relay.
Thanks to Dave Wreski for the feature request.
- Fix rejection Top status with Domain of sender address....
- Fix Top DSN wrong report count. Unknown senders are marked as unknown.
Thanks to Paul Cantle for the report.
- Fix Top DSN details reports. Thanks to Paul Cantle for the report.
- Fix enhdnsbl rejection, they should be reported as DNSBL spam now. Thanks
to Piotr Bodnar for the report.
- Limit Top rejection status to any text before : character.
- Fix some status cleanup.
- Add support to milter-limit. Will be shown in Top Rejection & Events report
with status starting with "has exceeded ...". Thanks to Juan Carlos Sanchez
for the feature request.
- Fix missing sender relay when no DNS name was appended in front. Thanks to
Juan Carlos Sanchez for the report.
- Exclude authid single message from System messages report.
- Add aggregating of STARTTLS error.
- Fix a possible case where Amavis Hits score was not stores.
- Make systemd happy with sendmailanalyzer.pid file. Thanks to Piotr Bodnar
for the report.
- Test log file size before seeking in incremental mode.
- Accelerate incremental mode by seeking directly to last position of the
parser in the logfile after last run. It will also auto detect file rotation
and fall back to the start of the file when the file has changed.
- Some documentation fixes. Thanks to Igor Vuk for the patch.
- Add WEEKLY_FREE_SPACE configuration directive to force sa_cache to archive
or remove data file each weeks instead of default per month. This will help
saving space on huge MTA.
- Fix summarization of some status messages.
- Add error message when the archive command can not be achieved.
- Add postfix warning into SysErr reports. Thanks to Mathieu Chateau for the
feature request.
- Add support to spampd spam detection. Thanks to Thibaut Varene for the
feature request.
- Recalculate current time at each line to compare log entry with current date
to search the year used in the log file.
- Add information about settings for sendmailanalyzer into systemd service.
Thanks to fmalfatto for the report.
- Add ruleset=check_relay with reject=550 5.7.1 to the spam reports. Thanks
to Ricardson Williams for the report.
2014-03-15 Version 9.0
This is a major release with lot of major enhancements and a full year of bugs
fixes. There is a complete remove of dependency to libgd and GD::Graph* Perl
modules, graphs are now drawn using the flotr2 javascript library. It adds
support to ipv6 addresses, a new week view in the calendar menu. It also restores
reports on postgrey and adds support to policyd-weight, sqlgrey and maiad plugins.
A new directive EXCLUDE_TO to be able to exclude some destination addresses from
reports and new Brazilian Portuguese translation file pt_BR.
- Fix click on flotr2 graph and update javascript file.
- Fix issue when parsing logs with [ID 801593 mail.notice] field.
Thanks to Hans Mayer for the report.
- Fix display of month instead of minutes of the hour in graphs.
Thanks to Alain Deleglise for the report.
- Add support to sqlgrey output. Report will be added under the
Postgrey menu. POSTGREY_NAME set by default to postgrey|sqlgrey.
Thanks to Dave Wreski for the feature request.
- Restore and fix postgrey statistics that was broken since 8.1.
- Add new directive EXCLUDE_TO to be able to exclude from reports
some destination addresses. Thanks to Bo Larsson and Dave Wreski
for the feature request.
- Replace value of AMAVIS_NAME configuration directive with: amavis|maiad
- Fix parsing of maiad spam/virus report. Thanks to breakaway for the
report.
- Fix rpmlint bogus date warning. Thanks to Igor Vuk for the patch.
- Remove a rogue tab character from .spec, add pt_BR translation.
Thanks to Igor Vuk for the patch.
- Change the README and --help output to match the default DELAY value.
Thanks to Igor Vuk for the patch.
- Change DELAY description to match the default value of 5 seconds.
Thanks to Igor Vuk for the patch.
- Add support to postfix/policyd-weight antispam. Thanks to Michael
Seevogel for the feature request.
- Change all instances of 'coma' to 'comma'. Thanks to Igor Vuk for
the patch.
- Fix report of SASL SMTP AUTH. Thanks to Michael Seevogel for the
report.
- Fix some errors in cron lines. Thanks to Dominique Fournier for the
patch.
- Add debian repository to allow building deb package with
"dpkg-buildpackage -rfakeroot" and remove the old repository
packaging/debian/. Thanks to Dominique Fournier for the patches.
- Remove reference to GD::* perl modules, they are no more used.
- Add SPAMD_NAME details to documentation.
- Add SPAMD_NAME directive to default configuration file.
- Add --spamd explanation to usage.
- Add Brazilian Portuguese translation. Thanks to Paulino Michelazzo
for the translation patch.
- Fix the double entries generated by some postfix plugins. Thanks
to Alain Deleglise for the report.
- Fix spam details in amavis parser.
- Fix some syserr message and remove report of virus from the
Messaging Status report page.
- Add spam details detected by spamd into Spamd-Milter report.
- Remove Spam from the Messaging Status report.
- Fix percentage of Other in Messaging status report.
- Fix several minors bugs and add support to clamav-milter with
postfix. Thanks to Dominique Fournier for the feature request.
- Fix unparsed spamd virus detected line when the autolearn field is
not just after the mid field. Thanks to Marcio Veloso for the report.
- Add support to ipv6 addresses. Thanks to Dominique Fournier for the
feature request.
- Change french internal direction translation from Grp to Int.
- Remove set direction about uucp like localhost.
- Update spec file with new and removed files.
- Add +doc/sa_cache.pod and removed -doc/sendmailanalyzer.3
- Add sa_cache cron job documentation on doc/sa_cache.pod and remove
man page from git repo as they are automatically generated at install.
- Add missing doc/sa_cache.pod file. Thanks to Javier Ariznabarreta
for the report.
- Fix double count of postfix messages sent when email "path" would be
this: Internet -> spamd -> postfix -> amavisd -> uucp mailbox ->
uucp pickup -> Exchange. Thanks to Javier Ariznabarreta for the report.
- Fix pie graph with other status report.
- Add uucp relay as internal delivery
- Change WeekDay translation that should start with Sunday.
- Cosmetic change to graphs.
- Fix cleanup of RBL rejection message.
- Fix major bug with number of senders and recipient.
- Add some cosmetic change to calendar menu.
- Add week view on calendar menu.
- Remove GD perl modules from requirements as well as tje TTFONT
configuration directive.
- Remove obsolete file cgi-bin/grafit.cgi from source tree.
- Replace the use of GD::Graph Perl library by the flotr2 javascript
graphic library.
- Remove the use of space HTML escaping in language files (%20), they
were used with the obsolete GD::Graph Perl library.
- Update documentation about URL_JSCRIPT.
- Add URL_JSCRIPT to specify default url to the flotr2 javascript
library. Add auto install of flotr2.js.
- Add flotr2 javascript library to build graphs.
- Fix broken HTML code on auth mechanism report.
- Fix recipient relay with Postfix. Thanks to Walter Huf for the patch.
- Do not delete an entire message record just because one of the
recipients goes to a skipped relay. Thanks to Walter Huf for the patch.
- Remove some posfix debug or info messages from rejection reports.
- Clear extra information from DNSBL spam detail report.
- Force vertical alignment on top of columns on Top Statistics.
- Remove some postfix/postscreen information from reject report. Thanks
to daks-ua for the report.
- Fix case where recipients were not stored with amavis spam and virus
detection.
- SA will now show top recipients in topvirus view even if they was not
sent.
- remove temporary debug information.
- Fix case where amavis spam details was not collected. Thanks to grufo
for the report.
- Fix documentation about Postfix that is no fully supported. Thanks to
Comprax for the report.
- Fix case where virus with Amavis and clamd are reported twice. Thanks
to Paul Cantle for the report.
- Renamed PID_FILE directive into PID_DIR to be less confusing and fix
default path, backward compatibility with old configuration file is
preserved. Thanks to Thomas Merlin for the report.
- Reorder command line options in usage() display.
- Fix case where log line can appear in the future to sendmailanalyzer
with automatically subtracts one year if sendmailanalyzer detect that
the date is in the future from the time it is run or the date from
the LAST_PARSED file. Thanks to Damian Lukowski for the report.
- Add the -y | --year command line option that can be use to force the
year of the log as syslog doesn't log the year in the date on most
distribution.
- sa_report.cgi has also been modified to add default current year in
the select box if not present as it always goes to the current day
by default.
- Improve speed of incremental_check() function.
- Add man page for sa_cache. Thanks to Lars Vogdt for the patch.
UPGRADE: You need to reinstall all file and rebuild your configuration file from
the new default configuration file. Data files may not need to be remove, backward
compatibility should be preserved.
2013-01-05 Version 8.7
- Fix major bug with new year change when LAST_PARSED has a last line
parsed from December. Thanks to Richard Victor Correia for the report.
- Fix the .sample configuration file install in doc/ folder when
building an RPM. Thanks to Igor Vuk for the patch.
UPGRADE: Only the sendmailanalyzer Perl script and the .spec file have changed.
If you found the bug about new year change, you have to:
1) stop sendmailanalyzer if it runs as daemon
2) replace the content of the LAST_PARSED file generated into the output
directory with the following:
Jan 1 00:00:00 -
note the double space between Jan and the number 1.
3) replay all the log file generated from the new year with command:
/usr/local/sendmailanalyzer/sendmailanalyzer -f -b -i -l logfile
4) if you use the daemon mode, restart sendmailanalyzer.
2012-12-27 Version 8.6
- Fix details search of top sender and status in top rejected stats.
Thanks to Arthur Gouros for the report.
- Add SKIP_RCPT_RELAY configuration directive to bypass local delivery
messages that double the count of messages. Default is dovecot.
Thanks to Richard Victor Correia for the report.
- Change install to copy sendmailanalyzer.conf.sample into the doc/
directory and copy sendmailanalyzer.conf into etc/ if none already
exist. Thanks to Igor Vuk for the report.
- Fix search of rejected message on domain. Thanks to Arthur Gouros
for the report.
- Fix virus name storage with spamd-milter quarantine detection.
Thanks to Bill V for the report.
- Change menu "Rejection & Errors" into "Rejection and Events".
- Fix missing system message when it was registered at same time than
a previous one.
- Reorder command line option, short before long.
- Fix top authid with anonymous TLS SMTP auth.
- Add support to syslog high resolution timestamp. Thanks to Richard
Victor Correia for the report.
- Replace .orig extension into .sample.
- Add anonymous TLS connection established into auth report instead,
of errors/events report. Thanks to Arthur Gouros for the suggestion.
- Fix top domain name search in top rejected view. Thanks to Arthur
Gouros for the report.
- Change in .spec file to reflect the config file renaming. Thanks to
ivuk fro the patch.
- Add missing spamd historical report in sa_cache. Thanks to Bill V
for the report.
UPGRADE: you may reinstall all files and edit your configuration file to add the
the SKIP_RCPT_RELAY directive and set its value to dovecot if you are using it
for local delivery.
2012-12-16 Version 8.5
- Fix spam report with spamd and add spamd to the SPAM_TOOLS configuration
directive. Thanks to Bill V for the report.
- Update documentation about start script and signal handling.
- Add new starter file for distribution using systemd at init and a README
file to explain how to install those scripts. Thanks to Durwin for the
report.
- Fix typo in regex pattern of spamd lines detection. Thanks to Bill V for
the report.
- Fix removing of pid file which in some case was not removed.
- Fix signal handler on SIGTERM.
- sendmailanalyzer.conf will now be installed as sendmailanalyzer.conf.orig.
- Fix issue in spam message detection. Thanks to Stefan Berger for the report.
- Fix case where recipient was not collected on postfix servers because the
- Sent status in in lower case. Thanks to Kalpesh Patel for the report.
UPGRADE: you may reinstall all files and edit your configuration file to add the
spamd keyword to the SPAM_TOOLS directive if you have the spamd installed.
2012-07-13 Version 8.4
- Add signal handler to SIGHUP to allow a full restart of sendmailanalyzer
to force reread configuration file and reopen the pipe to the log file.
Suggested by Vicky Brown.
- Allow character @ in secure_param() to allow syslog-ng remote host
syntax - Reported by Leon van Ofwegen.
- Add more information on CGI param error returned by secure_param().
- Add logrotate example to restart sendmailanalyzer in main documentation.
Reported by Vicki Brown.
- Fix a bug in Top Authid where number was always 1. Reported by Dan Szkola
UPGRADE: you'd better reinstall all files after saving your configuration. Unless
you just want to copy sendmailanalyzer and sa_report.cgi that are the only files
that have changed as well as the documentation.
2012-06-01 Version 8.3
- Fix a major bug in sa_cache that could lead in totally false
statistics. Please upgrade ASAP. Thanks to Dan Szkola for the
report.
- SendmailAnalyzer now fully support Cyrillics character with the
help of two new configuration directives HTML_CHARSET and TTFONT.
The first must be set to 'utf-8' and the second to a true type font
file. Thanks to Nikolay G. Petrov for the report.
UPGRADE: you'd better reinstall all files as all perl script have changed after
saving your configuration file. If you have the sa_cache bug and your stats are
wrong, chance if you have FREE_SPACE to archive as by following the "Archiving"
chapter in the admin guide (http://sendmailanalyzer.darold.net/admin.html) you
will be able to rerun sa_cache.
2012-03-11 Version 8.2
- Fix a case where Amavis spam detail are not collected du to syslog
message truncating. Thanks to Przemyslaw Sikora for the report.
- Add report of Sendmail milter smf-spf, they will be reported with
rejected/error message. Thanks to Przemyslaw Sikora for feature
request.
- Remove a man page wrong named with double extension mark. Thanks to
John Lockard for the report.
2012-01-08 Version 8.1
- Add german translation file. Thanks to Sven Wehner for the contribution.
- Fix count for the authid login id which always shows 1 for all users.
Thanks to Mark Price for the report.
- Fix unterminated column html tag in reject statistics.
- Fix top Spam statistics on spamassassin autolearn information.
- Add support to postgrey statistics. Thanks to John Lockard for the
feature request.
- Add POSTGREY_NAME configuration directive to change the default
syslog ident name of Postgrey. See configuration file for more
information.
- Add POSTGREY_VIEW configuration directive to enable/disable the
postgrey link into the menu. Disable by default for backward
compatibility.
2011-08-07 Version 8.0
This is a major release even if it is fully compatible with old data
files, the caching scheme has been reviewed to better handle millions
of emails a day with very low memory footprint. The issue was reported
by Martin Culak with around 1,5 million of messages per days, great
thanks to him, it help a lot for this release.
- Remove day_cache program, the daily caching is now integrated into the
sa_cache script with the option -a or --actual-day-only. With huge
data you still need to run sa_cache each five minutes within crontab.
- The caching files are now build per hour to avoid "Out of memory" on
very busy servers. So now you have cache files generated per hour, per
day, per month and year.
- CGI script sa_report have been reviewed to handle those new cache file
and to always display the reports in the second.
- A lot of work have been made to add more support to PostFix logs and
postscreen milter.
- Fix missing link to detailed informations when there was just one
data file in the directory.
- Limit numbers of top sender/recipient in pie graph to maximum 10.
- Add pid file support to sa_cache to prevent parallel execution. After
a system crash you may need to remove those pid files if you want
sendmailanalyzer and sa_cache to be run again.
- Documentation reviewed.
UPGRADE: if you don't want to reinstall all and restart with empty data, you can
overwrite all Perl and CGI scripts. Backward compatibility of data files are
fully preserved but you may experience an error message on hours views on old
cached data. The error message is:
"No cache file yet for this hour, please wait for next run of 'sa_cache --actual-day-only'."
Remember to remove the day_cache perl script ans replace your call to day_cache
in to your cron job by the new command forms:
sa_cache --actual-day-only
If you want to be able to see the hours view without error messages or no record
found you can keep the previous version of the sa_report.cgi script to still
view those report.
2011-07-31 Version 7.2
- Add support of ruleset check_relay logged without sendmail id. Thanks
to Jeff Kaminski for the report.
- Add 'FaKe' prefix to automatic generated id, so that you don't waste
your time to search for a sendmail id into the log corresponding to
the sendmailanalyzer unique id.
- Add a note in INSTALL file about sendmail LogLevel configuration
directive. The default value 9 don't need to be change to have
SendmailAnalyzer report, by increasing this value all debug messages
will be detected as error or rejection, so don't change this value.
Thanks to Jeff Kaminski for the comment.
- Add message status percentage pie graph on Global Statistics Status
screen. Only status upper or equal than 1% are shown.
- Add sender relay percentage pie graph on Top Statistics Senders
screen. Only sender relays upper or equal than 1% are shown.
- Add recipient relay percentage pie graph on Top Statistics Recipients
screen. Only recipient relays upper or equal than 1% are shown.
UPGRADE: overwriting all Perl scripts will do the work if you don't want to
reinstall all. Backward compatibility of data files are fully preserved.
2011-07-08 Version 7.1
- Fix delivery direction bug when destination relay was localhost.
- Fix an error on domain report when the email address doen't have
one but just the username. Thanks to John Duthie for the report.
- Add a new configuation directive DEFAULT_DOMAIN to add to an email
address if there's just the username (see fix above). By default
SendmailAnalyzer will add the '@localhost' domain but you may want
to change this domain, so use this directive.
UPGRADE: You can reinstall all or just override all Perl scripts, the backward
compatibility with old data files is fully preserved.
2011-06-09 Version 7.0
- Add first support to Postfix mail log statistical reports. Thanks to
Mario Hobel the sample log file and for people who asked the feature.
- Fix pattern error during catching relevant logs on full read mode.
- Fix mail id to Amavis virus message id mapping.
- Fix duplicate count of spam recipient on search view.
- Fix stderr message of tar command call in sa_cache.
- Add DSN_VIEW configuration directive to enable/disable Notification
views. Default show it: 1
UPGRADE: You can reinstall all or just override all Perl scripts, the backward
compatibility with old data files is fully preserved.
2010-05-19 Version 6.4
- Add support to dnsbl-milter. Thanks to bversteeg for feature request.
- Fix a bug in link to spam details search view.
- Change link to SquidAnalyzer web site.
UPGRADE: just override the perl script sendmailanalyzer and sa_report.cgi CGI
perl script taking care of the configuration file path into those scripts
(search: sendmailanalyzer.conf). Also add dnsblmilter to the list of SPAM_TOOL
configuration directive if you want this report.
2010-05-06 Version 6.3
- Rewrite some parts of the sendmailanalyzer command usage, with more
details.
- Fix cross scripting hole in lang CGI parameter. Thanks to peoples at
ha.ckers.org and root-me.org :-)
- Fix top caching statistics failure with value with a single quote.
UPGRADE: just override all perl script and CGI taking care of the configuration
file path into those scripts (search: sendmailanalyzer.conf).
2010-01-21 Version 6.2
- Add MERGING_HOST configuration directive to allow aggregation of
multiple mailhost that syslogs to a remote server throught rsyslog
to have only one SendmailAnalyzer report. Thanks to Slamp for the
feature request.
- Add new configuration directive CLAMD_NAME to set syslog name of
Clamd. Default is 'clamd'. When using Mailscanner with clamd if you
want virus report you must configure clamd to log with syslog and
use LOG_MAIL. This fix virus report for Mailscanner+clamd.
- Add SHOW_DIRECTION configuration directive to enable/disable
direction statistics. On some mailhost this could show wrong
information if the direction of messages could't be determined.
So you can remove this view by setting it to 0.
- Fix "No record for this period" on Top SMTP Auth statistics if no
data where found.
- Update documentation.
UPGRADE: Only sendmailanalyzer and sa_report.cgi has changed, just edit these
files to set the path to the configuration file (search: sendmailanalyzer.conf)
and override old ones. Edit sendmailanalyzer.conf and new directives like in
Makefile.PL. Or of course the traditional install will do the job. This release
is fully backward compatible.
2010-01-20 Version 6.1
- Fix RPM spec file that was overriding http sendmailanalyzer.conf
by the main sendmailanalyzer.conf.
- Fix email addresses enclosed between <> not displayed on Top System
messages interface.
- Fix Messaging Status report of 'User unknown'. Removed ESMTP code.
- Add fallback to /etc/sendmailanalyzer.conf if default config file
doesn't exist to simplifying upgrade with packaging or custom install.
UPGRADE: simply override all perl scripts (sendmailanalyer,sa_cache,day_cache,
cgi-bin/sa_report.cgi). In these scripts you may have to modify the global
variable $CONFIG_FILE as it point to default path to sendmailanalyzer.conf
and fall back to /etc/sendmailanalyzer.conf if the first is not found. So if
your config file is not in these paths, you must change it.
2010-01-05 Version 6.0
- New SendmailAnalyzer site => http://sareport.darold.net/
- Add install script and packaging support.
- Remove all .pl extensions and rename sa_report.pl into sa_report.cgi
for new install script and better packaging support.
Rename SendmailAnalyzer pPerl script to sendmailanalyzer.
- Fix day_cache usage message.
- Now sa_cache and day_cache can be run without any argument to proceed
all rsyslog host and mainly for easy install and packaging support.
- Fix misshandling of User unknow DSN.
- Fix memory leak on AUTH stat initial code.
- Fix misshandling in spam detail view
- Fix storage of Authentication-Warning using -f warning message.
- Fix langage selection on host view that's always reseted to default.
- Add SMTP Auth flow view by auth type (server or client) and by mech
(plain, login, etc.). This stat is not available in per domain view and
can be disable in config file (see SMTP_AUTH).
- Add SMTP Auth top view to display top auth mechanism, top connection
relay and top authid. This stat is not available in per domain view
- Add storage to pid file to keep track of the running daemon and
allow easier start/stop script. This also fix a bug where SA do not
stop on kill signal because is waiting for read on tail pipe. The pid
now keep track of the 2 pids and then both are killed.
- Remove top DNS sender and relay from stats, not really usefull and
most of the time it returns false records.
- Add Original recipient in DSN detail view.
- Fix Top Sender Domain and Top Sender Address detail views when domain
or address is empty (<>).
- Add SPAM_VIEW and VIRUS_VIEW configuration directives to enable or
disable the respective menus. By default they are enable.
- Add SPAM_TOOLS configuration directive to choose antispam detail menu
link to display. Default is all.
- Autostart on main window when there's only one host and no per domain
report.
UPGRADE: just replace old scripts by new ones as well as lang files. Edit your
cron to remove .pl extensions and replace -h syslogname with -s syslogname to
sa_cache and day_cache call or remove this option. Replace all lang/ files.
You may also rewrite your configuration file even if backward compatibility
is preserved to have all new configuration directives in it.
2009-11-23 Version 5.5
- Fix many bugs and improve performances in detail views especially
on per domain user access and top rejection statististics.
- Change multiple recipient/relay/status in detail view comma separated
list to select boxes. This preserve screen size and allow direct link
between recipient/relay/status with a selectbox synchro on onChange
events.
- Fix "forged localhost". When forged sender relay is found it now
takes the real ip address of the relay.
- Fix access denied when click the bat logo on DOMAIN_USER views.
Thanks to Colin Stearman for the report.
- Change order of distribution flow to be the same in table and in
graphs and fix lang file en_US. Thanks to Colin Stearman for the report.
- Fix miss handling of greylisting milter reject messages. Thanks to
Colin Stearman for the report.
- Remove recipient relay from reject detailed view as it is always
empty.
- Remove link to details on top domain rejection when domain is <>
as it always produce empty result.
- Replace RH/Fedora start script with the one provided by Colin Stearman
- Detail links are now shown every time provided that the .dat files
already exists (instead of only in the current month).
- Fix "Different senders/recipients" break when there's no sender nor
recipient. Note: Different senders/recipients are build uppon email
really Sent. If no messages are Sent, they are null, even if you have
many rejected message with sender.
- day_cache.pl fix a case where DSN graph was empty.
- Remove sender address as last try to find email direction. Too must
error with spam. Now direction is only search based on domain or Ip
address of the relay.
- Remove last total line on Messaging Status. This was confusing as some
messages appears on different status like deferred message that appears
in Deferred and finally Sent.
UPGRADE: Just overwrite all perl scripts and cgi, backward compatibility
is preserved. Overwrite language file en_US. Configuration file is
unchanged.
Special thanks to Colin Stearman for his great help.
2009-09-14 Version 5.4
- Fix clamav-milter report when clamav-milter.conf RejectMsg is set
to MTA specific and AddHeader is Replace or Add. Previous versions
show these MTA specific log as system errors. Thank to Bretislav Kubesa
for the report.
- Fix outbound and local outbound of virus, that was always set to 0.
- Fix graph of outbound bytes that was identical to inbound bytes.
- Add support for multiple MTA name. Some configuration can have
different syslog name (ex: sm-mta|sendmail|sm-msp-queue).
- Remove DSN messages from inbound count.
- Fix wrong handling of ctladdr, that cause wrong outgoing count.
- Change Internet label to External for better readness.
- Store 'return to sender', 'sender notify' or 'postmaster notify' as
DSN.
- Limit ESMTP rewriting of reject status to "complex" messages
to preserve MTA messages.
2009-08-28 Version 5.3
- Add acknowlegdement to Sendmail.org for the kind permission to use
the Bat logo.
- Remove 'Queued' from Rejection Statistics top status.
- Fix bad parsing on relay that shown some valid lines as error.
Lines like: from=, size=nnn, class=0,..., relay= xxx.xxx.xxx.xxx
may not appears anymore in top System messages report.
- Add missing javascript link on Years label to display year view.
- Fix month report of different sender/recipient.
- Add/fix report of different sender/recipient in year view.
- Summarise report of "rejecting commands due to pre-greeting traffic"
- Summarise report of "probable open proxy"
- Summarise report of "Too many hops"
2009-08-10 Version 5.2
- Add standard command line argument to sa_cache.pl and day_cache.pl
to allow modification of the configuration file. See usage (--help) of
these two scripts. Backward compatibility with old format is preserved.
- Remove SPAMD_MILTER from configuration file, no more used. Spamd log
are now detected from sendmail log line. This was too much confusing
SendmailAnalyzer. Spam detection is now a lot more efficient. Thanks to
Steven W. Orr for the report.
- Fix HTML output for better rendering in IE.
- Fix bug on top spammer recipient address statistics.
- Top spam statistics are now order by rules (Spamassassin,Mimedefang,
jcheckmail, RBL check, ...) instead of spam details.
- There's now a top view for all supported Antispam showing scores, hit
cache, autolearn and detailled spam matching rule. A new configuration
directive called SPAM_DETAIL was added. To disable, set it to 0. This
will also save some disk space.
- Fix anonymization of spam recipient.
- Fix some SYSERR not reported.
- Add RH/Fedora start/stop script and move them to start_scripts/
directory. Thanks to Steven W. Orr for this script.
- Fix detail view, it was displayed all instead of just the selected
domain related records.
- Fix recipient to virus detail report.
UPGRADE:
This release is fully backward compatible. You must overwrite all
scripts and language files by those in new release.
Also rc.sendmailanalyzer has been improved. As Spam view has changed
if you don't want to mix report from old and new release, please start
a fresh install. See also end of SendmailAnalyzer.conf for change.
2009-08-01 Version 5.1
- Fix launch of Javascript error console on javascript onclick call
on old browser.
- Fix parsing of empty sender (from=,). Empty sender is now set to
user: empty.
- Fix two bugs in global virus and DSN statistics where graphis display
wrong data in month view only. Please run the following command for
recovery:
find /var/www/htdocs/sareport/mailhost/2009/ -name "cache.pm*" \
-maxdepth 2 -mindepth 2 | xargs -i rm -f {}
Change path to year report following you installation. This will remove
all month cache file for the given year. Then rerun sa_cache.pl
Thanks to Steven W. Orr for the report.
UPGRADE:
overwrite SendmailAnalyzer.pl, sa_cache.pl and cgi-bin/sa_report.pl
and run the above command for recovery.
2009-07-23 Version 5.0
This release is a complete rewrite of the CGI interface and a major
rewrite of all Perl script (SendmailAnalyzer.pl, sa_cache.pl and
day_cache.pl). It also save more memory when reports are displayed.
This version is fully backward compatible with v4.x, so you can simply
overwrite old perl scripts and cgi.
Here are all addons/changes in this release.
WARNING: The user view of personal mailbox stats has been removed for
now. It used too much resources. If you use it please let me know I
will try to work on it again.
- SendmailAnalyzer is now GPL v3
- You can dynamically change the language with a CGI parameter: lang.