diff --git a/rootfs/etc/cont-init.d/01-setup-timezone.sh b/rootfs/etc/cont-init.d/01-setup-timezone.sh index 6ce45dd..eaf335b 100644 --- a/rootfs/etc/cont-init.d/01-setup-timezone.sh +++ b/rootfs/etc/cont-init.d/01-setup-timezone.sh @@ -3,7 +3,7 @@ # Set up timezone if [ -z "${TZ}" ]; then - echo "WARNING: TZ environment variable not set" + echo "WARNING: TZ environment variable not set" else - ln -snf "/usr/share/zoneinfo/$TZ" /etc/localtime && echo "$TZ" >/etc/timezone + ln -snf "/usr/share/zoneinfo/$TZ" /etc/localtime && echo "$TZ" >/etc/timezone fi diff --git a/rootfs/etc/cont-init.d/02-setup-aliases.sh b/rootfs/etc/cont-init.d/02-setup-aliases.sh index 97dd076..a52a58d 100644 --- a/rootfs/etc/cont-init.d/02-setup-aliases.sh +++ b/rootfs/etc/cont-init.d/02-setup-aliases.sh @@ -4,11 +4,11 @@ # Check to make sure the correct command line arguments have been set EXITCODE=0 if [ -z "${POSTMASTER_EMAIL}" ]; then - echo "ERROR: POSTMASTER_EMAIL environment variable not set" - EXITCODE=1 + echo "ERROR: POSTMASTER_EMAIL environment variable not set" + EXITCODE=1 fi if [ $EXITCODE -ne 0 ]; then - exit 1 + exit 1 fi # Exit on failure @@ -16,3 +16,7 @@ set -e # Update aliases file /usr/local/bin/update_aliases + + +# Update virtual aliases file +/usr/local/bin/update_virtual_aliases diff --git a/rootfs/etc/cont-init.d/10-postfix-generate-main.cf.sh b/rootfs/etc/cont-init.d/10-postfix-generate-main.cf.sh index 9ffc389..09db24a 100644 --- a/rootfs/etc/cont-init.d/10-postfix-generate-main.cf.sh +++ b/rootfs/etc/cont-init.d/10-postfix-generate-main.cf.sh @@ -6,309 +6,309 @@ SMTPDMILTERS="" CHECK_RECIPIENT_ACCESS="" { - echo "" - - # http://www.postfix.org/postconf.5.html#enable_long_queue_ids - echo "enable_long_queue_ids = yes" - - # Logging to stdout: http://www.postfix.org/MAILLOG_README.html - echo "maillog_file = /dev/stdout" - - # http://www.postfix.org/postconf.5.html#compatibility_level - echo "compatibility_level = 2" - - # http://www.postfix.org/postconf.5.html#alias_maps - echo "alias_maps = hash:/etc/aliases" - - # https://www.postfix.org/postconf.5.html#virtual_alias_maps - if [ -f "/etc/postfix/tables/virtual" ]; then - echo "virtual_alias_maps = hash:/etc/postfix/virtual" - fi - - # http://www.postfix.org/SMTPUTF8_README.html - if [ "${POSTFIX_SMTPUTF8_ENABLE}" = "true" ]; then - echo "smtputf8_enable = yes" - fi - - # http://www.postfix.org/postconf.5.html#myorigin - if [ -n "${POSTFIX_MYORIGIN}" ]; then - echo "myorigin = ${POSTFIX_MYORIGIN}" - fi - - # http://www.postfix.org/postconf.5.html#proxy_interfaces - if [ -n "${POSTFIX_PROXY_INTERFACES}" ]; then - echo "proxy_interfaces = ${POSTFIX_PROXY_INTERFACES}" - fi - - # http://www.postfix.org/postconf.5.html#mynetworks - if [ -n "${POSTFIX_MYNETWORKS}" ]; then - echo "mynetworks = ${POSTFIX_MYNETWORKS}" - fi - - # http://www.postfix.org/postconf.5.html#inet_protocols - if [ -n "${POSTFIX_INET_PROTOCOLS}" ]; then - echo "inet_protocols = ${POSTFIX_INET_PROTOCOLS}" - fi - - # http://www.postfix.org/postconf.5.html#mydomain - if [ -n "${POSTFIX_MYDOMAIN}" ]; then - echo "mydomain = ${POSTFIX_MYDOMAIN}" - fi - - # http://www.postfix.org/postconf.5.html#myhostname - if [ -n "${POSTFIX_MYHOSTNAME}" ]; then - echo "myhostname = ${POSTFIX_MYHOSTNAME}" - fi - - # http://www.postfix.org/postconf.5.html#mail_name - if [ -n "${POSTFIX_MAIL_NAME}" ]; then - echo "mail_name = ${POSTFIX_MAIL_NAME}" - fi - - # http://www.postfix.org/postconf.5.html#smtpd_tls_cert_file - if [ -n "${POSTFIX_SMTPD_TLS_CERT_FILE}" ]; then - echo "smtpd_tls_cert_file = ${POSTFIX_SMTPD_TLS_CERT_FILE}" - fi - - # http://www.postfix.org/postconf.5.html#smtpd_tls_key_file - if [ -n "${POSTFIX_SMTPD_TLS_KEY_FILE}" ]; then - echo "smtpd_tls_key_file = ${POSTFIX_SMTPD_TLS_KEY_FILE}" - fi - - # http://www.postfix.org/postconf.5.html#smtpd_tls_security_level - if [ -n "${POSTFIX_SMTPD_TLS_SECURITY_LEVEL}" ]; then - echo "smtpd_tls_security_level = ${POSTFIX_SMTPD_TLS_SECURITY_LEVEL}" - fi - - # http://www.postfix.org/postconf.5.html#smtpd_use_tls - if [ -n "${POSTFIX_SMTPD_USE_TLS}" ]; then - echo "smtpd_use_tls = ${POSTFIX_SMTPD_USE_TLS}" - fi - - # http://www.postfix.org/postconf.5.html#smtpd_tls_loglevel - if [ -n "${POSTFIX_SMTPD_TLS_LOGLEVEL}" ]; then - echo "smtpd_tls_loglevel = ${POSTFIX_SMTPD_TLS_LOGLEVEL}" - fi - - # http://www.postfix.org/postconf.5.html#smtp_tls_security_level - if [ -n "${POSTFIX_SMTP_TLS_SECURITY_LEVEL}" ]; then - echo "smtp_tls_security_level = ${POSTFIX_SMTP_TLS_SECURITY_LEVEL}" - fi - - # http://www.postfix.org/postconf.5.html#smtp_tls_loglevel - if [ -n "${POSTFIX_SMTP_TLS_LOGLEVEL}" ]; then - echo "smtp_tls_loglevel = ${POSTFIX_SMTP_TLS_LOGLEVEL}" - fi - - # http://www.postfix.org/postconf.5.html#smtp_tls_chain_files - if [ -n "${POSTFIX_SMTP_TLS_CHAIN_FILES}" ]; then - echo "smtp_tls_chain_files = ${POSTFIX_SMTP_TLS_CHAIN_FILES}" - fi - - # http://www.postfix.org/postconf.5.html#smtpd_tls_chain_files - if [ -n "${POSTFIX_SMTPD_TLS_CHAIN_FILES}" ]; then - echo "smtpd_tls_chain_files = ${POSTFIX_SMTPD_TLS_CHAIN_FILES}" - fi - - # http://www.postfix.org/postconf.5.html#relayhost - if [ -n "${POSTFIX_RELAYHOST}" ]; then - echo "relayhost = ${POSTFIX_RELAYHOST}:${POSTFIX_RELAYHOST_PORT}" - fi - - # http://www.postfix.org/postconf.5.html#relay_domains - if [ -n "${POSTFIX_RELAY_DOMAINS}" ]; then - echo "relay_domains = ${POSTFIX_RELAY_DOMAINS}" - fi - - echo "disable_vrfy_command = yes" - - echo "smtpd_hard_error_limit = 1" - - echo "header_checks = pcre:/etc/postfix/header_checks.pcre" - echo "milter_header_checks = pcre:/etc/postfix/milter_header_checks.pcre" - - # ========== Backwards Compatibility ========== - if [ -n "${POSTFIX_SMTPD_RELAY_BEFORE_RECIPIENT_RESTRICTIONS}" ]; then - echo "smtpd_relay_before_recipient_restrictions = ${POSTFIX_SMTPD_RELAY_BEFORE_RECIPIENT_RESTRICTIONS}" - fi - - # ========== START smtpd_helo_restrictions ========== - - echo "smtpd_helo_required = yes" - echo "smtpd_helo_restrictions = " - echo " permit_mynetworks," - echo " check_helo_access hash:/etc/postfix/helo_access.hash," - + echo "" + + # http://www.postfix.org/postconf.5.html#enable_long_queue_ids + echo "enable_long_queue_ids = yes" + + # Logging to stdout: http://www.postfix.org/MAILLOG_README.html + echo "maillog_file = /dev/stdout" + + # http://www.postfix.org/postconf.5.html#compatibility_level + echo "compatibility_level = 2" + + # http://www.postfix.org/postconf.5.html#alias_maps + echo "alias_maps = hash:/etc/aliases" + + # https://www.postfix.org/postconf.5.html#virtual_alias_maps + if [ -f "/etc/postfix/tables/virtual" ]; then + echo "virtual_alias_maps = hash:/etc/postfix/virtual" + fi + + # http://www.postfix.org/SMTPUTF8_README.html + if [ "${POSTFIX_SMTPUTF8_ENABLE}" = "true" ]; then + echo "smtputf8_enable = yes" + fi + + # http://www.postfix.org/postconf.5.html#myorigin + if [ -n "${POSTFIX_MYORIGIN}" ]; then + echo "myorigin = ${POSTFIX_MYORIGIN}" + fi + + # http://www.postfix.org/postconf.5.html#proxy_interfaces + if [ -n "${POSTFIX_PROXY_INTERFACES}" ]; then + echo "proxy_interfaces = ${POSTFIX_PROXY_INTERFACES}" + fi + + # http://www.postfix.org/postconf.5.html#mynetworks + if [ -n "${POSTFIX_MYNETWORKS}" ]; then + echo "mynetworks = ${POSTFIX_MYNETWORKS}" + fi + + # http://www.postfix.org/postconf.5.html#inet_protocols + if [ -n "${POSTFIX_INET_PROTOCOLS}" ]; then + echo "inet_protocols = ${POSTFIX_INET_PROTOCOLS}" + fi + + # http://www.postfix.org/postconf.5.html#mydomain + if [ -n "${POSTFIX_MYDOMAIN}" ]; then + echo "mydomain = ${POSTFIX_MYDOMAIN}" + fi + + # http://www.postfix.org/postconf.5.html#myhostname + if [ -n "${POSTFIX_MYHOSTNAME}" ]; then + echo "myhostname = ${POSTFIX_MYHOSTNAME}" + fi + + # http://www.postfix.org/postconf.5.html#mail_name + if [ -n "${POSTFIX_MAIL_NAME}" ]; then + echo "mail_name = ${POSTFIX_MAIL_NAME}" + fi + + # http://www.postfix.org/postconf.5.html#smtpd_tls_cert_file + if [ -n "${POSTFIX_SMTPD_TLS_CERT_FILE}" ]; then + echo "smtpd_tls_cert_file = ${POSTFIX_SMTPD_TLS_CERT_FILE}" + fi + + # http://www.postfix.org/postconf.5.html#smtpd_tls_key_file + if [ -n "${POSTFIX_SMTPD_TLS_KEY_FILE}" ]; then + echo "smtpd_tls_key_file = ${POSTFIX_SMTPD_TLS_KEY_FILE}" + fi + + # http://www.postfix.org/postconf.5.html#smtpd_tls_security_level + if [ -n "${POSTFIX_SMTPD_TLS_SECURITY_LEVEL}" ]; then + echo "smtpd_tls_security_level = ${POSTFIX_SMTPD_TLS_SECURITY_LEVEL}" + fi + + # http://www.postfix.org/postconf.5.html#smtpd_use_tls + if [ -n "${POSTFIX_SMTPD_USE_TLS}" ]; then + echo "smtpd_use_tls = ${POSTFIX_SMTPD_USE_TLS}" + fi + + # http://www.postfix.org/postconf.5.html#smtpd_tls_loglevel + if [ -n "${POSTFIX_SMTPD_TLS_LOGLEVEL}" ]; then + echo "smtpd_tls_loglevel = ${POSTFIX_SMTPD_TLS_LOGLEVEL}" + fi + + # http://www.postfix.org/postconf.5.html#smtp_tls_security_level + if [ -n "${POSTFIX_SMTP_TLS_SECURITY_LEVEL}" ]; then + echo "smtp_tls_security_level = ${POSTFIX_SMTP_TLS_SECURITY_LEVEL}" + fi + + # http://www.postfix.org/postconf.5.html#smtp_tls_loglevel + if [ -n "${POSTFIX_SMTP_TLS_LOGLEVEL}" ]; then + echo "smtp_tls_loglevel = ${POSTFIX_SMTP_TLS_LOGLEVEL}" + fi + + # http://www.postfix.org/postconf.5.html#smtp_tls_chain_files + if [ -n "${POSTFIX_SMTP_TLS_CHAIN_FILES}" ]; then + echo "smtp_tls_chain_files = ${POSTFIX_SMTP_TLS_CHAIN_FILES}" + fi + + # http://www.postfix.org/postconf.5.html#smtpd_tls_chain_files + if [ -n "${POSTFIX_SMTPD_TLS_CHAIN_FILES}" ]; then + echo "smtpd_tls_chain_files = ${POSTFIX_SMTPD_TLS_CHAIN_FILES}" + fi + + # http://www.postfix.org/postconf.5.html#relayhost + if [ -n "${POSTFIX_RELAYHOST}" ]; then + echo "relayhost = ${POSTFIX_RELAYHOST}:${POSTFIX_RELAYHOST_PORT}" + fi + + # http://www.postfix.org/postconf.5.html#relay_domains + if [ -n "${POSTFIX_RELAY_DOMAINS}" ]; then + echo "relay_domains = ${POSTFIX_RELAY_DOMAINS}" + fi + + echo "disable_vrfy_command = yes" + + echo "smtpd_hard_error_limit = 1" + + echo "header_checks = pcre:/etc/postfix/header_checks.pcre" + echo "milter_header_checks = pcre:/etc/postfix/milter_header_checks.pcre" + + # ========== Backwards Compatibility ========== + if [ -n "${POSTFIX_SMTPD_RELAY_BEFORE_RECIPIENT_RESTRICTIONS}" ]; then + echo "smtpd_relay_before_recipient_restrictions = ${POSTFIX_SMTPD_RELAY_BEFORE_RECIPIENT_RESTRICTIONS}" + fi + + # ========== START smtpd_helo_restrictions ========== + + echo "smtpd_helo_required = yes" + echo "smtpd_helo_restrictions = " + echo " permit_mynetworks," + echo " check_helo_access hash:/etc/postfix/helo_access.hash," + if [ "${POSTFIX_REJECT_INVALID_HELO_HOSTNAME}" = "true" ]; then - echo " reject_invalid_helo_hostname," + echo " reject_invalid_helo_hostname," fi if [ "${POSTFIX_REJECT_NON_FQDN_HELO_HOSTNAME}" = "true" ]; then - echo " reject_non_fqdn_helo_hostname," + echo " reject_non_fqdn_helo_hostname," fi if [ "${POSTFIX_REJECT_UNKNOWN_HELO_HOSTNAME}" = "true" ]; then - echo " reject_unknown_helo_hostname" + echo " reject_unknown_helo_hostname" fi - # ========== END smtpd_helo_restrictions ========== + # ========== END smtpd_helo_restrictions ========== - # ========== START smtpd_recipient_restrictions ========== + # ========== START smtpd_recipient_restrictions ========== - echo "smtpd_recipient_restrictions = " + echo "smtpd_recipient_restrictions = " echo " check_client_access cidr:/etc/postfix/client_access.cidr," if [ "${POSTFIX_SMTPD_RECIPIENT_RESTRICTIONS_PERMIT_SASL_AUTHENTICATED}" = "true" ]; then - echo " permit_sasl_authenticated," + echo " permit_sasl_authenticated," fi if [ "${POSTFIX_SENDER_ACCESS_REGEXP}" = "true" ]; then - echo " check_sender_access regexp:/etc/postfix/sender_access.hash," + echo " check_sender_access regexp:/etc/postfix/sender_access.hash," else - echo " check_sender_access hash:/etc/postfix/sender_access.hash," + echo " check_sender_access hash:/etc/postfix/sender_access.hash," fi if [ "${POSTFIX_SMTPD_RECIPIENT_RESTRICTIONS_PERMIT_MYNETWORK}" = "true" ]; then - echo " permit_mynetworks," + echo " permit_mynetworks," fi echo " reject_unauth_destination," if [ "${ENABLE_SPF}" = "true" ]; then - echo " check_policy_service unix:private/policy," + echo " check_policy_service unix:private/policy," fi echo " reject_non_fqdn_recipient," echo " reject_non_fqdn_sender," if [ "${POSTFIX_REJECT_UNKNOWN_SENDER_DOMAIN}" = "true" ]; then - echo " reject_unknown_sender_domain," + echo " reject_unknown_sender_domain," fi echo " reject_unknown_recipient_domain," if [ "${ENABLE_POSTGREY}" = "true" ]; then - echo " check_policy_service inet:127.0.0.1:10023," + echo " check_policy_service inet:127.0.0.1:10023," fi - # If local recipient_access.hash file exists, add to check_recipient_access + # If local recipient_access.hash file exists, add to check_recipient_access if [ -f "/etc/postfix/tables/recipient_access.hash" ]; then - if [ "$POSTFIX_CHECK_RECIPIENT_ACCESS_REGEXP" = "true" ]; then - MATCH_TYPE="regexp" - else - MATCH_TYPE="hash" - fi - if [ "$CHECK_RECIPIENT_ACCESS" = "" ]; then - CHECK_RECIPIENT_ACCESS="${MATCH_TYPE}:/etc/postfix/recipient_access.hash" - else - CHECK_RECIPIENT_ACCESS="$CHECK_RECIPIENT_ACCESS, ${MATCH_TYPE}:/etc/postfix/recipient_access.hash" - fi + if [ "$POSTFIX_CHECK_RECIPIENT_ACCESS_REGEXP" = "true" ]; then + MATCH_TYPE="regexp" + else + MATCH_TYPE="hash" + fi + if [ "$CHECK_RECIPIENT_ACCESS" = "" ]; then + CHECK_RECIPIENT_ACCESS="${MATCH_TYPE}:/etc/postfix/recipient_access.hash" + else + CHECK_RECIPIENT_ACCESS="$CHECK_RECIPIENT_ACCESS, ${MATCH_TYPE}:/etc/postfix/recipient_access.hash" + fi fi # If ENABLE_LDAP_RECIPIENT_ACCESS, then add ldap to check_recipient_access if [ "${ENABLE_LDAP_RECIPIENT_ACCESS}" = "true" ]; then - if [ "$CHECK_RECIPIENT_ACCESS" = "" ]; then - CHECK_RECIPIENT_ACCESS="ldap:${POSTFIX_LDAP_RECIPIENT_ACCESS_CONF_FILE}" - else - CHECK_RECIPIENT_ACCESS="$CHECK_RECIPIENT_ACCESS, ldap:${POSTFIX_LDAP_RECIPIENT_ACCESS_CONF_FILE}" - fi + if [ "$CHECK_RECIPIENT_ACCESS" = "" ]; then + CHECK_RECIPIENT_ACCESS="ldap:${POSTFIX_LDAP_RECIPIENT_ACCESS_CONF_FILE}" + else + CHECK_RECIPIENT_ACCESS="$CHECK_RECIPIENT_ACCESS, ldap:${POSTFIX_LDAP_RECIPIENT_ACCESS_CONF_FILE}" + fi fi if [ "${CHECK_RECIPIENT_ACCESS}" != "" ]; then - echo " check_recipient_access ${CHECK_RECIPIENT_ACCESS}," - echo " $POSTFIX_CHECK_RECIPIENT_ACCESS_FINAL_ACTION" + echo " check_recipient_access ${CHECK_RECIPIENT_ACCESS}," + echo " $POSTFIX_CHECK_RECIPIENT_ACCESS_FINAL_ACTION" else - echo " permit" + echo " permit" fi - # ========== END smtpd_recipient_restrictions ========== + # ========== END smtpd_recipient_restrictions ========== - # ========== START smtpd_data_restrictions ========== + # ========== START smtpd_data_restrictions ========== - echo "smtpd_data_restrictions = " + echo "smtpd_data_restrictions = " echo " reject_unauth_pipelining," echo " permit" - # ========== END smtpd_data_restrictions ========== - - # If local transport.hash file exists, add transport_maps to main.cf - if [ -f "/etc/postfix/tables/transport.hash" ]; then - echo "transport_maps = hash:/etc/postfix/transport.hash" - fi + # ========== END smtpd_data_restrictions ========== - # Do we enable & configure DKIM? - if [ "${ENABLE_OPENDKIM}" = "true" ]; then - echo "milter_default_action = accept" - echo "milter_protocol = 2" - echo "non_smtpd_milters = inet:localhost:8891" + # If local transport.hash file exists, add transport_maps to main.cf + if [ -f "/etc/postfix/tables/transport.hash" ]; then + echo "transport_maps = hash:/etc/postfix/transport.hash" + fi - if [ "$SMTPDMILTERS" = "" ]; then - SMTPDMILTERS="inet:localhost:8891" - else - SMTPDMILTERS="$SMTPDMILTERS, inet:localhost:8891" + # Do we enable & configure DKIM? + if [ "${ENABLE_OPENDKIM}" = "true" ]; then + echo "milter_default_action = accept" + echo "milter_protocol = 2" + echo "non_smtpd_milters = inet:localhost:8891" + + if [ "$SMTPDMILTERS" = "" ]; then + SMTPDMILTERS="inet:localhost:8891" + else + SMTPDMILTERS="$SMTPDMILTERS, inet:localhost:8891" + fi fi - fi - # Do we enable & configure ClamAV? - if [ "${ENABLE_CLAMAV}" = "true" ]; then - if [ "$SMTPDMILTERS" = "" ]; then - SMTPDMILTERS="inet:localhost:7357" - else - SMTPDMILTERS="$SMTPDMILTERS, inet:localhost:7357" + # Do we enable & configure ClamAV? + if [ "${ENABLE_CLAMAV}" = "true" ]; then + if [ "$SMTPDMILTERS" = "" ]; then + SMTPDMILTERS="inet:localhost:7357" + else + SMTPDMILTERS="$SMTPDMILTERS, inet:localhost:7357" + fi fi - fi - # Are there any extra smtpd milters? If so, write 'em. - if [ -n "${POSTFIX_SMTPD_MILTERS}" ]; then - if [ "$SMTPDMILTERS" = "" ]; then - SMTPDMILTERS="${POSTFIX_SMTPD_MILTERS}" - else - SMTPDMILTERS="$SMTPDMILTERS, ${POSTFIX_SMTPD_MILTERS}" + # Are there any extra smtpd milters? If so, write 'em. + if [ -n "${POSTFIX_SMTPD_MILTERS}" ]; then + if [ "$SMTPDMILTERS" = "" ]; then + SMTPDMILTERS="${POSTFIX_SMTPD_MILTERS}" + else + SMTPDMILTERS="$SMTPDMILTERS, ${POSTFIX_SMTPD_MILTERS}" + fi fi - fi - # Write milters - if [ "$SMTPDMILTERS" != "" ]; then - echo "milter_command_timeout = 300s" - echo "smtpd_milters = $SMTPDMILTERS" - fi + # Write milters + if [ "$SMTPDMILTERS" != "" ]; then + echo "milter_command_timeout = 300s" + echo "smtpd_milters = $SMTPDMILTERS" + fi - # ========== START postscreen config ========== + # ========== START postscreen config ========== - # http://www.postfix.org/postconf.5.html#message_size_limit - if [ -n "${POSTFIX_MESSAGE_SIZE_LIMIT}" ]; then - echo "message_size_limit = ${POSTFIX_MESSAGE_SIZE_LIMIT}" - fi + # http://www.postfix.org/postconf.5.html#message_size_limit + if [ -n "${POSTFIX_MESSAGE_SIZE_LIMIT}" ]; then + echo "message_size_limit = ${POSTFIX_MESSAGE_SIZE_LIMIT}" + fi - # http://www.postfix.org/postconf.5.html#postscreen_access_list - echo "postscreen_access_list = " + # http://www.postfix.org/postconf.5.html#postscreen_access_list + echo "postscreen_access_list = " echo " permit_mynetworks," echo " cidr:/etc/postfix/postscreen_access.cidr" - # http://www.postfix.org/postconf.5.html#postscreen_blacklist_action - # TODO - once postscreen confirmed working properly, change to drop - echo "postscreen_blacklist_action = ignore" + # http://www.postfix.org/postconf.5.html#postscreen_blacklist_action + # TODO - once postscreen confirmed working properly, change to drop + echo "postscreen_blacklist_action = ignore" - # http://www.postfix.org/postconf.5.html#postscreen_dnsbl_sites - if [ -n "${POSTFIX_DNSBL_SITES}" ]; then - echo "postscreen_dnsbl_sites = ${POSTFIX_DNSBL_SITES}" - echo "postscreen_dnsbl_action = drop" - fi + # http://www.postfix.org/postconf.5.html#postscreen_dnsbl_sites + if [ -n "${POSTFIX_DNSBL_SITES}" ]; then + echo "postscreen_dnsbl_sites = ${POSTFIX_DNSBL_SITES}" + echo "postscreen_dnsbl_action = drop" + fi - # http://www.postfix.org/postconf.5.html#postscreen_dnsbl_threshold - if [ -n "${POSTFIX_DNSBL_THRESHOLD}" ]; then - echo "postscreen_dnsbl_threshold = ${POSTFIX_DNSBL_THRESHOLD}" - fi + # http://www.postfix.org/postconf.5.html#postscreen_dnsbl_threshold + if [ -n "${POSTFIX_DNSBL_THRESHOLD}" ]; then + echo "postscreen_dnsbl_threshold = ${POSTFIX_DNSBL_THRESHOLD}" + fi - # http://www.postfix.org/postconf.5.html#postscreen_dnsbl_reply_map - if [ -f "/etc/postfix/tables/dnsbl_reply.texthash" ]; then - echo "postscreen_dnsbl_reply_map = texthash:/etc/postfix/dnsbl_reply.texthash" - fi + # http://www.postfix.org/postconf.5.html#postscreen_dnsbl_reply_map + if [ -f "/etc/postfix/tables/dnsbl_reply.texthash" ]; then + echo "postscreen_dnsbl_reply_map = texthash:/etc/postfix/dnsbl_reply.texthash" + fi - # http://www.postfix.org/postconf.5.html#postscreen_greet_action - # TODO - once postscreen confirmed working properly, change to drop - echo "postscreen_greet_action = drop" + # http://www.postfix.org/postconf.5.html#postscreen_greet_action + # TODO - once postscreen confirmed working properly, change to drop + echo "postscreen_greet_action = drop" - # ========== END postscreen config ========== -} > "${POSTFIX_MAINCF_FILE}" \ No newline at end of file + # ========== END postscreen config ========== +} >"${POSTFIX_MAINCF_FILE}" diff --git a/rootfs/etc/cont-init.d/13-postfix-generate-ldap_recipient_access.sh b/rootfs/etc/cont-init.d/13-postfix-generate-ldap_recipient_access.sh index de74958..0409fa3 100755 --- a/rootfs/etc/cont-init.d/13-postfix-generate-ldap_recipient_access.sh +++ b/rootfs/etc/cont-init.d/13-postfix-generate-ldap_recipient_access.sh @@ -2,19 +2,19 @@ # shellcheck shell=bash { - echo "" + echo "" - if [ "${ENABLE_LDAP_RECIPIENT_ACCESS}" = "true" ]; then - echo "domain = ${POSTFIX_RELAY_DOMAINS}" - echo "server_host = ${POSTFIX_LDAP_SERVERS}" - echo "version = ${POSTFIX_LDAP_VERSION}" - echo "query_filter = ${POSTFIX_LDAP_QUERY_FILTER}" - echo "search_base = ${POSTFIX_LDAP_SEARCH_BASE}" - echo "bind = yes" - echo "bind_dn = ${POSTFIX_LDAP_BIND_DN}" - echo "bind_pw = ${POSTFIX_LDAP_BIND_PW}" - echo "result_attribute = mail" - echo "result_format = OK" - echo "debuglevel = ${POSTFIX_LDAP_DEBUG_LEVEL}" - fi + if [ "${ENABLE_LDAP_RECIPIENT_ACCESS}" = "true" ]; then + echo "domain = ${POSTFIX_RELAY_DOMAINS}" + echo "server_host = ${POSTFIX_LDAP_SERVERS}" + echo "version = ${POSTFIX_LDAP_VERSION}" + echo "query_filter = ${POSTFIX_LDAP_QUERY_FILTER}" + echo "search_base = ${POSTFIX_LDAP_SEARCH_BASE}" + echo "bind = yes" + echo "bind_dn = ${POSTFIX_LDAP_BIND_DN}" + echo "bind_pw = ${POSTFIX_LDAP_BIND_PW}" + echo "result_attribute = mail" + echo "result_format = OK" + echo "debuglevel = ${POSTFIX_LDAP_DEBUG_LEVEL}" + fi } > "${POSTFIX_LDAP_RECIPIENT_ACCESS_CONF_FILE}" diff --git a/rootfs/etc/cont-init.d/40-postgrey-update_system_whitelist.sh b/rootfs/etc/cont-init.d/40-postgrey-update_system_whitelist.sh index a66e06c..724a92c 100644 --- a/rootfs/etc/cont-init.d/40-postgrey-update_system_whitelist.sh +++ b/rootfs/etc/cont-init.d/40-postgrey-update_system_whitelist.sh @@ -2,5 +2,5 @@ # shellcheck shell=bash if [ "${ENABLE_POSTGREY}" = "true" ]; then - /usr/local/bin/update_postgrey_whitelist + /usr/local/bin/update_postgrey_whitelist fi diff --git a/rootfs/etc/cont-init.d/99-other.sh b/rootfs/etc/cont-init.d/99-other.sh index e5b003f..e145434 100644 --- a/rootfs/etc/cont-init.d/99-other.sh +++ b/rootfs/etc/cont-init.d/99-other.sh @@ -3,5 +3,5 @@ # Add precedence to IPv4 if [ -n "${PREFER_IPV4}" ]; then - echo 'precedence ::ffff:0:0/96 100' >>/etc/gai.conf + echo 'precedence ::ffff:0:0/96 100' >>/etc/gai.conf fi diff --git a/rootfs/usr/local/bin/update_aliases b/rootfs/usr/local/bin/update_aliases index e72e4ed..642e675 100755 --- a/rootfs/usr/local/bin/update_aliases +++ b/rootfs/usr/local/bin/update_aliases @@ -2,17 +2,17 @@ # shellcheck shell=bash { - # Write /etc/aliases - echo "postmaster: ${POSTMASTER_EMAIL}" - echo "root: ${POSTMASTER_EMAIL}" - echo "postfix: ${POSTMASTER_EMAIL}" - echo "clamav: ${POSTMASTER_EMAIL}" + # Write /etc/aliases + echo "postmaster: ${POSTMASTER_EMAIL}" + echo "root: ${POSTMASTER_EMAIL}" + echo "postfix: ${POSTMASTER_EMAIL}" + echo "clamav: ${POSTMASTER_EMAIL}" - # Implement local aliases - if [ -f "/etc/postfix/local_aliases/aliases" ]; then - cat /etc/postfix/local_aliases/aliases - fi -} > /etc/aliases + # Implement local aliases + if [ -f "/etc/postfix/local_aliases/aliases" ]; then + cat /etc/postfix/local_aliases/aliases + fi +} >/etc/aliases # Run newaliases newaliases diff --git a/rootfs/usr/local/bin/update_client_access b/rootfs/usr/local/bin/update_client_access index 5e81eb2..24940c0 100755 --- a/rootfs/usr/local/bin/update_client_access +++ b/rootfs/usr/local/bin/update_client_access @@ -9,13 +9,13 @@ rm "${CLIENT_ACCESS_CIDR_FILE}" > /dev/null 2>&1 touch "${CLIENT_ACCESS_CIDR_FILE}" { - # Import local entries into client_access.cidr - if [ -f "${CLIENT_ACCESS_CIDR_FILE_LOCAL}" ]; then - echo "" - echo "## Entries from ${CLIENT_ACCESS_CIDR_FILE_LOCAL}" - cat "${CLIENT_ACCESS_CIDR_FILE_LOCAL}" - echo "" - fi + # Import local entries into client_access.cidr + if [ -f "${CLIENT_ACCESS_CIDR_FILE_LOCAL}" ]; then + echo "" + echo "## Entries from ${CLIENT_ACCESS_CIDR_FILE_LOCAL}" + cat "${CLIENT_ACCESS_CIDR_FILE_LOCAL}" + echo "" + fi } > "${CLIENT_ACCESS_CIDR_FILE}" # Run postmap diff --git a/rootfs/usr/local/bin/update_dnsbl_reply b/rootfs/usr/local/bin/update_dnsbl_reply index 284ba39..ef3c26e 100755 --- a/rootfs/usr/local/bin/update_dnsbl_reply +++ b/rootfs/usr/local/bin/update_dnsbl_reply @@ -5,24 +5,24 @@ DNSBL_REPLY_TEXTHASH_FILE="/etc/postfix/dnsbl_reply.texthash" DNSBL_REPLY_TEXTHASH_FILE_LOCAL="/etc/postfix/tables/dnsbl_reply.texthash" # Remove existing dnsbl_reply.texthash -rm "${DNSBL_REPLY_TEXTHASH_FILE}" > /dev/null 2>&1 +rm "${DNSBL_REPLY_TEXTHASH_FILE}" >/dev/null 2>&1 touch "${DNSBL_REPLY_TEXTHASH_FILE}" # TODO: add fail2ban file { - # Import local entries into dnsbl_reply.texthash - if [ -f "${DNSBL_REPLY_TEXTHASH_FILE_LOCAL}" ]; then - echo "" - echo "## Entries from ${DNSBL_REPLY_TEXTHASH_FILE_LOCAL}" - cat "${DNSBL_REPLY_TEXTHASH_FILE_LOCAL}" - echo "" - fi -} > "${DNSBL_REPLY_TEXTHASH_FILE}" + # Import local entries into dnsbl_reply.texthash + if [ -f "${DNSBL_REPLY_TEXTHASH_FILE_LOCAL}" ]; then + echo "" + echo "## Entries from ${DNSBL_REPLY_TEXTHASH_FILE_LOCAL}" + cat "${DNSBL_REPLY_TEXTHASH_FILE_LOCAL}" + echo "" + fi +} >"${DNSBL_REPLY_TEXTHASH_FILE}" # Don't need to run postmap over texthash files # If postfix is running, update -if postfix status > /dev/null 2>&1; then - postfix reload +if postfix status >/dev/null 2>&1; then + postfix reload fi diff --git a/rootfs/usr/local/bin/update_header_checks b/rootfs/usr/local/bin/update_header_checks index 574ef19..9d370ae 100755 --- a/rootfs/usr/local/bin/update_header_checks +++ b/rootfs/usr/local/bin/update_header_checks @@ -5,22 +5,22 @@ HEADER_CHECKS_PCRE_FILE="/etc/postfix/header_checks.pcre" HEADER_CHECKS_PCRE_FILE_LOCAL="/etc/postfix/tables/header_checks.pcre" # Remove existing client_access.cidr -rm "${HEADER_CHECKS_PCRE_FILE}" > /dev/null 2>&1 +rm "${HEADER_CHECKS_PCRE_FILE}" >/dev/null 2>&1 touch "${HEADER_CHECKS_PCRE_FILE}" { - # Import local entries into client_access.cidr - if [ -f "${HEADER_CHECKS_PCRE_FILE_LOCAL}" ]; then - echo "" - echo "## Entries from ${HEADER_CHECKS_PCRE_FILE_LOCAL}" - cat "${HEADER_CHECKS_PCRE_FILE_LOCAL}" - echo "" - fi -} > "${HEADER_CHECKS_PCRE_FILE}" + # Import local entries into client_access.cidr + if [ -f "${HEADER_CHECKS_PCRE_FILE_LOCAL}" ]; then + echo "" + echo "## Entries from ${HEADER_CHECKS_PCRE_FILE_LOCAL}" + cat "${HEADER_CHECKS_PCRE_FILE_LOCAL}" + echo "" + fi +} >"${HEADER_CHECKS_PCRE_FILE}" # No need to run postmap over PCRE files # If postfix is running, update -if postfix status > /dev/null 2>&1; then - postfix reload +if postfix status >/dev/null 2>&1; then + postfix reload fi diff --git a/rootfs/usr/local/bin/update_helo_access b/rootfs/usr/local/bin/update_helo_access index 1ee1ca5..1aea7ca 100755 --- a/rootfs/usr/local/bin/update_helo_access +++ b/rootfs/usr/local/bin/update_helo_access @@ -9,14 +9,14 @@ rm "${HELO_ACCESS_HASH_FILE}" > /dev/null 2>&1 touch "${HELO_ACCESS_HASH_FILE}" { - # Import local entries into helo_access.hash - if [ -f "${HELO_ACCESS_HASH_FILE_LOCAL}" ]; then - echo "" - echo "## Entries from ${HELO_ACCESS_HASH_FILE_LOCAL}" - cat "${HELO_ACCESS_HASH_FILE_LOCAL}" - echo "" - fi -} > "${HELO_ACCESS_HASH_FILE}" + # Import local entries into helo_access.hash + if [ -f "${HELO_ACCESS_HASH_FILE_LOCAL}" ]; then + echo "" + echo "## Entries from ${HELO_ACCESS_HASH_FILE_LOCAL}" + cat "${HELO_ACCESS_HASH_FILE_LOCAL}" + echo "" + fi +} >"${HELO_ACCESS_HASH_FILE}" # Run postmap postmap "${HELO_ACCESS_HASH_FILE}" diff --git a/rootfs/usr/local/bin/update_milter_header_checks b/rootfs/usr/local/bin/update_milter_header_checks index 8e24df4..24e5d02 100755 --- a/rootfs/usr/local/bin/update_milter_header_checks +++ b/rootfs/usr/local/bin/update_milter_header_checks @@ -5,22 +5,22 @@ MILTER_HEADER_CHECKS_PCRE_FILE="/etc/postfix/milter_header_checks.pcre" MILTER_HEADER_CHECKS_PCRE_FILE_LOCAL="/etc/postfix/tables/milter_header_checks.pcre" # Remove existing client_access.cidr -rm "${MILTER_HEADER_CHECKS_PCRE_FILE}" > /dev/null 2>&1 +rm "${MILTER_HEADER_CHECKS_PCRE_FILE}" >/dev/null 2>&1 touch "${MILTER_HEADER_CHECKS_PCRE_FILE}" { - # Import local entries into client_access.cidr - if [ -f "${MILTER_HEADER_CHECKS_PCRE_FILE_LOCAL}" ]; then - echo "" - echo "## Entries from ${MILTER_HEADER_CHECKS_PCRE_FILE_LOCAL}" - cat "${MILTER_HEADER_CHECKS_PCRE_FILE_LOCAL}" - echo "" - fi -} > "${MILTER_HEADER_CHECKS_PCRE_FILE}" + # Import local entries into client_access.cidr + if [ -f "${MILTER_HEADER_CHECKS_PCRE_FILE_LOCAL}" ]; then + echo "" + echo "## Entries from ${MILTER_HEADER_CHECKS_PCRE_FILE_LOCAL}" + cat "${MILTER_HEADER_CHECKS_PCRE_FILE_LOCAL}" + echo "" + fi +} >"${MILTER_HEADER_CHECKS_PCRE_FILE}" # No need to run postmap over PCRE files # If postfix is running, update -if postfix status > /dev/null 2>&1; then - postfix reload +if postfix status >/dev/null 2>&1; then + postfix reload fi diff --git a/rootfs/usr/local/bin/update_postgrey_whitelist b/rootfs/usr/local/bin/update_postgrey_whitelist index 27b6e47..144961c 100755 --- a/rootfs/usr/local/bin/update_postgrey_whitelist +++ b/rootfs/usr/local/bin/update_postgrey_whitelist @@ -3,18 +3,18 @@ if [ "${ENABLE_POSTGREY}" = "true" ]; then - # Fail on error - set -e + # Fail on error + set -e - echo "Updating ${POSTGREY_SYSTEM_WHITELIST_FILE}..." + echo "Updating ${POSTGREY_SYSTEM_WHITELIST_FILE}..." - # Download latest file - curl --location --silent --output "/tmp/postgrey_whitelist_client.new" "${POSTGREY_WHITELIST_URL}" - - # Move downloaded file to final location - mv "/tmp/postgrey_whitelist_client.new" "${POSTGREY_SYSTEM_WHITELIST_FILE}" + # Download latest file + curl --location --silent --output "/tmp/postgrey_whitelist_client.new" "${POSTGREY_WHITELIST_URL}" - # Tell postgrey to reload the whitelist (if running) - pkill -HUP postgrey || true + # Move downloaded file to final location + mv "/tmp/postgrey_whitelist_client.new" "${POSTGREY_SYSTEM_WHITELIST_FILE}" -fi \ No newline at end of file + # Tell postgrey to reload the whitelist (if running) + pkill -HUP postgrey || true + +fi diff --git a/rootfs/usr/local/bin/update_postscreen_access b/rootfs/usr/local/bin/update_postscreen_access index ae585ad..10f0912 100755 --- a/rootfs/usr/local/bin/update_postscreen_access +++ b/rootfs/usr/local/bin/update_postscreen_access @@ -5,19 +5,19 @@ POSTSCREEN_ACCESS_CIDR_FILE="/etc/postfix/postscreen_access.cidr" POSTSCREEN_ACCESS_CIDR_FILE_LOCAL="/etc/postfix/tables/postscreen_access.cidr" # Remove existing client_access.cidr -rm "${POSTSCREEN_ACCESS_CIDR_FILE}" > /dev/null 2>&1 +rm "${POSTSCREEN_ACCESS_CIDR_FILE}" >/dev/null 2>&1 touch "${POSTSCREEN_ACCESS_CIDR_FILE}" # TODO: add fail2ban file { - # Import local entries into client_access.cidr - if [ -f "${POSTSCREEN_ACCESS_CIDR_FILE_LOCAL}" ]; then - echo "" - echo "## Entries from ${POSTSCREEN_ACCESS_CIDR_FILE_LOCAL}" - cat "${POSTSCREEN_ACCESS_CIDR_FILE_LOCAL}" - echo "" - fi -} > "${POSTSCREEN_ACCESS_CIDR_FILE}" + # Import local entries into client_access.cidr + if [ -f "${POSTSCREEN_ACCESS_CIDR_FILE_LOCAL}" ]; then + echo "" + echo "## Entries from ${POSTSCREEN_ACCESS_CIDR_FILE_LOCAL}" + cat "${POSTSCREEN_ACCESS_CIDR_FILE_LOCAL}" + echo "" + fi +} >"${POSTSCREEN_ACCESS_CIDR_FILE}" # Run postmap postmap "${POSTSCREEN_ACCESS_CIDR_FILE}" diff --git a/rootfs/usr/local/bin/update_recipient_access b/rootfs/usr/local/bin/update_recipient_access index b7dd495..15a2a79 100755 --- a/rootfs/usr/local/bin/update_recipient_access +++ b/rootfs/usr/local/bin/update_recipient_access @@ -9,14 +9,14 @@ rm "${RECIPIENT_ACCESS_HASH_FILE}" > /dev/null 2>&1 touch "${RECIPIENT_ACCESS_HASH_FILE}" { - # Import local entries into client_access.cidr - if [ -f "${RECIPIENT_ACCESS_HASH_FILE_LOCAL}" ]; then - echo "" - echo "## Entries from ${RECIPIENT_ACCESS_HASH_FILE_LOCAL}" - cat "${RECIPIENT_ACCESS_HASH_FILE_LOCAL}" - echo "" - fi -} > "${RECIPIENT_ACCESS_HASH_FILE}" + # Import local entries into client_access.cidr + if [ -f "${RECIPIENT_ACCESS_HASH_FILE_LOCAL}" ]; then + echo "" + echo "## Entries from ${RECIPIENT_ACCESS_HASH_FILE_LOCAL}" + cat "${RECIPIENT_ACCESS_HASH_FILE_LOCAL}" + echo "" + fi +} >"${RECIPIENT_ACCESS_HASH_FILE}" # Run postmap postmap "${RECIPIENT_ACCESS_HASH_FILE}" diff --git a/rootfs/usr/local/bin/update_sender_access b/rootfs/usr/local/bin/update_sender_access index a762013..3bba39b 100755 --- a/rootfs/usr/local/bin/update_sender_access +++ b/rootfs/usr/local/bin/update_sender_access @@ -5,18 +5,18 @@ SENDER_ACCESS_HASH_FILE="/etc/postfix/sender_access.hash" SENDER_ACCESS_HASH_FILE_LOCAL="/etc/postfix/tables/sender_access.hash" # Remove existing sender_access.hash -rm "${SENDER_ACCESS_HASH_FILE}" > /dev/null 2>&1 +rm "${SENDER_ACCESS_HASH_FILE}" >/dev/null 2>&1 touch "${SENDER_ACCESS_HASH_FILE}" { - # Import local entries into sender_access.hash - if [ -f "${SENDER_ACCESS_HASH_FILE_LOCAL}" ]; then - echo "" - echo "## Entries from ${SENDER_ACCESS_HASH_FILE_LOCAL}" - cat "${SENDER_ACCESS_HASH_FILE_LOCAL}" - echo "" - fi -} > "${SENDER_ACCESS_HASH_FILE}" + # Import local entries into sender_access.hash + if [ -f "${SENDER_ACCESS_HASH_FILE_LOCAL}" ]; then + echo "" + echo "## Entries from ${SENDER_ACCESS_HASH_FILE_LOCAL}" + cat "${SENDER_ACCESS_HASH_FILE_LOCAL}" + echo "" + fi +} >"${SENDER_ACCESS_HASH_FILE}" # Run postmap postmap "${SENDER_ACCESS_HASH_FILE}" diff --git a/rootfs/usr/local/bin/update_tls_policy b/rootfs/usr/local/bin/update_tls_policy index 4849ec9..7660603 100755 --- a/rootfs/usr/local/bin/update_tls_policy +++ b/rootfs/usr/local/bin/update_tls_policy @@ -5,24 +5,24 @@ SMTP_TLS_POLICY_MAPS_HASH_FILE="/etc/postfix/smtp_tls_policy.hash" SMTP_TLS_POLICY_MAPS_HASH_FILE_LOCAL="/etc/postfix/tables/smtp_tls_policy.hash" # Remove existing transport.hash -rm "${TRANSPORT_MAPS_HASH_FILE}" > /dev/null 2>&1 +rm "${TRANSPORT_MAPS_HASH_FILE}" >/dev/null 2>&1 touch "${TRANSPORT_MAPS_HASH_FILE}" # TODO: add fail2ban file { - # Import local entries into transport.hash - if [ -f "${TRANSPORT_MAPS_HASH_FILE_LOCAL}" ]; then - echo "" - echo "## Entries from ${TRANSPORT_MAPS_HASH_FILE_LOCAL}" - cat "${TRANSPORT_MAPS_HASH_FILE_LOCAL}" - echo "" - fi -} > "${TRANSPORT_MAPS_HASH_FILE}" + # Import local entries into transport.hash + if [ -f "${TRANSPORT_MAPS_HASH_FILE_LOCAL}" ]; then + echo "" + echo "## Entries from ${TRANSPORT_MAPS_HASH_FILE_LOCAL}" + cat "${TRANSPORT_MAPS_HASH_FILE_LOCAL}" + echo "" + fi +} >"${TRANSPORT_MAPS_HASH_FILE}" postmap "${TRANSPORT_MAPS_HASH_FILE}" # If postfix is running, update -if postfix status > /dev/null 2>&1; then - postfix reload +if postfix status >/dev/null 2>&1; then + postfix reload fi diff --git a/rootfs/usr/local/bin/update_transport b/rootfs/usr/local/bin/update_transport index 82c0cc8..adec855 100755 --- a/rootfs/usr/local/bin/update_transport +++ b/rootfs/usr/local/bin/update_transport @@ -5,24 +5,24 @@ TRANSPORT_MAPS_HASH_FILE="/etc/postfix/transport.hash" TRANSPORT_MAPS_HASH_FILE_LOCAL="/etc/postfix/tables/transport.hash" # Remove existing transport.hash -rm "${TRANSPORT_MAPS_HASH_FILE}" > /dev/null 2>&1 +rm "${TRANSPORT_MAPS_HASH_FILE}" >/dev/null 2>&1 touch "${TRANSPORT_MAPS_HASH_FILE}" # TODO: add fail2ban file { - # Import local entries into transport.hash - if [ -f "${TRANSPORT_MAPS_HASH_FILE_LOCAL}" ]; then - echo "" - echo "## Entries from ${TRANSPORT_MAPS_HASH_FILE_LOCAL}" - cat "${TRANSPORT_MAPS_HASH_FILE_LOCAL}" - echo "" - fi -} > "${TRANSPORT_MAPS_HASH_FILE}" + # Import local entries into transport.hash + if [ -f "${TRANSPORT_MAPS_HASH_FILE_LOCAL}" ]; then + echo "" + echo "## Entries from ${TRANSPORT_MAPS_HASH_FILE_LOCAL}" + cat "${TRANSPORT_MAPS_HASH_FILE_LOCAL}" + echo "" + fi +} >"${TRANSPORT_MAPS_HASH_FILE}" postmap "${TRANSPORT_MAPS_HASH_FILE}" # If postfix is running, update -if postfix status > /dev/null 2>&1; then - postfix reload +if postfix status >/dev/null 2>&1; then + postfix reload fi