Zarafa: Difference between revisions

From My Mnemonic Rhyme
Jump to navigation Jump to search
>Homaar
No edit summary
 
 
Line 1: Line 1:
== Links ==
== Links ==
*https://tobias-weiss.org/Microsoft-Server-ActiveSync
*
*http://download.zarafa.com/community/final/7.0/7.0.5-31880/
*http://download.zarafa.com/community/final/7.0/7.0.5-31880/
*http://www.zarafa.com/wiki/index.php/Main_Page
*http://www.zarafa.com/wiki/index.php/Main_Page

Latest revision as of 20:00, 20 June 2023

Links

Zarafa und Procmail

Alte links:

Etwas neuere Links:

https://wiki.gentoo.org/wiki/Complete_Virtual_Mail_Server/Linux_vmail_user
groupadd -g 5000 vmail
useradd -m -d /var/vmail -s /bin/false -u 5000 -g vmail vmail
touch /var/log/procmail && chown vmail:vmail /var/log/procmail
chmod g+w /var/log/zarafa/dagent.log
chown root:vmail /var/log/zarafa/dagent.log
chown vmail:vmail /etc/procmailrc

Zudem muss der user vmail als Admin User in den Zarafa Configs eingetragen werden.

zarafa dagent

/usr/bin/zarafa-dagent homaar -P sales

Admin Rechte vergeben

zarafa-admin -u username -a 1

Gesamtlizenzen

/etc/init.d/zarafa-licensed restart >/dev/null && tail -n3 /var/log/zarafa/licensed.log | grep "License"

sa-learn

#!/usr/bin/perl
#
# Process mail from imap server shared folder 'Public folders/LearnAsSpam' & 'Public folders/LearnAsHam' through spamassassin sa-learn
# dmz@dmzs.com - March 19, 2004
# http://www.dmzs.com/tools/files/spam.phtml
# http://www.dmzs.com/tools/files/spam/DMZS-sa-learn.pl [modified for SMEServer]
# LGPL

use Mail::IMAPClient;

my $debug=0;
my $salearn;

# # # # # # # # # # EDIT USER AND PASSWORD  # # # # # # # # # #

my $imap = Mail::IMAPClient->new( Server=> '127.0.0.1:8143',
                                  User => 'SpamAdmin',
                                  Password => 'SpamAdminPassword',
                                  Debug => $debug);

if (!defined($imap)) { die "IMAP Login Failed"; }

# If debugging, print out the total counts for each mailbox
if ($debug) {
 my $spamcount = $imap->message_count('Public folders/LearnAsSpam');
 print $spamcount, " Spam to process\n";

 my $nonspamcount = $imap->message_count('Public folders/LearnAsHam');
 print $nonspamcount, " Notspam to process\n" if $debug;
}

