update_postscreen_whitelist.sh 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. #!/usr/bin/env bash
  2. SCRIPT_DIR="$( cd "$( dirname "$0" )" && pwd )"
  3. WORKING_DIR=${SCRIPT_DIR}/postwhite_tmp
  4. SPFTOOLS_DIR=${WORKING_DIR}/spf-tools
  5. POSTWHITE_DIR=${WORKING_DIR}/postwhite
  6. POSTWHITE_CONF=${POSTWHITE_DIR}/postwhite.conf
  7. COSTOM_HOSTS="web.de gmx.net mail.de freenet.de arcor.de unity-mail.de"
  8. STATIC_HOSTS=(
  9. "194.25.134.0/24 permit # t-online.de"
  10. )
  11. mkdir ${SCRIPT_DIR}/postwhite_tmp
  12. git clone https://github.com/spf-tools/spf-tools.git ${SPFTOOLS_DIR}
  13. git clone https://github.com/stevejenkins/postwhite.git ${POSTWHITE_DIR}
  14. function set_config() {
  15. sudo sed -i "s@^\($1\s*=\s*\).*\$@\1$2@" ${POSTWHITE_CONF}
  16. }
  17. set_config custom_hosts ${COSTOM_HOSTS}
  18. set_config reload_postfix no
  19. set_config postfixpath /.
  20. set_config spftoolspath ${WORKING_DIR}/spf-tools
  21. set_config whitelist .${SCRIPT_DIR}/../data/conf/postfix/postscreen_access.cidr
  22. set_config yahoo_static_hosts ${POSTWHITE_DIR}/yahoo_static_hosts.txt
  23. cd ${POSTWHITE_DIR}
  24. ./postwhite ${POSTWHITE_CONF}
  25. ( IFS=$'\n'; echo "${STATIC_HOSTS[*]}" >> "${SCRIPT_DIR}/../data/conf/postfix/postscreen_access.cidr")
  26. rm -r ${WORKING_DIR}