diff --git a/install_opendmarc.sh b/install_opendmarc.sh index d2d91bc..d63800f 100755 --- a/install_opendmarc.sh +++ b/install_opendmarc.sh @@ -780,8 +780,30 @@ if $(grep -q -E "^\s*non_smtpd_milters\s*=\s*.*opendkim.sock" /etc/postfix/main. fi fi else + echo_skipped - warn "Postfix is not adjusted. Complete Postfix configuration (main.cf) manually\!" + warn "non_smtpd_milters is not adjusted. Complete Postfix configuration (main.cf) manually\!" +fi + + +echononl " Set Variable smtpd_milters at '/etc/postfix/main.cf'.." +if $(grep -q -E "^\s*smtpd_milters\s*=\s*.*opendkim.sock" /etc/postfix/main.cf 2> /dev/null) ; then + if $(grep -q -E "^\s*smtpd_milters\s*=\s*.*$(basename "${opendmarc_socket_file}")" /etc/postfix/main.cf); then + echo_skipped + else + perl -i -n -p -e "s&^\s*(smtpd_milters\s*=.*opendkim.sock)&\1,local:/$(basename "${opendmarc_socket_dir}")/$(basename "${opendmarc_socket_file}")&" \ + /etc/postfix/main.cf > $log_file 2>&1 + if [[ $? -eq 0 ]] ; then + echo_ok + postfix_needs_restart=true + else + echo_failed + error "$(cat $log_file)" + fi + fi +else + echo_skipped + warn "smtpd_milters was not adjusted. Complete Postfix configuration (main.cf) manually\!" fi @@ -818,7 +840,7 @@ else # ======= Milter configuration ======= -# OpenDKIM +# OpenDKIM, OpenDMARC milter_default_action = accept