Postfix Backup MX (Nomad)

Overview

This is a Postfix jail that can be started with pot but it can also be deployed via nomad.

For more details about nomad images, see about potluck.

The jail exposes these parameters that can either be set via the environment or by setting the cookparameters (the latter either via nomad, see example below, or by editing the downloaded jails pot.conf file):

Environment cook parameter Content
HOSTNAME -h myhostname in main.cf
MYNETWORKS -n mynetworks in main.cf (private network addresses that are permitted to send outbound)
RELAYDOMAINS -d relay_domains in main.cf (domains this server feels responsible for)
SMTPDBANNER -b smtpd_banner in main.cf

Note: If you schedule this jail via nomad and you do not mount in the spool directory from persistent storage like in the example below and the job gets restarted for whatever reason, mails that are still in the queue and not forwarded will not be part of the newly scheduled instance and will be lost because a completely new jail is created in that case.

Nomad Job Description Example

Example with passing parameters to the cook script and mounting a persistent spool directory to ensure that mails are not discarded on job restarts:

job "backupmx" {
  datacenters = ["mydc"]
  type        = "service"

  group "group1" {
    count = 1

    task "backupmx1" {
      driver = "pot"

      service {
        tags = ["backupmx", "postfix"]
        name = "backupmx"
        port = "smtp"

         check {
            type     = "tcp"
            name     = "tcp"
            interval = "60s"
            timeout  = "30s"
          }
      }

      config {
        image = "https://potluck.honeyguide.net/postfix-backupmx-nomad"
        pot = "postfix-backupmx-nomad-amd64-14_0"
        tag = "1.12.1"
        command = "/usr/local/bin/cook"
        args = ["-n","10.10.10.10/32","-d","'example1.com, example2.com, example.de'","-b","'mx2.example1.com ESMTP \\$mail_name'","-h","mx2.example1.com"]
        mount = [
          "/mnt/spool:/var/spool/postfix"
        ]

        port_map = {
          smtp = "25"
        }
      }

      resources {
        cpu = 200
        memory = 64

        network {
          mbits = 10
          port "smtp" {
            static = 25000
          }
        }
      }
    }
  }
}

Example with passing parameters via environment variables (not working with pot 0.11.2 or below due to a bug):

job "backupmx" {
  datacenters = ["mydc"]
  type        = "service"

  group "group1" {
    count = 1

    task "backupmx1" {
      driver = "pot"

      service {
        tags = ["backupmx", "postfix"]
        name = "backupmx"
        port = "smtp"

         check {
            type     = "tcp"
            name     = "tcp"
            interval = "60s"
            timeout  = "30s"
          }
      }

      env {
        MYNETWORKS = "10.10.10.10/32"
        RELAYDOMAINS = "'example1.com, example2.com, example.de'"
        SMTPDBANNER = "'mx2.example1.com ESMTP \\$mail_name'"
        HOSTNAME = "mx2.example1.com"
       }
       config {
        image = "https://potluck.honeyguide.net/postfix-backupmx-nomad"
        pot = "postfix-backupmx-nomad-amd64-14_0"
        tag = "1.12.1"
        command = "/usr/local/bin/cook"
        args = [""]

        port_map = {
          smtp = "25"
        }
      }

      resources {
        cpu = 200
        memory = 64

        network {
          mbits = 10
          port "smtp" {
            static = 25000
          }
        }
      }
    }
  }
}

Getting Started

How To Use The Ready-Made Image

FreeBSD 14.0:
pot import -p postfix-backupmx-nomad-amd64-14_0 -t 1.12.1 -U https://potluck.honeyguide.net/postfix-backupmx-nomad

With Signify Verification:
fetch https://potluck.honeyguide.net/potluck.pub; pot import -p postfix-backupmx-nomad-amd64-14_0 -t 1.12.1 -C potluck.pub -U https://potluck.honeyguide.net/postfix-backupmx-nomad

