| http://www.enderunix.org/docs/qmail-install.php#1
Qmail Ldap installation on free bsd. http://www.qmail-ldap.org/wiki/Full_Installation_Guide_-_Basic_Qmail_Installation 1- APACHE+PHP+MYSQL KURULUMU Qmail kurulumundan once hizlica Apache+PHP+MySQL kurulumuyla ise baslayalim. Burada; Apache: WebMail, Vpopmail Yonetim Arabirimi, Qmail Yonetim Arabirimi icin kullanilacaktir denilebilir. Sorunsuz ve basit bir kurulum icin bu uygulamalari ports uzerinden kuracagiz. Web Adresi: http://www.mysql.org Vpopmail’i MySQL destegiyle kurmayi dusunmuyorsaniz, konumuz dahilinde MySQL’e ihtiyacimiz yok; 1.2 adimina gecebilirsiniz. Farkli bir amac icin gerekecek ya da MySQL destekli Vpopmail tercih edecekseniz; devam edin. # cd /usr/ports/databases/mysql50-server # echo ‘mysql_enable=”YES”‘ >> /etc/rc.conf Simdi de MySQL admin parolasini olusturalim: # mysqladmin -u root password yeni_parolaniz Hepsi bukadar MySQL kurulumunu bitirdik. Web Adresi: http://www.apache.org # cd /usr/ports/www/apache22 Simdi Apache acilista baslamasi icin: # echo ‘apache22_enable=”YES”‘ >> /etc/rc.conf Evet, Apache baslatilabilir artik: # /usr/local/sbin/apachectl start Denemek icin bir tarayici acip http://ip_adresiniz yazarak “It works!” yazisini gorebilirsiniz. Apache’yi baslattiginizda “No such file or directory: Failed to enable the ‘httpready’ Accept Filter” hatasi veriyorsa, bunu cozmek icin: # echo ‘accf_http_load=”YES”‘ >> /boot/loader.conf diyebilirsiniz. Web Adresi: http://www.php.net # cd /usr/ports/lang/php5 # cd /usr/ports/lang/php5-extensions Secimi yapip ciktiktan sonra: # make install clean diyoruz, ve gerekli eklentiler de kurulmus oldu. Simdi Apache icin PHP ayarlarini yapalim: # vi /usr/local/etc/apache22/httpd.conf Acilan dosyada LoadModule satirlarindan hemen sonra AddType application/x-httpd-php .php Ardindan da DirectoryIndex index.html kisminda index.html’den sonra index.php ekleyelim. (Buraya Apache’nin index olarak tanimasini istediginiz tum degerleri girebilirsiniz.) # apachectl restart Dosyalarimizi koyacagimiz yer /usr/local/www/apache22/data adresidir. Evet, Apache, PHP ve MySQL kurulumlari ihtiyacimizi karsilayacak haliyle tamamlanmis oldu. Simdi 2. asama olan Qmail Kurulumuna gecebiliriz. 2- QMAIL VE BILESENLERININ KURULUMU Burada Qmail ve beraberinde ihtiyacimizi karsilayacak olan diger cevre uygulamalarinin kurulumunu yapacagiz. 2.1 Gerekli Kullanici ve Gruplarin Olusturulmasi: Qmail icin; # pw groupadd nofiles # pw groupadd vchkpw # mkdir -p /var/qmail Simdi gerekli log dizinlerini yaratalim ve izinleri belirleyelim: # mkdir /var/log/qmail Supervise scriptleri icin gerekli dizinleri olsuturalim ve izinleri belirleyelim: # mkdir /var/qmail/supervise Dosyalarin derli toplu olmasi icin bir downloads dizini icerisine cekelim(Uygulamalarin surumleri guncellenmis olabilir, dosyalari cekmeden once kontrol etmenizde fayda var): # mkdir /downloads # mkdir /downloads/patches # cd /usr/src/qmail/ # echo 211 > /usr/src/qmail/qmail-1.03/conf-split - Qmail-1.03 patchi standart Qmail patchidir. Hata gidermeleri ve bazi temel eklemeler icerir. Bunlarin disinda farkli patchler’de kullanilabilir; ancak biz temel olarak bunlari kullanacagiz. Simdi Patch’leri uygulamaya baslayalim; # cd /usr/src/qmail/qmail-1.03 Web Adresi: http://www.qmail.org mail.domain.com ifadesini size uygun sekilde degistirmeyi unutmayin. # make man Web Adresi: http://cr.yp.to/ucspi-tcp.html # cd /usr/src/qmail/ucspi-tcp-0.88/ Web Adresi: http://cr.yp.to/daemontools.html # cd /package/admin/daemontools-0.76 Simdi svscan servisini baslatmak icin sistemimizi yeniden baslatalim: # reboot Evet, sistemimiz yeniden acildiktan sonra sirada qmail icin yazilmis e-posta liste yazilimi olan ezmlm kurulumu var. 2.9 Ezmlm / Ezmlm-idx Kurulumu: Web Adresi: http://www.ezmlm.org Burada bir hususu belirtmek isterim; yukarida indirdigimiz ezmlm paketi(ezmlm-0.53.tar.gz) standart ezmlm paketidir. Ezmlm-idx paketi(ezmlm-idx-0.443.tar.gz) ise ezmlm uygulamasina cesitli yeni ozellikler getiren bir yama uygulamasidir. Simdi bu yamayla birlikte ezmlm kurulumunu yapalim: # cd /usr/src/qmail/ Web Adresi: http://www.inter7.com Bazi sorunlarla ugrasmamak icin autorespond uygulamasini ports uzerinden kuracagiz. # cd /usr/ports/mail/autorespond/ Web Adresi: http://www.inter7.com/vpopmail Simdi vpopmail’i kuracagiz. Supervise scriptlerimizi Vpopmail odakli yazacagimiz icin oncelikle Vpopmail kurulumunu yapalim, ki mantikli bir gidis sirasi olsun. Vpopmail’i MySQL destegiyle kuracaksaniz, 2.11.1 adimina devam edin. MySQL destegiyle kurmayacaksaniz, 2.11.2 adimina atlayabilirsiniz. Burada; –enable-logging=p parametresiyle, log dosyasina yazilan hatalarla birlikte giris icin denenen parolalari da yaz demis oluyoruz. Diger –enable-logging secenekleri icin help’e bakabilirsiniz. http://sourceforge.net/project/showfiles.php?group_id=85937 adresinden stable olan son surumu istediginiz yansidan indirebilirsiniz. Biz yukarida Mesh Solutions uzerinden vpopmail-5.4.13 surumunu indirmistik. 2.11.1 MySQL destekli Vpopmail Kurulumu: Veritabani adi olarak “vpopmail”; kullanici adi olarak “vpmail”, parola olarak da “parola” giriyoruz. Siz bu degerleri istediginiz gibi duzenlemeyi unutmayin. # mysql -u root -p dedikten sonra parolamizi girelim ve mysql promptuna duselim. Ardindan asagidaki komutlari sirasiyla ugulayalim: mysql> CREATE DATABASE vpopmail; mysql> GRANT select,insert,update,delete,create,drop ON vpopmail.* TO vpmail@localhost IDENTIFIED BY ‘parola‘; mysql> quit # cd /usr/src/qmail/vpopmail-5.4.13 # echo “localhost|0|vpmail|parola|vpopmail” > ~vpopmail/etc/vpopmail.mysql MySQL destekli Vpopmail kurulumu da boylece tamamlanmis oldu. 2.11.2 MySQL destegi olmadan Vpopmail Kurulumu: # cd /usr/src/qmail/vpopmail-5.4.13 /usr/home/vpopmail/bin/ altinda yer alan araclar sayesinde vpopmaili kolayca kullanabilirsiniz. Ancak bunu daha da kolaylastirmak isterseniz bir web arabirim kullanmak isteyebilirsiniz. Bunun icin yine Inter7 urunu olan vqadmin uygulamasini kuracagiz. Web Adresi: http://www.inter7.com/vqadmin # cd /usr/src/qmail/vqadmin-2.3.2 # vi /usr/local/etc/apache22/httpd.conf diyerek dosyayi actiktan sonra Directory tanimlarinin oldugu bolume asagidaki satirlari ekleyin. <Directory “/usr/local/www/apache22/cgi-bin/vqadmin”> # cd /usr/local/www/apache22/cgi-bin/vqadmin/ AuthUserFile /usr/local/apache/conf/vqadmin.passwd satiri mevcut. Biz bunu; AuthUserFile /usr/local/www/apache22/conf/.htpasswd olarak degistirelim ve kaydederek dosyayi kapatalim. Dosyadan ciktiktan sonra; “admin_parolasi” ifadesi giris icin verdigimiz paroladir. Bunu size gore yazmayi unutmayin. # chown www .htaccess Simdi Apache’yi yeniden baslatalim. # apachectl restart Bundan sonra tarayiciyi acarak http://ip_adresiniz/cgi-bin/vqadmin/vqadmin.cgi dediginiz zaman kullanici bilgilerini girerek sayfaya ulasabilirsiniz. NOT: Turkce bir tarayici kullaniyorsaniz muhtemelen karsiniza “invalid language file” hatasi cikacaktir. Bunun sebebi tarayicinin dil onceliklerinde Turkce’nin en ustte yer almasi ve vqadmin’de Turkce dil dosyasinin bulunmamasi. Bunu cozmek icin; # cp /usr/local/www/apache22/cgi-bin/vqadmin/html/en /usr/local/www/apache22/cgi-bin/vqadmin/html/tr Simdi Qmail’i Web arabirimden yonetmemizi saglayan QmailAdmin uygulamasini kurmaya geldi sira. Web Adresi: http://www.inter7.com/qmailadmin QmailAdmin uygulamasini http://sourceforge.net/project/showfiles.php?group_id=6691 adresinden istediginiz yansi araciligiyla indirebilirsiniz. Biz yukarida Mesh Solutions uzerinden qmailadmin-1.2.9 surumunu indirmistik. # cd /usr/src/qmail/qmailadmin-1.2.9 Simdi gerekli calistirma scriptlerini yazalim. Asagidaki dosyalari editorle talep ettikten sonra altlarinda yer alan script satirlarini dosyaya yazarak ilgili dosyayi kaydediyoruz. Not: qmail-pop3d/run ve qmail-smtpd/run scriptlerinde mail.domain.com adreslerini size gore duzenlemeyi unutmayin. 2.14.1 /var/qmail/supervise/qmail-pop3d/run: # vi /var/qmail/supervise/qmail-pop3d/run #!/bin/sh # vi /var/qmail/supervise/qmail-pop3d/log/run #!/bin/sh # vi /var/qmail/supervise/qmail-smtpd/run #!/bin/sh # vi /var/qmail/supervise/qmail-smtpd/log/run #!/bin/sh 2.14.5 /var/qmail/supervise/qmail-send/run: # vi /var/qmail/supervise/qmail-send/run #!/bin/sh # vi /var/qmail/supervise/qmail-send/log/run #!/bin/sh # vi /var/qmail/rc #!/bin/sh # vi /var/qmail/bin/qmailctl #!/bin/sh QMAILDUID=`id -u qmaild` case “$1″ in exit 0 # chmod 755 /var/qmail/rc /var/qmail/bin/qmailctl 2.15 Qmail Icin Son Ayarlarin Uygulanmasi: # echo ./Maildir > /var/qmail/control/defaultdelivery # qmailctl stop Relay ayarini yapalim: # echo ‘127.:allow,RELAYCLIENT=”"‘ >> /etc/tcp.smtp Ayari aktif ettirelim: # qmailctl cdb Simdi de gerekli alias ayarlarini yapalim: Burada eposta_hesabi kismina ana kullanici diyebilecegimiz hesabi yazmaniz yeterli(ornegin sistem yoneticisi olarak kendi adresiniz(hakan)). Burada tanimlanan aliaslar sayesinde; ornegin root hesabina gelen mailler .qamil-root dosyasina yazdigimiz hesaba yonlendirilecektir. # echo eposta_hesabi > /var/qmail/alias/.qmail-root 2.16 Sendmail’in Kaldirilmasi: # killall sendmail # vi /etc/rc.conf sendmail_enable=”NO” Daha sonra qmail’in sendmailini sistemde ilgili yere sembolik link olarak koyalim: # ln -s /var/qmail/bin/sendmail /usr/lib/sendmail # qmailctl start Simdi icerik filtreleyici olarak qSheff(beraberinde antivirus olarak clamav), posta almak icin alternatif protokol olan IMAP ve maillerimize ulasmak icin WebMail kurulumunu gerceklestirecegiz. Web Adresi: http://www.clamav.net http://www.clamav.net/stable.php#pagestart adresinden son stable surumu indirebilirsiniz. Biz yukarida Mesh Solutions uzerinden 0.88.2 surumunu indirdik. # cd /usr/src/qmail/clamav-0.88.2 Kurulum tamamdir, simdi clamd.conf ayarlarini yapalim: # vi /usr/local/etc/clamd.conf Example satirinin basina # ekleyerek yorum satiri yapalim. Yoksa clamd.conf ornek kabul edilecek ve gecersiz kalacaktir. Sirada clamav’nin virus tabanini guncellemek icin kullanacagimiz freshclam uygulamasini yapilandirmaya geldi: # vi /usr/local/etc/freshclam.conf Example satirinin basina # karakterini ekleyelim. Simdi log dizinimizi yaratalim ve izinlerini ayarlayalim: # mkdir /var/log/clamav Sira clamd icin scriptimizi yazmaya geldi: # vi /usr/local/etc/rc.d/clamd.sh #!/bin/sh FOO_BIN=/usr/local/sbin/clamd case “$1″ in ;; ;; ;; Dosyayi kaydedip ciktiktan sonra; # chmod 755 /usr/local/etc/rc.d/clamd.sh FreshClam kullanimi da oldukca basit; # /usr/local/bin/freshclam -l /var/log/clamav/clam-update.log satiriyla gerekli guncellemeleri yapiyoruz. Ilgili guncellemenin loglarini da -l parametresi ile /var/log/clamav/clam-update.log dosyasina yazdirmis oluyoruz. Bunu cron’a ekleyerek surekliligi saglanabilir. Ornegin her 6 saatte bir calistirmak icin; # crontab -e 00 */6 * * * /usr/local/bin/freshclam –quiet -l /var/log/clamav/clam-update.log satirini eklememiz yeterlidir. (Burada –quiet parametresi sayesinde log dosyasina yanlizca hatalar yazilacaktir). Web Adresi: http://www.pldaniels.com/ripmime Ripmime, qSheff icin gerekli bir uygulama. Bu uygulama sayesinde mail baslik, govde, eklenti vs seklinde parcalara ayrilabiliyor. # cd /usr/src/qmail/ripmime-1.4.0.6 Web Adresi: http://www.enderunix.org/qsheff Sirada qSheff kurulumu var. qSheff cok guzel bir icerik filtreleyici ve antivirus tetikleyici olarak kullanilabiliyor. Hatta istersek icerik filtreleyici olarak harici bir uygulamayi da kullanabiliriz(buna deginecegiz). # cd /usr/src/qmail/qsheff-II-2.1-r2 –enable-backup; Tum mail trafiginin bir yedeginin alinmasini saglar. Yedeklere /var/qsheff/backup/ altindan ulasabilirsiniz. SPAM ve VIRUS taglarini isterseniz kullanmayabilirsiniz. Bu durumda SPAM ya da VIRUS icerdigi tespit edilen mailler kullaniciya iletilmeyecektir(fakat kurulumdan sonra qsheff.conf dosyasindan karantinayi aktif ederseniz, bu tip mailler karantinada toplanacaktir). Kararinizi simdi vermelisiniz, kurulumdan sonra tekrar kurmadan bu taglarin durumu degistirilemez. qSheff ile ilgili kullanabileceginiz diger ozellikler ve daha fazla bilgi icin http://www.enderunix.org/qsheff adresine bakabilirsiniz. Simdi QMAILQUEUE ile derledigimiz qSheff’imizi Qmail’de kullanabilmek icin /etc/tcp.smtp dosyamizi ayarlayalim: # echo ‘:allow,QMAILQUEUE=”/var/qmail/bin/qmail-qsheff”‘ >> /etc/tcp.smtp Web Adresi: http://spamassassin.apache.org qSheff ile yolunuza devam etmek isteyebilirsiniz; bu durumda 2.21 bolumune gecin. Spamassassin kurmak istiyorsaniz devam edin. Spamassassin, guclu bir icerik filtreleyici. Biz de burada bu gucten faydalanmak icin qSheff ile birlikte nasil kullanacagimiza deginecegiz. Genel manada Spamassassin, bir mailin taranarak kriterler sonucunda degerlendirilmesini ve buna gore not almasini saglar. Yani bu ne demek; Bir mail kuyruga girdiginde SpamAssassin bunu alir ve icerigini tarar, ornegin mailde bir ifadenin fazlaca tekrarlanmasi varsa(birsuru free yaziyorsa mesela) bu bir spam ihtimali tasir ve SpamAssassin +1 verir. Mailde konu yoksa SpamAssassin bu da spam olabilir der ve +1 daha ekler, mailde gonderici kisimlari supheliyse bir +1 daha ekler vs… Bu sekilde en sonunda atiyorum bir mail icin SpamAssassin tarafindan verilmis 6 puan olsun. Biz SpamAssassin’in configurasyon dosyasinda SCORE tanimini 5.0 yaptiysak bu mail spam olarak kabul edilir. Simdi Spamassassin kurulumunu yapalim: # cd /usr/ports/mail/p5-Mail-SpamAssassin # cd /usr/local/etc/mail/spamassassin rewrite_header Subject *****SPAM***** satiri spam olarak tespit edilen maillerin basligina *****SPAM***** ifadesinin eklenmeini saglar. Bunu aktif etmek icin satirin basindaki # ifadesini silelim ve *****SPAM***** ifadesini {SPAM} olarak degistirelim(bunun sebebini bolumun sonunda aciklayacagiz). required_score ifadesi de az once bahsettigimiz gibi, bir mailin kac puanla spam olacagini belirtir. report_safe ifadesi de etiketlenen maillere davranis bicimini belirler. Misal bunu 1 yaparsak SPAM olan maillerle ilgili SpamAssassin tarafindan uretilen rapor maille beraber kullaniciya iletilirken, mailin orjinali de eklenti olarak iletilir(.eml formatinda). 2 yaparsak da yine raporla beraber mailin orjinali text formatinda kullaniciya iletilir. 0 olmasi durumunda ise mail orjinal sekliyle kullaniciya iletilir, ve rapor eklenmez. Dosyada daha detayli ayarlar yapmak da mumkun; razor, pyzor, dcc vs. kullanmak da mumkun. Ornegin spam mesajlarin body kismina bir bildiri eklemek istersek local.cf dosyasina; clear_report_template report ————————————————————————– Simdi qSheff ile birlikte nasil kullanacagimiza bakalim: # vi /var/qmail/bin/qmail-sa dosyasina asagidaki satirlari yazip kaydedelim; #!/bin/sh /usr/local/bin/spamc | /var/qmail/bin/qmail-qsheff # chmod 755 /var/qmail/bin/qmail-sa Simdi de /etc/tcp.smtp dosyamizi duzenleyelim: # vi /etc/tcp.smtp Burada yer alan :allow,QMAILQUEUE=”/var/qmail/bin/qmail-qsheff” ifadesini :allow,QMAILQUEUE=”/var/qmail/bin/qmail-sa” olarak degistirelim ve dosyayi kaydederek cikalim. Servislerimizi baslatalim: # qmailctl cdb # vi /usr/local/etc/qsheff-II/qsheff.rules Dosyaya, h:(Subject: {SPAM}) satirini eklememiz yeterli, boylece SpamAssassin tarafindan {SPAM} ifadesiyle isaretlenen mailler qSheff tarafindan da spam olarak nitelendirilecek(dogal olarak log dosyasina da bu sekilde giris yapacak). qSheff log dosyasini incelerken de rule olarak {SPAM} gordugumuz satirlarin SpamAssassin tarafindan tespit edildigini anlayabiliriz. Simdi SpamAssassin’i baslatalim; oncelikle spamd enable edelim: # echo ’spamd_enable=”YES”‘ >> /etc/rc.conf Ve baslatalim: # /usr/local/etc/rc.d/sa-spamd.sh start Hatirlarsaniz yukarida SpamAssassin ayarlarinda basliga {SPAM} ekle demistik ve sebebini aciklayacagimizi soylemistik. Bunun sebebi qSheff’in de {SPAM} tagini eklemesidir(tabiki qSheff’i derlemeden once kaynak kodda degisiklik yaparak bunu da degistirebiliriz, ama buna gerek yok acikcasi). Boylelikle qSheff baslikta SpamAssassin tarafindan eklenen {SPAM} tagini gordugunde birdaha ekleme yapmayacaktir. Biz SpamAssassin ayarlarinda eklenecek ifadeyi *****SPAM***** olarak biraksaydik, SpamAssassin spam olarak nitelendirdigi bir maile *****SPAM***** ifadesini ekleyecek, ardindan da qSheff’e girdigimiz rule sebebiyle qSheff’de {SPAM} ifadesini ekleyecekti. Yani sonucta mail kullaniciya “{SPAM} *****SPAM***** Mailin konusu” seklinde iletilecekti. Tabi bu durum hem gereksiz, hem de cirkin bir goruntu olusturuyor. 2.21 Courier-Authlib Kurulumu: Web Adresi: http://www.courier-mta.org/authlib Webmail gibi uygulamalarda kimlik dogrulamasi yapmak icin authlib kutuphanesini kurmamiz gerekiyor; ayrica Courier-Imap kurabilmek icin de kurulmasi sart. # cd /usr/src/qmail/courier-authlib-0.58 # vi /usr/local/etc/rc.d/authdaemond.sh #!/bin/sh # chmod +x /usr/local/etc/rc.d/authdaemond.sh Ayrica /etc/rc.local dosyasina /usr/local/sbin/authdaemond start satirini ekleyerek de baslangici saglayabilirsiniz. Evet, hepsi bu kadar. Buraya kadar POP ve SMTP hizmeti veren, calisir bir MTA elde etmis olduk. Sirada istege/ihtiyaca bagli bir kurulum daha var. IMAP server kurmak isterseniz yaziya devam edebilirsiniz, kurmayacaksaniz WebMail kurulumuna gecebilirsiniz. Fakat burada tercih ettiginiz webmail uygulamasi SquirrelMail olacaksa IMAP’in gerekli oldugunu hatirlatmak gerekir. Web Adresi: http://www.courier-mta.org/imap Sirada IMAP sunucumuzun kurulumu var: # cd /usr/src/qmail/courier-imap-4.1.1 Burada, Courier-Imap kurduysaniz SquirrelMail kurulumuna gecebilirsiniz. Tabi isterseniz SqWebmail’i de kullanabilirsiniz, fakat bu durumda ben SquirrelMail’i oneririm. Courier-Imap kurmadiysaniz, SqWebmail ile devam edebilirsiniz. Web Adresi: http://www.courier-mta.org/sqwebmail Bir cgi ugulamasi olan SqWebMail, komplike istekleriniz olmadikca ihtiyaci rahatlikla karsilayan bir uygulamadir. SqWebMail, IMAP server kullanmaz, maillere direk erisim saglar. O nedenle IMAP server kurmadiysaniz tercihiniz bu olmalidir. Oncelikle PCRE(Perl Compatible Regular Expressions) kurmamiz gerekiyor. # cd /usr/src/qmail/pcre-6.3 # cd /usr/src/qmail/sqwebmail-5.1.2 # echo ‘/usr/lib/sqwebmail/libexec/sqwebmaild.rc start’ >> /etc/rc.local SqWebMail ile ilgili gerekebilecek dosyalara; /usr/lib/sqwebmail/ altindan ulasabilirsiniz. Hepsi bu kadar, http://ip_adresiniz/cgi-bin/sqwebmail diyerek SqWebMail’e ulasabilirsiniz. Web Adresi: http://www.squirrelmail.org SquirrelMail, PHP ile yazilmis, gelismis ozelliklere sahip, oldukca hizli ve plugin destegiyle hem kolay kurulum hem de oldukca detayli ek secenekler sunmaktadir. Yukarida squirrelmail’i indirmistik, simdi onu gerekli sekilde acalim ve ayarlarini yapalim. # cd /usr/src/qmail/squirrelmail-1.4.6 2. Server Settings altinda yer alan ayarlari yapmamiz sart. Burada; Daha sonra A’ya basarak IMAP ayarlarina girin ve burada da; 6. secenek olan Authentication type olarak login kalsin. Simdi de, B’ye basarak SMTP ayarlarina girin. Burada da; 7. secenek olan SMTP Authentication ifadesinin degerini login yapin. |
qmail installation on FreeBsd
Leave a Comment
Previous Post
« qmail installation made easy… Next Post
Plesk tips and fixes. »
« qmail installation made easy… Next Post
Plesk tips and fixes. »