Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Postfix - antispam and relay package

    pfSense Packages
    136
    855
    1.0m
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • BismarckB
      Bismarck
      last edited by

      @marcelloc:

      @marcelloc:

      I'll check but I remember including it on install script. Maybe I forgot to push it to GitHub repo

      Gui creates the file when there are rules on it. what's the behavior on your box?

      I had to manually install postfix-postfwd-1.35_1 to make it run and listen on 127.0.0.1:10045, otherwise postfix will give warnings about it.

      Apr 21 16:40:16 zonk postfix/smtpd[4740]: warning: connect to 127.0.0.1:10045: Operation timed out
      Apr 21 16:40:16 zonk postfix/smtpd[4740]: warning: problem talking to server 127.0.0.1:10045: Operation timed out
      
      1 Reply Last reply Reply Quote 0
      • marcellocM
        marcelloc
        last edited by

        @Bismarck:

        I had to manually install postfix-postfwd-1.35_1 to make it run and listen on 127.0.0.1:10045, otherwise postfix will give warnings about it.

        Fixed the install script to include the pkg add, Thanks again  :)

        I'll push it to repo soon

        Treinamentos de Elite: http://sys-squad.com

        Help a community developer! ;D

        1 Reply Last reply Reply Quote 0
        • N
          n3by
          last edited by

          Hi,

          Is this re-instalation completed successfully as I also see in /root ?

          drwxr-xr-x   5 root  wheel        512 Apr 25 17:07 spf-tools-master
          
          /root: sh ./install_postfix_23.sh
          Message from syslogd@fwpl at Apr 25 17:05:19 ...
          fwpl php-fpm[61287]: /index.php: Successful loginsh ./install_postfix_23.sh                                                                 fetching  /usr/local/bin/adexport.pl from github
          fetching  /usr/local/pkg/postfix.inc from github
          fetching  /usr/local/pkg/postfix.xml from github
          fetching  /usr/local/pkg/postfix_acl.xml from github
          fetching  /usr/local/pkg/postfix_antispam.xml from github
          fetching  /usr/local/pkg/postfix_domains.xml from github
          fetching  /usr/local/pkg/postfix_recipients.xml from github
          fetching  /usr/local/pkg/postfix_sync.xml from github
          fetching  /usr/local/share/pfSense-pkg-postfix/info.xml from github
          fetching  /usr/local/www/postfix.php from github
          fetching  /usr/local/www/postfix_about.php from github
          fetching  /usr/local/www/postfix_queue.php from github
          fetching  /usr/local/www/postfix_recipients.php from github
          fetching  /usr/local/www/postfix_search.php from github
          fetching  /usr/local/www/postfix_view_config.php from github
          fetching  /usr/local/www/shortcuts/pkg_postfix.inc from github
          fetching  /usr/local/www/widgets/widgets/postfix.widget.php from github
          fetching  /usr/local/pkg/postfix_dkim.inc from github
          fetching  /usr/local/www/vendor/datatable/se-1.2.0.zip from github
          fetching  /usr/local/www/vendor/datatable/css/jquery.dataTables.min.css from github
          fetching  /usr/local/www/vendor/datatable/js/jquery.dataTables.min.js from github
          fetching  /usr/local/www/postfix.sql.php from github
          fetching  /usr/local/bin/postwhite from github
          fetching  /usr/local/pkg/postfix_postwhite.template from github
          Updating FreeBSD repository catalogue...
          Fetching meta.txz: 100%    944 B   0.9kB/s    00:01    
          Fetching packagesite.txz: 100%    6 MiB   3.0MB/s    00:02    
          Processing entries: 100%
          FreeBSD repository update completed. 26278 packages processed.
          Updating pfSense-core repository catalogue...
          pfSense-core repository is up to date.
          Updating pfSense repository catalogue...
          Fetching meta.txz: 100%    944 B   0.9kB/s    00:01    
          Child process pid=77716 terminated abnormally: Segmentation fault
          fetch: https://github.com/jsarenik/spf-tools/archive/master.zip: size of remote file is not known
          master.zip                                              49 kB  195 kBps 00m01s
          Archive:  master.zip
          d spf-tools-master
          replace spf-tools-master/.gitignore? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
           extracting: spf-tools-master/.gitignore  
          replace spf-tools-master/.simplecov? [y]es, [n]o, [A]ll, [N]one, [r]ename: A
           extracting: spf-tools-master/.simplecov  
           extracting: spf-tools-master/.travis.yml  
           extracting: spf-tools-master/AUTHORS  
           extracting: spf-tools-master/LICENSE  
           extracting: spf-tools-master/README.md  
           extracting: spf-tools-master/circle.yml  
           extracting: spf-tools-master/cloudflare.sh  
           extracting: spf-tools-master/compare.sh  
           extracting: spf-tools-master/despf.sh  
           extracting: spf-tools-master/genspfzone.sh  
          d spf-tools-master/include
           extracting: spf-tools-master/include/despf.inc.sh  
           extracting: spf-tools-master/include/global.inc.sh  
           extracting: spf-tools-master/include/isincidrange.sh  
           extracting: spf-tools-master/iprange.sh  
          d spf-tools-master/misc
           extracting: spf-tools-master/misc/ci-runtest.sh  
           extracting: spf-tools-master/misc/ci-setup.sh  
           extracting: spf-tools-master/misc/tmpl  
           extracting: spf-tools-master/mkblocks.sh  
           extracting: spf-tools-master/mkzoneent.sh  
           extracting: spf-tools-master/normalize.sh  
           extracting: spf-tools-master/route53.sh  
           extracting: spf-tools-master/runspftools.sh  
           extracting: spf-tools-master/shippable.yml  
           extracting: spf-tools-master/simplify.sh  
          d spf-tools-master/tests
          d spf-tools-master/tests/a24
           extracting: spf-tools-master/tests/a24/cmd  
           extracting: spf-tools-master/tests/a24/in  
           extracting: spf-tools-master/tests/a24/out  
          d spf-tools-master/tests/brokendns
           extracting: spf-tools-master/tests/brokendns/cmd  
           extracting: spf-tools-master/tests/brokendns/in  
           extracting: spf-tools-master/tests/brokendns/out  
          d spf-tools-master/tests/cname
           extracting: spf-tools-master/tests/cname/cmd  
           extracting: spf-tools-master/tests/cname/in  
           extracting: spf-tools-master/tests/cname/out  
          d spf-tools-master/tests/despf
           extracting: spf-tools-master/tests/despf/cmd  
           extracting: spf-tools-master/tests/despf/in  
           extracting: spf-tools-master/tests/despf/out  
          d spf-tools-master/tests/despf_chain
           extracting: spf-tools-master/tests/despf_chain/cmd  
           extracting: spf-tools-master/tests/despf_chain/in  
           extracting: spf-tools-master/tests/despf_chain/out  
          d spf-tools-master/tests/despf_help
           extracting: spf-tools-master/tests/despf_help/cmd  
           extracting: spf-tools-master/tests/despf_help/in  
           extracting: spf-tools-master/tests/despf_help/out  
          d spf-tools-master/tests/despf_qualifier
           extracting: spf-tools-master/tests/despf_qualifier/cmd  
           extracting: spf-tools-master/tests/despf_qualifier/in  
           extracting: spf-tools-master/tests/despf_qualifier/out  
          d spf-tools-master/tests/despf_qualifier2
           extracting: spf-tools-master/tests/despf_qualifier2/cmd  
           extracting: spf-tools-master/tests/despf_qualifier2/in  
           extracting: spf-tools-master/tests/despf_qualifier2/out  
          d spf-tools-master/tests/despf_skip
           extracting: spf-tools-master/tests/despf_skip/cmd  
           extracting: spf-tools-master/tests/despf_skip/in  
           extracting: spf-tools-master/tests/despf_skip/out  
          d spf-tools-master/tests/despf_skip_t
           extracting: spf-tools-master/tests/despf_skip_t/cmd  
           extracting: spf-tools-master/tests/despf_skip_t/in  
           extracting: spf-tools-master/tests/despf_skip_t/out  
          d spf-tools-master/tests/despf_torn
           extracting: spf-tools-master/tests/despf_torn/cmd  
           extracting: spf-tools-master/tests/despf_torn/in  
           extracting: spf-tools-master/tests/despf_torn/out  
          d spf-tools-master/tests/despf_upper_case
           extracting: spf-tools-master/tests/despf_upper_case/cmd  
           extracting: spf-tools-master/tests/despf_upper_case/in  
           extracting: spf-tools-master/tests/despf_upper_case/out  
          d spf-tools-master/tests/fix_32
           extracting: spf-tools-master/tests/fix_32/cmd  
           extracting: spf-tools-master/tests/fix_32/in  
           extracting: spf-tools-master/tests/fix_32/out  
          d spf-tools-master/tests/mkblocks-help
           extracting: spf-tools-master/tests/mkblocks-help/cmd  
           extracting: spf-tools-master/tests/mkblocks-help/in  
           extracting: spf-tools-master/tests/mkblocks-help/out  
          d spf-tools-master/tests/mkblocks-start
           extracting: spf-tools-master/tests/mkblocks-start/cmd  
           extracting: spf-tools-master/tests/mkblocks-start/in  
           extracting: spf-tools-master/tests/mkblocks-start/out  
          d spf-tools-master/tests/mkblocks
           extracting: spf-tools-master/tests/mkblocks/cmd  
           extracting: spf-tools-master/tests/mkblocks/in  
           extracting: spf-tools-master/tests/mkblocks/out  
          d spf-tools-master/tests/mx20
           extracting: spf-tools-master/tests/mx20/cmd  
           extracting: spf-tools-master/tests/mx20/in  
           extracting: spf-tools-master/tests/mx20/out  
          d spf-tools-master/tests/mx20_upper_case
           extracting: spf-tools-master/tests/mx20_upper_case/cmd  
           extracting: spf-tools-master/tests/mx20_upper_case/in  
           extracting: spf-tools-master/tests/mx20_upper_case/out  
          d spf-tools-master/tests/norm_ignore
           extracting: spf-tools-master/tests/norm_ignore/cmd  
           extracting: spf-tools-master/tests/norm_ignore/in  
           extracting: spf-tools-master/tests/norm_ignore/out  
          d spf-tools-master/tests/normalize
           extracting: spf-tools-master/tests/normalize/cmd  
           extracting: spf-tools-master/tests/normalize/in  
           extracting: spf-tools-master/tests/normalize/out  
          d spf-tools-master/tests/normalize_empty
           extracting: spf-tools-master/tests/normalize_empty/cmd  
           extracting: spf-tools-master/tests/normalize_empty/in  
           extracting: spf-tools-master/tests/normalize_empty/out  
          d spf-tools-master/tests/nospf
           extracting: spf-tools-master/tests/nospf/cmd  
           extracting: spf-tools-master/tests/nospf/in  
           extracting: spf-tools-master/tests/nospf/out  
          d spf-tools-master/tests/redirect
           extracting: spf-tools-master/tests/redirect/cmd  
           extracting: spf-tools-master/tests/redirect/in  
          unzip: skipping non-regular entry 'spf-tools-master/tests/redirect/out'
          d spf-tools-master/tests/simplify
           extracting: spf-tools-master/tests/simplify/cmd  
           extracting: spf-tools-master/tests/simplify/in  
           extracting: spf-tools-master/tests/simplify/out  
           extracting: spf-tools-master/tests/test-shell.sh  
           extracting: spf-tools-master/tests/test-subdirs.sh  
           extracting: spf-tools-master/tests/test-unit.sh  
           extracting: spf-tools-master/xsel.sh  
          mv: rename spf-tools-master to /usr/local/bin/spf-tools/spf-tools-master: Directory not empty
          
          

          edit:
          deleted /usr/local/bin/spf-tools/spf-tools-master
          and retry the install and now it looks ok

          1 Reply Last reply Reply Quote 0
          • C
            ccnet
            last edited by

            Yesterday, a fresh Pfsense 2.3.3 install. 64bits version, on a vm (esx) with 2Go ram. This Pfsense is not used as firewall, the purpose is testing Pfsense + Postfix package as mail gateway. Runing install from scrip as provide on github. No error except if i miss something.
            Setting a few parameters in Postfix and i can start it.
            Now the problems.
            In    SystemPackage ManagerInstalled Packages :  There are no packages currently installed.

            The only way i find to acces Posrfix setup is via Status / Services and clicj icon Related settings.
            Postfix don(t appear in menu Services. Is this normal ?

            In my actual Postfix gateway (5/6 clients with it) i use access lists for denied domain : one list for domain and another one with regular expresion. In main.cf I have :

            smtpd_client_restrictions = permit_mynetworks
                                        permit_sasl_authenticated                   
            		            check_client_access cidr:/etc/postfix/access_cidr
                                        check_client_access hash:/etc/postfix/access_client
            		            check_client_access regexp:/etc/postfix/access_client_regexp
            			    reject_rbl_client zen.spamhaus.org
            

            I'm not sure to understand howto implement cidr:/etc/postfix/access_cidr and hash:/etc/postfix/access_client.
            etc/postfix/access_cidr is something like

            offrecadeau.ovh         REJECT spammeur
            

            hash:/etc/postfix/access_client is like

            243.200.171.0/24		REJECT Spammeur
            

            This package is a great job. Thanks.

            1 Reply Last reply Reply Quote 0
            • marcellocM
              marcelloc
              last edited by

              @ccnet:

              In    SystemPackage ManagerInstalled Packages :  There are no packages currently installed.

              That's right. As an Unofficial package, It will not be there.

              @ccnet:

              The only way i find to acces Posrfix setup is via Status / Services and clicj icon Related settings.
              Postfix don(t appear in menu Services. Is this normal ?

              try to install cron package for example. Install process includes postfix on service menu but for some reason, on some boxes, you may need to install a package. I suggest system patches or cron.

              @ccnet:

              This package is a great job. Thanks.

              Thanks  :)

              Treinamentos de Elite: http://sys-squad.com

              Help a community developer! ;D

              1 Reply Last reply Reply Quote 0
              • C
                ccnet
                last edited by

                Thanks Marcelloc,

                installing the cron package solve the problem about smtp in menu Services. Postfix Forwarder is now visible.

                1 Reply Last reply Reply Quote 0
                • C
                  ccnet
                  last edited by

                  I thing an access client list is missing for denying a domains list such as

                  diglobaltoday.com REJECT

                  When looking at configuration i have :

                  smtpd_client_restrictions = permit_mynetworks,
                  				reject_unauth_destination,
                  				check_client_access pcre:/usr/local/etc/postfix/cal_pcre,
                  				check_client_access cidr:/usr/local/etc/postfix/cal_cidr,
                  				reject_unknown_client_hostname,
                  				reject_unauth_pipelining,
                  				reject_multi_recipient_bounce,
                  				permit
                  

                  I thing it will be nice to have one more line with :

                  check_client_access hash:/usr/local/etc/postfix/cal_hash,
                  

                  I have 3900 domains rejected at command connect (smtpd_client_restrictions) in my ClearOS Gateway.

                  1 Reply Last reply Reply Quote 0
                  • marcellocM
                    marcelloc
                    last edited by

                    Just add a // between domains you have on pcre field.

                    
                    /\.dsl\./ REJECT DSLs not allowed [HS001]
                    /\.dynamic\./ REJECT DSLs not allowed[HS003]
                    /mkt/ REJECT Spam is not marketing [HS007]
                    
                    

                    TABLE FORMAT
                          The general form of a PCRE table is:

                    /pattern/flags result
                                  When pattern matches the input  string,  use  the  corresponding
                                  result value.

                    !/pattern/flags result
                                  When  pattern  does  not  match the input string, use the corre-
                                  sponding result value.

                    Treinamentos de Elite: http://sys-squad.com

                    Help a community developer! ;D

                    1 Reply Last reply Reply Quote 0
                    • C
                      ccnet
                      last edited by

                      Ok I will try. But I'm not sure howto reject the domain who appear in the commande connect.

                      I add the Postfix  widget, but it remain empty. Mails are correctly routed to internet but nothing in the widget.

                      1 Reply Last reply Reply Quote 0
                      • marcellocM
                        marcelloc
                        last edited by

                        @ccnet:

                        I add the Postfix  widget, but it remain empty. Mails are correctly routed to internet but nothing in the widget.

                        Two steps to get it on databases. See the general tab under logging.

                        • Enable log destination to maillog

                        • Inlcude /^Subject:/ INFO line in Acl Headers after all your Subject rules.

                        postfix_logging.PNG
                        postfix_logging.PNG_thumb

                        Treinamentos de Elite: http://sys-squad.com

                        Help a community developer! ;D

                        1 Reply Last reply Reply Quote 0
                        • N
                          n3by
                          last edited by

                          I think I found why widget display strange data;
                          Update Sqlite I had it set to every hour then I try to 10 min, no luck.
                          I set it to 1 min and since then my data looks ok.

                          Screenshot_2017-04-29_21-13-55.png
                          Screenshot_2017-04-29_21-13-55.png_thumb

                          1 Reply Last reply Reply Quote 0
                          • marcellocM
                            marcelloc
                            last edited by

                            Hi, I've pushed to pkg-postfix an auto cloudbased domains whitelist option.

                            This update prevents cloud based domains endless Service currently unavailable problems against Postscreen that we see on almost all postscreen base configuration worldwide.

                            This can be used together with RBL whitelist/negative rbl score and postwhite

                            When a network/CIDR is whitelisted by this function it does not bypass any other postfix, acl, mailscanner, clamav or spamassassin test.  :)

                            auto_whitelist.PNG
                            auto_whitelist.PNG_thumb
                            view_config.PNG
                            view_config.PNG_thumb

                            Treinamentos de Elite: http://sys-squad.com

                            Help a community developer! ;D

                            1 Reply Last reply Reply Quote 0
                            • BismarckB
                              Bismarck
                              last edited by

                              @marcelloc - Excellent work!  :)

                              Just in case you have problems to update to 2.3.4-RELEASE because of bugged pkg:

                              https://forum.pfsense.org/index.php?topic=130071.msg716776#msg716776

                              1 Reply Last reply Reply Quote 0
                              • marcellocM
                                marcelloc
                                last edited by

                                @Bismarck:

                                @marcelloc - Excellent work!  :)

                                thanks Bismarck

                                @Bismarck:

                                Just in case you have problems to update to 2.3.4-RELEASE because of bugged pkg:

                                https://forum.pfsense.org/index.php?topic=130071.msg716776#msg716776

                                thanks for the info.

                                Treinamentos de Elite: http://sys-squad.com

                                Help a community developer! ;D

                                1 Reply Last reply Reply Quote 0
                                • BismarckB
                                  Bismarck
                                  last edited by

                                  Marcello, how does Auto whitelist work, I just see a reference to auto_whitelisted_cidr but no function anywhere?

                                  https://github.com/marcelloc/Unofficial-pfSense-packages/commit/a5d8b57f932b9ffa0f1b275842777723475f1647

                                  1 Reply Last reply Reply Quote 0
                                  • marcellocM
                                    marcelloc
                                    last edited by

                                    The script was uploaded few commits before but I messed up with older files.

                                    https://github.com/marcelloc/Unofficial-pfSense-packages/commit/a9770ddfaf827e025f79fc8d94f4c7e0cec086eb#diff-e50e08425a53cf0a262fae58e6f8de0c

                                    It works together with every minute update database.
                                    It checks for domains that received the 'back later' and if it reaches the count you defined on gui, it looks for all spf records for that domain and whitelist it on postscreen.

                                    The view configuration tab shows whitelisted domains and it's cidrs.

                                    Treinamentos de Elite: http://sys-squad.com

                                    Help a community developer! ;D

                                    1 Reply Last reply Reply Quote 0
                                    • BismarckB
                                      Bismarck
                                      last edited by

                                      Okay now I got it. ;)

                                      postfix_cloud_domains.php is missing in the install_postfix_23.sh, you maybe want to fix this?  :P

                                      1 Reply Last reply Reply Quote 0
                                      • marcellocM
                                        marcelloc
                                        last edited by

                                        @Bismarck:

                                        Okay now I got it. ;)

                                        postfix_cloud_domains.php is missing in the install_postfix_23.sh, you maybe want to fix this?  :P

                                        I will​. :)

                                        EDIT

                                        done

                                        https://github.com/marcelloc/Unofficial-pfSense-packages/commit/28e7676ee2b665de62cdccd28196975bc407288a

                                        Treinamentos de Elite: http://sys-squad.com

                                        Help a community developer! ;D

                                        1 Reply Last reply Reply Quote 0
                                        • marcellocM
                                          marcelloc
                                          last edited by

                                          With Bismarck suggestion and help, I did a version of postfix package with DMARC.

                                          I had to change the domain tab from rowhelper to domain list. It changes some internal logic on the package. So I ask you to test it and feedback to see if you get the same result as I did.

                                          The install script is under postfix-DMARC branch, so to install this version, run

                                          
                                          fetch https://raw.githubusercontent.com/marcelloc/Unofficial-pfSense-packages/postfix-DMARC/pkg-postfix/files/install_postfix_23.sh
                                          sh install_postfix_23.sh
                                          
                                          

                                          Warning, this will move and merge your domain config/dkim data on config.xml. So once upgraded to DMARC version, you will need to add all domain config again if you want to back to current stable version.

                                          Once I do more tests and be sure nothing is broken, DMARC version will be the new stable version.

                                          domain_list.PNG
                                          domain_list.PNG_thumb
                                          domain_detail.PNG
                                          domain_detail.PNG_thumb
                                          dmarc.PNG
                                          dmarc.PNG_thumb

                                          Treinamentos de Elite: http://sys-squad.com

                                          Help a community developer! ;D

                                          1 Reply Last reply Reply Quote 0
                                          • marcellocM
                                            marcelloc
                                            last edited by

                                            Did some minor fixes based on Bismarck feedback and also implemented the apply button to package gui

                                            https://github.com/marcelloc/Unofficial-pfSense-packages/commit/1459643eb929263a6811fd75ed30e40f81522844

                                            apply_changes.PNG
                                            apply_changes.PNG_thumb

                                            Treinamentos de Elite: http://sys-squad.com

                                            Help a community developer! ;D

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.