diff --git a/data/Dockerfiles/dovecot/rspamd-pipe-ham b/data/Dockerfiles/dovecot/rspamd-pipe-ham index cca3d8a0..9d961be0 100755 --- a/data/Dockerfiles/dovecot/rspamd-pipe-ham +++ b/data/Dockerfiles/dovecot/rspamd-pipe-ham @@ -1,4 +1,9 @@ #!/bin/bash -/usr/bin/curl -s --data-binary @- --unix-socket /rspamd-sock/rspamd.sock http://rspamd/learnham < /dev/stdin -# Always return 0 to satisfy Dovecot... +FILE=/tmp/mail$$ +cat > $FILE +trap "/bin/rm -f $FILE" 0 1 2 3 13 15 + +cat ${FILE} | /usr/bin/curl -s --data-binary @- --unix-socket /rspamd-sock/rspamd.sock http://rspamd/learnham +cat ${FILE} | /usr/bin/curl -H "Flag: 13" -s --data-binary @- --unix-socket /rspamd-sock/rspamd.sock http://rspamd/fuzzyadd + exit 0 diff --git a/data/Dockerfiles/dovecot/rspamd-pipe-spam b/data/Dockerfiles/dovecot/rspamd-pipe-spam index 3adbc960..3b9e3497 100755 --- a/data/Dockerfiles/dovecot/rspamd-pipe-spam +++ b/data/Dockerfiles/dovecot/rspamd-pipe-spam @@ -1,4 +1,9 @@ #!/bin/bash -/usr/bin/curl -s --data-binary @- --unix-socket /rspamd-sock/rspamd.sock http://rspamd/learnspam < /dev/stdin -# Always return 0 to satisfy Dovecot... +FILE=/tmp/mail$$ +cat > $FILE +trap "/bin/rm -f $FILE" 0 1 2 3 13 15 + +cat ${FILE} | /usr/bin/curl -s --data-binary @- --unix-socket /rspamd-sock/rspamd.sock http://rspamd/learnspam +cat ${FILE} | /usr/bin/curl -H "Flag: 11" -s --data-binary @- --unix-socket /rspamd-sock/rspamd.sock http://rspamd/fuzzyadd + exit 0 diff --git a/data/Dockerfiles/postfix/Dockerfile b/data/Dockerfiles/postfix/Dockerfile index e284025f..9ad52fb2 100644 --- a/data/Dockerfiles/postfix/Dockerfile +++ b/data/Dockerfiles/postfix/Dockerfile @@ -45,6 +45,8 @@ COPY zeyple.conf /etc/zeyple.conf COPY supervisord.conf /etc/supervisor/supervisord.conf COPY syslog-ng.conf /etc/syslog-ng/syslog-ng.conf COPY postfix.sh /opt/postfix.sh +COPY rspamd-pipe-ham /usr/local/bin/rspamd-pipe-ham +COPY rspamd-pipe-spam /usr/local/bin/rspamd-pipe-spam COPY whitelist_forwardinghosts.sh /usr/local/bin/whitelist_forwardinghosts.sh EXPOSE 588 diff --git a/data/Dockerfiles/postfix/postfix.sh b/data/Dockerfiles/postfix/postfix.sh index 01c0d619..2d9671c0 100755 --- a/data/Dockerfiles/postfix/postfix.sh +++ b/data/Dockerfiles/postfix/postfix.sh @@ -4,10 +4,11 @@ trap "postfix stop" EXIT [[ ! -d /opt/postfix/conf/sql/ ]] && mkdir -p /opt/postfix/conf/sql/ -cat /dev/null > /etc/aliases; -echo 'null: /dev/null' >> /etc/aliases; -echo '"ham: "|/usr/bin/curl -s --data-binary @- --unix-socket /rspamd-sock/rspamd.sock http://rspamd/learnham"' >> /etc/aliases; -echo 'spam: "|/usr/bin/curl -s --data-binary @- --unix-socket /rspamd-sock/rspamd.sock http://rspamd/learnspam"' >> /etc/aliases; +cat < /etc/aliases +null: /dev/null +ham: "|/usr/local/bin/rspamd-pipe-ham" +spam: "|/usr/local/bin/rspamd-pipe-spam" +EOF newaliases; cat < /opt/postfix/conf/sql/mysql_relay_recipient_maps.cf diff --git a/data/Dockerfiles/postfix/rspamd-pipe-ham b/data/Dockerfiles/postfix/rspamd-pipe-ham new file mode 100755 index 00000000..9d961be0 --- /dev/null +++ b/data/Dockerfiles/postfix/rspamd-pipe-ham @@ -0,0 +1,9 @@ +#!/bin/bash +FILE=/tmp/mail$$ +cat > $FILE +trap "/bin/rm -f $FILE" 0 1 2 3 13 15 + +cat ${FILE} | /usr/bin/curl -s --data-binary @- --unix-socket /rspamd-sock/rspamd.sock http://rspamd/learnham +cat ${FILE} | /usr/bin/curl -H "Flag: 13" -s --data-binary @- --unix-socket /rspamd-sock/rspamd.sock http://rspamd/fuzzyadd + +exit 0 diff --git a/data/Dockerfiles/postfix/rspamd-pipe-spam b/data/Dockerfiles/postfix/rspamd-pipe-spam new file mode 100755 index 00000000..3b9e3497 --- /dev/null +++ b/data/Dockerfiles/postfix/rspamd-pipe-spam @@ -0,0 +1,9 @@ +#!/bin/bash +FILE=/tmp/mail$$ +cat > $FILE +trap "/bin/rm -f $FILE" 0 1 2 3 13 15 + +cat ${FILE} | /usr/bin/curl -s --data-binary @- --unix-socket /rspamd-sock/rspamd.sock http://rspamd/learnspam +cat ${FILE} | /usr/bin/curl -H "Flag: 11" -s --data-binary @- --unix-socket /rspamd-sock/rspamd.sock http://rspamd/fuzzyadd + +exit 0