If you don’t want to use the default pot bridged network configuration but instead need an individual network setup (e.g. assign a host IP address), after importing it you can simply clone the jail like that (em0 is the host network adapter in this example):
pot clone -P postfix-backupmx-nomad-amd64-14_0 -p my-cloned-jail -N alias -i "em0|10.10.10.10"

Note: Some images might require specific network configuration, double check the Overview-chapter at the top.

Alternatively: Create a Jail With This Flavour Yourself

1. Create Flavour Files

Save all files and directories from https://github.com/hny-gd/potluck/tree/master/postfix-backupmx-nomad to /usr/local/etc/pot/flavours/

2. Create Jail From Flavour

Run
pot create -b <FreeBSD Version> -p <jailname> -t single -N public-bridge -f fbsd-update

with your FreeBSD version (e.g. 14.0) and the name your jail should get.

Note: Some images might require specific network configuration, double check the Overview-chapter at the top.

Version History

1.12

  • Version bump for new base image

1.11

  • Version bump for new base image
  • FBSD14 base image

1.10

  • Version bump for new base image

1.9

  • Version bump for new base image

1.8

  • Version bump for new base image

1.7

  • Version bump for new base image

1.6

  • Version bump for new base image

1.5

  • Version bump for new base image

1.4

  • Version bump for new base image
  • Signified

1.3

  • Version bump for new base image

1.2

  • Version bump for new base image

1.1

  • Version bump for new base image
  • New changelog format

1.0.31

  • Version bump for rebuild (no export last time)

1.0.30

  • Version bump for rebuild

1.0.29

  • Version bump for rebuild

1.0.28

  • Version bump for rebuild

1.0.27

  • Version bump for rebuild to fix missing images on potluck site

1.0.26

  • Version bump for p3 rebuild

1.0.25

  • Fix smtpdbanner variable expansion

1.0.24

  • Exporting getopts vars, not working otherwise, nor passing in ENV values in nomad job

1.0.23

  • Removing syslog-ng entirely, not working with nomad pots
  • syslog-ng[12345]: Destination reliable queue full, dropping message; filename=’/var/log/syslog-ng-disk-buffer/syslog-ng-00000.rqf’, queue_len=‘0’, mem_buf_size=‘134217728’, disk_buf_size=‘2147483648’, persist_name=‘afsocket_dd_qfile(stream,1.2.3.4:514)’

1.0.22

  • Postfix wants aliases setup
  • Using postalias as test

1.0.21

  • Syslog-ng needs to be installed

1.0.20

  • Fixing if statement from previous commit changes

1.0.19

  • Version bump for rebuild
  • Minor changes to avoid errors, like check for /root/.env.cook before sourcing it

1.0.18

  • Add OPTIND around getopts
  • Temp remove some recommended actions to disable sendmail actions (bug-chasing)

1.0.17

  • Version bump for rebuild. Non-nomad image works.

1.0.16

  • fixing copy-in to reflect postfix-backupmx-nomad flavour not freebsd-potluck

1.0.15

  • Version bump for rebuild
  • Minor changes, onedisbale for cook service

1.0.14

  • Version bump for rebuild

1.0.13

  • Version bump for rebuild

1.0.12

  • Version bump for rebuild, new simple base image

1.0.11

  • Version bump for rebuild, fixing workflow processes for layered image updates

1.0.10

  • Version bump for rebuild
  • Update nomad job image versions and freebsd version
  • Tweaks to sendmail disable

1.0.9

  • Fixing documentation for remotelog flag

1.0.8

  • New format cook formula
  • Syslog-ng instead of syslogd
  • Mandatory paramaters

1.0.7

  • Version bump for non-layered image round 2

1.0.6

  • Version bump for non-layered image

1.0.5

  • Version bump for FreeBSD-13.1 image

1.0.4

  • Rebuild for FreeBSD 12_3 and 13 & pot 13

