Inhaltsverzeichnis

Gnarwl

Download GNARWL software from http://www.home.unix-ag.org/patrick/index.php?gnarwl and download package named gnarwl-3.3.tgz

Compile GNARWL for LDAP vacations

# tar xzvf gnarwl-3.3.tgz
# cd gnarwl-3.3
# ./configure
# make
# make install
# make perm

Adjust File /usr/local/etc/gnarwl.conf

map_sender $sender
map_receiver $recepient
map_subject $subject
map_field $fullname cn
map_field $deputy mail
server localhost
port 389
scope sub
login cn=admin,dc=example,dc=org
password IveGotASecret
protocol 3
base dc=example,dc=org
queryfilter (|(mail=$recepient)(gosaMailAlternateAddress=$recepient))
result gosaVacationMessage
blockfiles /usr/local/var/lib/gnarwl/block/
umask 0644
blockexpire 0
mta /usr/sbin/sendmail -F $recepient -t $sender
maxreceivers 64
maxheader 512
<del>charset ISO8859-1</del>
charset utf-8
badheaders /usr/local/var/lib/gnarwl/badheaders.db
blacklist /usr/local/var/lib/gnarwl/blacklist.db
forceheader /usr/local/var/lib/gnarwl/header.txt
forcefooter /usr/local/var/lib/gnarwl/footer.txt
recvheader To Cc
loglevel 3


Configuring Postfix in /etc/postfix/master.cf file

Make sure that you have the following lines:

smtps inet n - n - - smtpd
 -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes

submission inet n - n - - smtpd
 -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes -o smtpd_etrn_restrictions=reject

**ACHTUNG an Cyrus anpassen:**
[L] unix - n n - - pipe
 flags=DRhu user=vmail argv=/usr/local/bin/maildrop -w 80 -d ${recipient}

[VL] unix - n n - - pipe
 flags=F user=adminvac argv=/usr/local/bin/fork_vacation.sh $sender $recipient

Create the file /usr/local/bin/fork_vacation.sh

#!/bin/bash

ORIGIN="$1"
DESTINY="$2"

**ACHTUNG an Cyrus anpassen:** /usr/bin/sudo -u vmail /usr/local/bin/maildrop -w 90 -d $DESTINY
/usr/bin/sudo -u gnarwl /usr/local/bin/gnarwl -s $ORIGIN -a $DESTINY

Set permissions to /usr/local/bin/fork_vacation.sh

# chmod 755 /usr/local/bin/fork_vacation.sh

Create user adminvac with sudo for execute the vacation binary

# adduser adminvac
# vi /etc/sudoers
 
adminvac ALL=(ALL) NOPASSWD: ALL



zurÃck