|  |  | 
| EnderUNIX İpucuArkadaşıma gönder , Ana Sayfa[ Postfix ] "Postfix sunucudan gonderilen maillerin qmail sunucuda ayni hesap isimleri ile yedeklenmesi" - Gökhan ALKAN - (2008-09-08 14:38:19) [4580] Bu ipucunda postfix sunucudan gonderilen maillerin qmail sunucuda ayni hesap isimleri ile nasil yedeklenebilecegi anlatilmistir. Postfix sunucuda kullanicilarin "/etc/passwd" dosyasinda tutuldugu ve qmail sunucuda vpopmail + procmail kullanilmistir. Postfix sunucuda domain1, qmail sunucuda ise domain2 adindan domainlerin oldugu varsayilmistir. Oncelikle her 2 sunucuda da ayni kullanici isimlerinin olmasi gerekmektedir. Yani galkan@domain2.com email adresi postfix sunucuda var ise, galkan@domain2.com email adreside qmail sunucuda olmalidir. Bunun icin oncelikle Postfix sunucuda bulunan kullanici isimleri belirlenmeli ve bu dosya diger sunucuya aktarilarak ayni k.adlarina sahip "@domain2" kullanicilari diger sunucuda olusturulmalidir. Postfix sunucuda: ================== # cat /etc/passwd | cut -d ':' -f1 >> passwd # scp passwd user@domain2_ipadresi:/path_to_user Qmail sunucuda: ================== # cat passwd | while read user do /usr/local/vpopmail/bin/vuserinfo $user@domain2.com >/dev/null 2>&1 if [ $? -ne 0 ] then /usr/local/vpopmail/bin/vadduser $user@domain2.com fi done # Postfix sunucudan gonderilen maillerin qmail sunucuya iletimi icin http://ipucu.enderunix.org/view.php?id=1974〈=tr ipucunda bahsedilen "sender_bcc_maps = hash:/etc/postfix/sender_bcc_table" paremetresi "main.cf" icerisine eklenir ve ardindan asagidaki betik calistirilarak her kullanicidan gonderilen maillerin @domain2'de bulunan hesaplara gitmesi saglanmis olur. Postfix Sunucuda: ================== # cat /etc/passwd | cut -d ':' -f1 | while read user do if [ ! `cat /etc/postfix/sender_bcc_table | grep -E "^$login@domain1.com"` ] then echo "$login@domain1.com $login@domain2.com" >> /etc/postfix/sender_bcc_table fi done # domain1'de bulunan kullanicilarin domain2'de ayni hesaplarlar acilmasinin ardindan ornek .qmail-user ve .procmail.user istenilen bir dizinde asagidaki sekilde ve isimde olusturulur. # cd /tmp # cat .qmail-XXXXXX | /usr/bin/procmail -pm /usr/local/vpopmail/domains/domain2/.procmailrc.XXXXXX # # cat .procmailrc.XXXXXX SHELL="/bin/bash" VHOME=`/usr/local/vpopmail/bin/vuserinfo -d $EXT@domain2.com` :0 * ^From.*\ $VHOME/Maildir/.Gonderilen_Mailler/ #Spam mesajlar -> /dev/null :0: * ^X-Spam-Status: YES /dev/null :0: * $VHOME/Maildir/ :0w | /usr/local/vpopmail/bin/vdelivermail " bounce-no-mailbox # Son olarak her kullanici icin gerekli .qmail-user ve .procmail.user dosyalarini olusturmak icin Qmail sunucuda: =============== # cat passwd | while read user do /usr/local/vpopmail/bin/vuserinfo $user@domain2.com >/dev/null 2>&1 if [ $? -eq 0 ] then DIR=`/usr/local/vpopmail/bin/vuserinfo $user@domain2.com | grep -E "^dir:" | awk '{print $2}'` if [ ! -d "$DIR/Maildir/.Gonderilen_Mailler" ] then maildirmake $DIR/Maildir/.Gonderilen_Mailler chown -R vpopmail:vchkpw $DIR/Maildir/.Gonderilen_Mailler echo ".Gonderilen_Mailler" >> $DIR/Maildir/subscriptions chown vpopmail:vchkpw $DIR/Maildir/subscriptions chmod 600 $DIR/Maildir/subscriptions fi fi sed s/XXXXXX/$user/ /tmp/.qmail-XXXXXX > /usr/local/vpopmail/domains/domain2.com/.qmail-$user chown vpopmail:vchkpw /usr/local/vpopmail/domains/domain2.com/.qmail-$user chmod 600 /usr/local/vpopmail/domains/domain2.com/.qmail-$user sed s/XXXXXX/$user/ /tmp/.procmailrc.XXXXXX > /usr/local/vpopmail/domains/domain2.com/.procmailrc.$user chown vpopmail:vchkpw /usr/local/vpopmail/domains/domain2.com/.procmailrc.$user chmod 644 /usr/local/vpopmail/domains/domain2.com/.procmailrc.$user done # Ve son olarak postfix sunucuda asagidaki komut calistirilir. # postmap /etc/postfix/sender_bcc_table Arkadaşıma gönder , Ana Sayfa |  |