1.0.3

  • Rebuild for FreeBSD 13 & new packages

1.0.2


1.0.1

  • Trigger build of FreeBSD 12.2 image & rebuild FreeBSD 11.4 image to update packages

1.0

  • Tested version

0.9

  • Initial commit, beta

These images were built on Mon Apr 22 20:39:38 UTC 2024

Manual Image Download Links

postfix-backupmx-nomad-amd64-14_0_1.12.1.xz ( )
postfix-backupmx-nomad-amd64-14_0_1.12.1.xz.skein ( ) postfix-backupmx-nomad-amd64-14_0_1.12.1.xz.skein.sig ( ) postfix-backupmx-nomad-amd64-14_0_1.12.1.xz.meta ( )

Jenkins Pot Creation Logs

postfix-backupmx-nomad-amd64-14_0_1.12.1:


postfix-backupmx-nomad/postfix-backupmx-nomad:
set-attribute -A persistent -V OFF
set-attribute -A no-rc-script -V ON
copy-in -s /usr/local/etc/pot/flavours/postfix-backupmx-nomad.d/local -d /root/.pot_local
postfix-backupmx-nomad/postfix-backupmx-nomad.sh:
#!/bin/sh

# Based on POTLUCK TEMPLATE v3.0
# Altered by Michael Gmelin
#
# EDIT THE FOLLOWING FOR NEW FLAVOUR:
# 1. RUNS_IN_NOMAD - true or false
# 2. If RUNS_IN_NOMAD is false, can delete the <flavour>+4 file, else
#    make sure pot create command doesn't include it
# 3. Create a matching <flavour> file with this <flavour>.sh file that
#    contains the copy-in commands for the config files from <flavour>.d/
#    Remember that the package directories don't exist yet, so likely copy
#    to /root
# 4. Adjust package installation between BEGIN & END PACKAGE SETUP
# 5. Adjust jail configuration script generation between BEGIN & END COOK
#    Configure the config files that have been copied in where necessary

# Set this to true if this jail flavour is to be created as a nomad
# (i.e. blocking) jail.
# You can then query it in the cook script generation below and the script
# is installed appropriately at the end of this script
RUNS_IN_NOMAD=true

# set the cook log path/filename
COOKLOG=/var/log/cook.log

# check if cooklog exists, create it if not
if [ ! -e $COOKLOG ]
then
    echo "Creating $COOKLOG" | tee -a $COOKLOG
else
    echo "WARNING $COOKLOG already exists"  | tee -a $COOKLOG
fi
date >> $COOKLOG

# -------------------- COMMON ---------------

STEPCOUNT=0
step() {
  STEPCOUNT=$(("$STEPCOUNT" + 1))
  STEP="$*"
  echo "Step $STEPCOUNT: $STEP" | tee -a $COOKLOG
}

exit_ok() {
  trap - EXIT
  exit 0
}

FAILED=" failed"
exit_error() {
  STEP="$*"
  FAILED=""
  exit 1
}

set -e
trap 'echo ERROR: $STEP$FAILED | (>&2 tee -a $COOKLOG)' EXIT

# -------------- BEGIN PACKAGE SETUP -------------

step "Bootstrap package repo"
mkdir -p /usr/local/etc/pkg/repos
# only modify repo if not already done in base image
# shellcheck disable=SC2016
test -e /usr/local/etc/pkg/repos/FreeBSD.conf || \
  echo 'FreeBSD: { url: "pkg+http://pkg.FreeBSD.org/${ABI}/quarterly" }' \
    >/usr/local/etc/pkg/repos/FreeBSD.conf
ASSUME_ALWAYS_YES=yes pkg bootstrap

step "Touch /etc/rc.conf"
touch /etc/rc.conf

# this is important, otherwise running /etc/rc from cook will
# overwrite the IP address set in tinirc
step "Remove ifconfig_epair0b from config"
# shellcheck disable=SC2015
sysrc -cq ifconfig_epair0b && sysrc -x ifconfig_epair0b || true