# Process the spam mailbox
$imap->select('Public folders/LearnAsSpam');
my @msgs = $imap->search("ALL");
for (my $i=0;$i <= $#msgs; $i++)
{
 # I put it into a file for processing, doing it into a perl var & piping through sa-learn just didn't seem to work
 $imap->message_to_file("/tmp/salearn",$msgs[$i]);

 # execute sa-learn w/data
 if ($debug) { $salearn = `/usr/bin/sa-learn -D --no-sync  --spam /tmp/salearn`; } 
 else { $salearn = `/usr/bin/sa-learn --no-sync  --spam /tmp/salearn`; }
 print "-------\nSpam: ",$salearn,"\n-------\n" if $debug;

 # delete processed message
 $imap->delete_message($msgs[$i]);
 unlink("/tmp/salearn");
}
$imap->expunge();
$imap->close();

# Process the not-spam mailbox
$imap->select('Public folders/LearnAsHam');
my @msgs = $imap->search("ALL");
for (my $i=0;$i <= $#msgs; $i++)
{
 $imap->message_to_file("/tmp/salearn",$msgs[$i]);
 # execute sa-learn w/data
 if ($debug) { $salearn = `/usr/bin/sa-learn -D --no-sync  --ham /tmp/salearn`; }
 else { $salearn = `/usr/bin/sa-learn --no-sync  --ham /tmp/salearn`; }
 print "-------\nNotSpam: ",$salearn,"\n-------\n" if $debug; 

 # delete processed message
 $imap->delete_message($msgs[$i]);
 unlink("/tmp/salearn");
}
$imap->expunge();
$imap->close();

$imap->logout();

# integrate learned stuff
my $sarebuild = `/usr/bin/sa-learn --sync`;
print "-------\nRebuild: ",$sarebuild,"\n-------\n" if $debug;

User verwalten

zarafa-admin -c   “benutzer” -f “Voller name” -e  “benutzer@example.com” -a 1 -p “Passwort”
zarafa-admin -l

Zarafa sichern und wiederherstellen

MySQL Datenbank
#Backup:
/usr/bin/mysqldump -u $USER --password=$PASSWORD --single-transaction --default-character-set=utf8 $DATABASE -c > $SAVEDIR/$DATABASE-$(date '+%Y%m%d)

#Restore:
mysql -u $USER -p$PASSWORD $DATABASE < /path/to/backupname.sql
#!/bin/bash
DATUM=`date +%Y-%m-%d`
mysqldump --single-transaction -u root -pPASS --all-databases > /mnt/datensicherung/ZARAFA/backupzarafa_$DATUM.sql
find /mnt/datensicherung/ZARAFA/ -iname "backup*" -mtime +7 -delete
df -h | grep datensicherung > /tmp/zarafadasistatus.txt
du /mnt/datensicherung/ZARAFA/* -sh >> /tmp/zarafadasistatus.txt
echo "LATFL - Look at the f*cking logfile!" | mutt -s "Kaiser Zarafa Backup" dasi@smt.de -a /tmp/zarafadasistatus.txt 
/var/lib/zarafa (Attachments)

Per Copy&Past wiederherstellbar

/usr/share/z-push/

/usr/share/z-push/state

Für eine leichtere Migration sollte auch das State Verzeichnis von Z-Push kopiert werden, andernfalls müssen mobile Geräte neu synchronisiert werden.

Benutzer

Sollten die Benutzer aus einer externen Quelle (LDAP/UNIX) bezogen worden sein und hat sich durch die Migration eventuell die UID verändert, so kann über folgende Befehle den ursprünglichen Nutzern ihr Store wieder zugeordnet werden

#Beziehen der Anmelde-Informationen von der Auth Quelle
zarafa-admin --sync

#Anzeige der nicht zugeordneten Stores (mit jeweiliger Store-guid)
zarafa-admin --list-orphans

# Verknüpfen eines nicht zugeordneten Stores (<store-guid>) mit definierten Nutzer
zarafa-admin --hook-store <store-guid> -u <user>
zarafa-admin --hook-store <store-guid> --copyto-public
zarafa-admin --unhook-store <user>

#Anschließend wird für den Nutzer nach wie vor ein nicht zugeordneter Store angezeit, dieser ist aber der leere, neu angelegt Store

Upgrade to zarafa 7

http://doc.zarafa.com/7.0/Administrator_Manual/en-US/html/_performing_the_upgrade_on_debian_based_distributions.html

Fetchmail

#/etc/default/fetchmail
“START_DAEMON” auf yes

Mails auf Server lassen:

#/etc/fetchmailrc
poll pop.example.com protocol pop3 no dns user “user@example.com”
password “geheim”
smtpaddress localhost
fetchall forcecr mda “/usr/bin/zarafa-dagent  user”

Mails komplett abfischen:

#/etc/fetchmailrc
poll pop.example.com protocol pop3 no dns user “user@example.com”
password “geheim”
smtpaddress localhost
fetchall forcecr mda “/usr/bin/zarafa-dagent –folder ‘user@example.com’ -C user”

Tuning