step "Disable sendmail"
service sendmail onedisable || true

step "Create /usr/local/etc/rc.d"
mkdir -p /usr/local/etc/rc.d

step "Install package postfix"
pkg install -y postfix

step "Clean package installation"
pkg clean -y

# -------------- END PACKAGE SETUP -------------

#
# Now generate the run command script "cook"
# It configures the system on the first run by creating the config file(s)
# On subsequent runs, it only starts sleeps (if nomad-jail) or simply exits
#

# this runs when image boots
# ----------------- BEGIN COOK ------------------

step "Clean cook artifacts"
rm -rf /usr/local/bin/cook /usr/local/share/cook

step "Install pot local"
tar -C /root/.pot_local -cf - . | tar -C /usr/local -xf -
rm -rf /root/.pot_local

step "Set file ownership on cook scripts"
chown -R root:wheel /usr/local/bin/cook /usr/local/share/cook
chmod 755 /usr/local/share/cook/bin/*

# ----------------- END COOK ------------------


# ---------- NO NEED TO EDIT BELOW ------------

step "Make cook script executable"
if [ -e /usr/local/bin/cook ]
then
    echo "setting executable bit on /usr/local/bin/cook" | tee -a $COOKLOG
    chmod u+x /usr/local/bin/cook
else
    exit_error "there is no /usr/local/bin/cook to make executable"
fi

#
# There are two ways of running a pot jail: "Normal", non-blocking mode and
# "Nomad", i.e. blocking mode (the pot start command does not return until
# the jail is stopped).
# For the normal mode, we create a /usr/local/etc/rc.d script that starts
# the "cook" script generated above each time, for the "Nomad" mode, the cook
# script is started by pot (configuration through flavour file), therefore
# we do not need to do anything here.
#

# Create rc.d script for "normal" mode:
step "Create rc.d script to start cook"
echo "creating rc.d script to start cook" | tee -a $COOKLOG

# shellcheck disable=SC2016
echo '#!/bin/sh
#
# PROVIDE: cook
# REQUIRE: LOGIN
# KEYWORD: shutdown
#
. /etc/rc.subr
name="cook"
rcvar="cook_enable"
load_rc_config $name
: ${cook_enable:="NO"}
: ${cook_env:=""}
command="/usr/local/bin/cook"
command_args=""
run_rc_command "$1"
' > /usr/local/etc/rc.d/cook

step "Make rc.d script to start cook executable"
if [ -e /usr/local/etc/rc.d/cook ]
then
  echo "Setting executable bit on cook rc file" | tee -a $COOKLOG
  chmod u+x /usr/local/etc/rc.d/cook
else
  exit_error "/usr/local/etc/rc.d/cook does not exist"
fi

if [ "$RUNS_IN_NOMAD" != "true" ]
then
  step "Enable cook service"
  # This is a non-nomad (non-blocking) jail, so we need to make sure the script
  # gets started when the jail is started:
  # Otherwise, /usr/local/bin/cook will be set as start script by the pot
  # flavour
  echo "enabling cook" | tee -a $COOKLOG
  service cook enable
fi

# -------------------- DONE ---------------
exit_ok

postfix-backupmx-nomad/postfix-backupmx-nomad+1:
postfix-backupmx-nomad/postfix-backupmx-nomad+1.sh:

postfix-backupmx-nomad/postfix-backupmx-nomad+2:
postfix-backupmx-nomad/postfix-backupmx-nomad+2.sh:

postfix-backupmx-nomad/postfix-backupmx-nomad+3:
postfix-backupmx-nomad/postfix-backupmx-nomad+3.sh:

postfix-backupmx-nomad/postfix-backupmx-nomad+4:
set-cmd -c "/usr/local/bin/cook"
postfix-backupmx-nomad/postfix-backupmx-nomad+4.sh:
=====>  Create conf dir (/mnt/srv/pot/jails/postfix-backupmx-nomad-amd64-14_0/conf)
=====>  Cloning freebsd-potluck-amd64-14_0_0_0_23 with snap 
=====>  clone zroot/srv/pot/jails/freebsd-potluck-amd64-14_0_0_0_23/m@1713115286 into zroot/srv/pot/jails/postfix-backupmx-nomad-amd64-14_0/m
=====>  Flavour: fbsd-update
=====>  Starting postfix-backupmx-nomad-amd64-14_0 pot for the initial bootstrap
=====>  mount /mnt/srv/pot/jails/postfix-backupmx-nomad-amd64-14_0/m/tmp
defaultrouter: 10.192.0.1 -> 10.192.0.1
===>  Starting the pot postfix-backupmx-nomad-amd64-14_0
=====>  Pot postfix-backupmx-nomad-amd64-14_0 jail params are: allow.set_hostname=false allow.raw_sockets allow.socket_af allow.chflags exec.clean mount.devfs enforce_statfs=2 sysvshm=new sysvsem=new sysvmsg=new children.max=0 devfs_ruleset=4 stop.timeout=10 name=postfix-backupmx-nomad-amd64-14_0 host.hostname=postfix-backupmx-nomad-amd64-14_0.vsf00002.cpt.za.honeyguide.net osrelease=14.0-RELEASE-p6 path=/mnt/srv/pot/jails/postfix-backupmx-nomad-amd64-14_0/m persist vnet vnet.interface=epair0b
ELF ldconfig path: /lib /usr/lib /usr/lib/compat /usr/local/lib /usr/local/lib/compat/pkg /usr/local/lib/compat/pkg
32-bit compatibility ldconfig path: /usr/lib32
Starting Network: lo0 epair0b.
lo0: flags=1008049<UP,LOOPBACK,RUNNING,MULTICAST,LOWER_UP> metric 0 mtu 16384
	options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
	inet 127.0.0.1 netmask 0xff000000
	inet6 ::1 prefixlen 128
	inet6 fe80::1%lo0 prefixlen 64 scopeid 0x6
	groups: lo
	nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
epair0b: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500
	options=8<VLAN_MTU>
	ether 02:3b:98:2a:55:0b
	inet 10.192.0.3 netmask 0xffc00000 broadcast 10.255.255.255
	groups: epair
	media: Ethernet 10Gbase-T (10Gbase-T <full-duplex>)
	status: active
	nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
add host 127.0.0.1: gateway lo0 fib 0: route already in table
add net default: gateway 10.192.0.1
add host ::1: gateway lo0 fib 0: route already in table
add net fe80::: gateway ::1
add net ff02::: gateway ::1
add net ::ffff:0.0.0.0: gateway ::1
add net ::0.0.0.0: gateway ::1
Clearing /tmp (X related).
Updating /var/run/os-release done.
Creating and/or trimming log files.
Updating motd:.
Starting syslogd.
Starting sendmail_submit.
Starting cron.

Mon Apr 22 20:37:26 UTC 2024
/usr/local/etc/pot/flavours/fbsd-update.sh -> /mnt/srv/pot/jails/postfix-backupmx-nomad-amd64-14_0/m/tmp/fbsd-update.sh
=====>  Executing fbsd-update script on postfix-backupmx-nomad-amd64-14_0
src component not installed, skipped
Looking up update.FreeBSD.org mirrors... 3 mirrors found.
Fetching metadata signature for 14.0-RELEASE from update1.freebsd.org... done.
Fetching metadata index... done.
Inspecting system... done.
Preparing to download files... done.

No updates needed to update system to 14.0-RELEASE-p6.
No updates are available to install.
=====>  Stop the pot postfix-backupmx-nomad-amd64-14_0
=====>  Remove p46626ca83ae1f epair network interfaces
=====>  unmount /mnt/srv/pot/jails/postfix-backupmx-nomad-amd64-14_0/m/tmp
=====>  unmount /mnt/srv/pot/jails/postfix-backupmx-nomad-amd64-14_0/m/dev
=====>  Flavour: postfix-backupmx-nomad
=====>  Executing postfix-backupmx-nomad pot commands on postfix-backupmx-nomad-amd64-14_0
=====>  mount /mnt/srv/pot/jails/postfix-backupmx-nomad-amd64-14_0/m/tmp
=====>  Source /usr/local/etc/pot/flavours/postfix-backupmx-nomad.d/local copied in the pot postfix-backupmx-nomad-amd64-14_0
=====>  unmount /mnt/srv/pot/jails/postfix-backupmx-nomad-amd64-14_0/m/tmp
=====>  /mnt/srv/pot/jails/postfix-backupmx-nomad-amd64-14_0/m/dev is already unmounted
=====>  Starting postfix-backupmx-nomad-amd64-14_0 pot for the initial bootstrap
=====>  Setting pot postfix-backupmx-nomad-amd64-14_0 temporarily to persistent
=====>  mount /mnt/srv/pot/jails/postfix-backupmx-nomad-amd64-14_0/m/tmp
===>  Starting the pot postfix-backupmx-nomad-amd64-14_0
=====>  Pot postfix-backupmx-nomad-amd64-14_0 jail params are: allow.set_hostname=false allow.raw_sockets allow.socket_af allow.chflags exec.clean mount.devfs enforce_statfs=2 sysvshm=new sysvsem=new sysvmsg=new children.max=0 devfs_ruleset=4 stop.timeout=10 name=postfix-backupmx-nomad-amd64-14_0 host.hostname=postfix-backupmx-nomad-amd64-14_0.vsf00002.cpt.za.honeyguide.net osrelease=14.0-RELEASE-p6 path=/mnt/srv/pot/jails/postfix-backupmx-nomad-amd64-14_0/m persist vnet vnet.interface=epair0b
add net default: gateway 10.192.0.1
ELF ldconfig path: /lib /usr/lib /usr/lib/compat /usr/local/lib /usr/local/lib/compat/pkg /usr/local/lib/compat/pkg
32-bit compatibility ldconfig path: /usr/lib32
Starting Network: lo0 epair0b.
lo0: flags=1008049<UP,LOOPBACK,RUNNING,MULTICAST,LOWER_UP> metric 0 mtu 16384
	options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
	inet 127.0.0.1 netmask 0xff000000
	inet6 ::1 prefixlen 128
	inet6 fe80::1%lo0 prefixlen 64 scopeid 0x6
	groups: lo
	nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
epair0b: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500
	options=8<VLAN_MTU>
	ether 02:39:8c:e8:1d:0b
	inet 10.192.0.3 netmask 0xffc00000 broadcast 10.255.255.255
	groups: epair
	media: Ethernet 10Gbase-T (10Gbase-T <full-duplex>)
	status: active
	nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
add host 127.0.0.1: gateway lo0 fib 0: route already in table
add net default: gateway 10.192.0.1
add host ::1: gateway lo0 fib 0: route already in table
add net fe80::: gateway ::1
add net ff02::: gateway ::1
add net ::ffff:0.0.0.0: gateway ::1
add net ::0.0.0.0: gateway ::1
Clearing /tmp (X related).
Updating /var/run/os-release done.
Creating and/or trimming log files.
Updating motd:.
Starting syslogd.
Starting sendmail_submit.
Starting cron.

Mon Apr 22 20:38:11 UTC 2024
/usr/local/etc/pot/flavours/postfix-backupmx-nomad.sh -> /mnt/srv/pot/jails/postfix-backupmx-nomad-amd64-14_0/m/tmp/postfix-backupmx-nomad.sh
=====>  Executing postfix-backupmx-nomad script on postfix-backupmx-nomad-amd64-14_0
WARNING /var/log/cook.log already exists
Step 1: Bootstrap package repo
pkg already bootstrapped at /usr/local/sbin/pkg
Step 2: Touch /etc/rc.conf
Step 3: Remove ifconfig_epair0b from config
Step 4: Disable sendmail
sendmail disabled in /etc/rc.conf
sendmail_submit disabled in /etc/rc.conf
sendmail_msp_queue disabled in /etc/rc.conf
Step 5: Create /usr/local/etc/rc.d
Step 6: Install package postfix
Updating FreeBSD repository catalogue...
[postfix-backupmx-nomad-amd64-14_0.vsf00002.cpt.za.honeyguide.net] Fetching data.pkg: .......... done
Processing entries: .......... done
FreeBSD repository update completed. 34050 packages processed.
All repositories are up to date.
New version of pkg detected; it needs to be installed first.
The following 1 package(s) will be affected (of 0 checked):

Installed packages to be UPGRADED:
	pkg: 1.21.1 -> 1.21.2

Number of packages to be upgraded: 1

12 MiB to be downloaded.
[postfix-backupmx-nomad-amd64-14_0.vsf00002.cpt.za.honeyguide.net] [1/1] Fetching pkg-1.21.2.pkg: .......... done
Checking integrity... done (0 conflicting)
[postfix-backupmx-nomad-amd64-14_0.vsf00002.cpt.za.honeyguide.net] [1/1] Upgrading pkg from 1.21.1 to 1.21.2...
[postfix-backupmx-nomad-amd64-14_0.vsf00002.cpt.za.honeyguide.net] [1/1] Extracting pkg-1.21.2: .......... done
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
The following 3 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
	icu: 74.2_1,1
	pcre2: 10.43
	postfix: 3.9.0,1

Number of packages to be installed: 3

The process will require 67 MiB more space.
16 MiB to be downloaded.
[postfix-backupmx-nomad-amd64-14_0.vsf00002.cpt.za.honeyguide.net] [1/3] Fetching icu-74.2_1,1.pkg: .......... done
[postfix-backupmx-nomad-amd64-14_0.vsf00002.cpt.za.honeyguide.net] [2/3] Fetching pcre2-10.43.pkg: .......... done
[postfix-backupmx-nomad-amd64-14_0.vsf00002.cpt.za.honeyguide.net] [3/3] Fetching postfix-3.9.0,1.pkg: .......... done
Checking integrity... done (0 conflicting)
[postfix-backupmx-nomad-amd64-14_0.vsf00002.cpt.za.honeyguide.net] [1/3] Installing icu-74.2_1,1...
[postfix-backupmx-nomad-amd64-14_0.vsf00002.cpt.za.honeyguide.net] [1/3] Extracting icu-74.2_1,1: .......... done
[postfix-backupmx-nomad-amd64-14_0.vsf00002.cpt.za.honeyguide.net] [2/3] Installing pcre2-10.43...
[postfix-backupmx-nomad-amd64-14_0.vsf00002.cpt.za.honeyguide.net] [2/3] Extracting pcre2-10.43: .......... done
[postfix-backupmx-nomad-amd64-14_0.vsf00002.cpt.za.honeyguide.net] [3/3] Installing postfix-3.9.0,1...
===> Creating groups.
Using existing group 'mail'.
Creating group 'maildrop' with gid '126'.
Creating group 'postfix' with gid '125'.
===> Creating users
Creating user 'postfix' with uid '125'.
===> Creating homedir(s)
Adding user 'postfix' to group 'mail'.
[postfix-backupmx-nomad-amd64-14_0.vsf00002.cpt.za.honeyguide.net] [3/3] Extracting postfix-3.9.0,1: .......... done
chown: /usr/local/share/man/man5/mongodb_table.5.gz: No such file or directory

===============================================================
Postfix was *not* activated in /usr/local/etc/mail/mailer.conf! 

To finish installation run the following commands:

  mkdir -p /usr/local/etc/mail
  install -m 0644 /usr/local/share/postfix/mailer.conf.postfix /usr/local/etc/mail/mailer.conf
===============================================================

=====
Message from postfix-3.9.0,1:

--
To use postfix instead of sendmail:
  - clear sendmail queue and stop the sendmail daemons

Run the following commands to enable postfix during startup:
  - sysrc postfix_enable="YES"
  - sysrc sendmail_enable="NONE"

If postfix is *not* already activated in /usr/local/etc/mail/mailer.conf
  - mv /usr/local/etc/mail/mailer.conf /usr/local/etc/mail/mailer.conf.old
  - install -d /usr/local/etc/mail
  - install -m 0644 /usr/local/share/postfix/mailer.conf.postfix /usr/local/etc/mail/mailer.conf

Disable sendmail(8) specific tasks,
add the following lines to /etc/periodic.conf(.local):
  daily_clean_hoststat_enable="NO"
  daily_status_mail_rejects_enable="NO"
  daily_status_include_submit_mailq="NO"
  daily_submit_queuerun="NO"

If you are using SASL, you need to make sure that postfix has access to read
the sasldb file.  This is accomplished by adding postfix to group mail and
making the /usr/local/etc/sasldb* file(s) readable by group mail (this should
be the default for new installs).
Step 7: Clean package installation
The following package files will be deleted:
	/var/cache/pkg/openssl-3.0.13_2,1.pkg
	/var/cache/pkg/openssl-3.0.13_2,1~9d9aca70ca.pkg
The cleanup will free 6 MiB
Deleting files: .. done
Step 8: Clean cook artifacts
Step 9: Install pot local
Step 10: Set file ownership on cook scripts
Step 11: Make cook script executable
setting executable bit on /usr/local/bin/cook
Step 12: Create rc.d script to start cook
creating rc.d script to start cook
Step 13: Make rc.d script to start cook executable
Setting executable bit on cook rc file
=====>  Stop the pot postfix-backupmx-nomad-amd64-14_0
=====>  Remove p46626cab2ae1f epair network interfaces
=====>  unmount /mnt/srv/pot/jails/postfix-backupmx-nomad-amd64-14_0/m/tmp
=====>  unmount /mnt/srv/pot/jails/postfix-backupmx-nomad-amd64-14_0/m/dev
=====>  Reverting pot postfix-backupmx-nomad-amd64-14_0 to non-persistent
=====>  Flavour: postfix-backupmx-nomad+1
=====>  Executing postfix-backupmx-nomad+1 pot commands on postfix-backupmx-nomad-amd64-14_0
=====>  No shell script available for the flavour postfix-backupmx-nomad+1
=====>  Flavour: postfix-backupmx-nomad+2
=====>  Executing postfix-backupmx-nomad+2 pot commands on postfix-backupmx-nomad-amd64-14_0
=====>  No shell script available for the flavour postfix-backupmx-nomad+2
=====>  Flavour: postfix-backupmx-nomad+3
=====>  Executing postfix-backupmx-nomad+3 pot commands on postfix-backupmx-nomad-amd64-14_0
=====>  No shell script available for the flavour postfix-backupmx-nomad+3
=====>  Flavour: postfix-backupmx-nomad+4
=====>  Executing postfix-backupmx-nomad+4 pot commands on postfix-backupmx-nomad-amd64-14_0
=====>  No shell script available for the flavour postfix-backupmx-nomad+4
===>  exporting postfix-backupmx-nomad-amd64-14_0 @ 1713818320 to /tmp/postfix-backupmx-nomad-amd64-14_0_1.12.1.xz

This site © Honeyguide Group (Pty) Ltd, all the hosted software their respective license owners 2020 - 2021 - Disclaimer