Softvérový balík courier
Ďalšie dokumenty
- dobrý zdroj tipov: http://perlstalker.amigo.net/tiki/tiki-index.php?page=Courier+Mail+Server
- mailinglisty – web prehľadávanie:
http://www.mail-archive.com/courier-users@lists.sourceforge.net/
- Sprava uctov
Pridanie novej domény
- pridanie mena domény do súboru:
/etc/courier/hosteddomains/domain-list
- po zmene je nutné zaktualizovať DB domén príkazom:
makehosteddomains
- po zmene je nutné zaktualizovať DB domén príkazom:
- pridanie mena domény do súboru:
/etc/courier/esmtpacceptmailfor.dir/mydestination
- po zmene je nutné zaktualizovať DB domén príkazom:
makeacceptmailfor
- po zmene je nutné zaktualizovať DB domén príkazom:
- nasmerovanie mailu (jedna z dvoch nasledujúcich možností)
- vytvorenie účtu – priamo s menom domény – viď Sprava uctov
- vytvorenie aliasu pre účet, ktorý už je na serveri – viď Sprava uctov
Doménový kôš
- http://perlstalker.amigo.net/tiki/tiki-view_faq.php?faqId=2#q2
- chceme doručovať poštu pre celú doménu vybranému používateľovi
- založiť používateľa
alias@domena1
- do jeho home (/var/maildir/alias@domena1) vložiť súbor
.courie-default
s adresou, komu má byť pošta doručovaná adresa@domena2
Automatické odpovedanie na maily
- zatiaľ môže definovať len root
- do /var/maildir/login_pouzivatela je nutné umiestniť nasledujúci skript do súboru .mailfilter
cc $DEFAULT xfilter "reformail -r -t" /^To:.*/ getaddr($MATCH) =~ /^.*/; MATCH=tolower($MATCH) flock "vacation.lock" { `fgrep -iqx "$MATCH" vacation.lst 2>/dev/null || { echo "$MATCH" >>vacation.lst ; exit 1 ; } ` } if ( $RETURNCODE == 0 ) exit to "| ( cat - ; echo ''; cat vacation.msg) | $SENDMAIL"
- do súboru vacation.msg sa umiestni text správy
- súbory musia byť vlastnené tým, kým má courier nadefinované v userdb (napr. mail)
- súbory nesmú mať právo pre skupiny a ostatných
- ak dorazí mail, skript automaticky odpovie správou zo súboru vacation.msg a zaradí odosielateľa do zoznamu adries, ktorým už nemá byť e-mail s oznámením doručovaný
- každému teda príde práve jedna upomienka, pri poslaní mailu
- čo je ochrana proti zacykleniu mailov v prípade, že by aj odosielateľ mal nastavený vacation
- zdroj: http://www.courier-mta.org/?maildropex.html
Rušenie pošty zo zásobníka
Najkôr je nutné zistiť identifikátor, mailu, ktorý ma byť zrušený. To je možné zistiť príkazom: mailq
Samotné odstránenie pošty prebieha príkazom: cancelmsg
Príklad:
cancelmsg 00042B8F.421E65B3.00003904
Kompletni odstraneni posty pro nejaku domenu príkazom: courier-delete-tomsg.sh domena
Kompletni odstraneni posty od odesilatele príkazom: courier-deletemsg.sh odosielatel
Príklad:
courier-delete-tomsg.sh xuite.net
Znovu rozoslanie pošty, ktorá uviazla v zásobníku
courier flush
Zmena adries, odkiaľ sú maily prijímané na doručenie
V súbore /etc/courier/smtpaccess sú definované IP rozsahy, odkiaľ je pošta akceptovaná. Po akejkoľvek zmene je nutné zavolať nasledujúci príkaz, inak sa zmena neprejaví:
makesmtpaccess
Relay – preposielanie domény, ktorá nehostuje na serveri
- esmtpacceptmailfor.dir/domena
- vyšpecifikovať danú doménu
- zadať: makeacceptmailfor
- do /etc/courier/esmtproutes pridať
domena:[ip servera] Napr.: test.cz:[177.222.111.1]
Relay – preposielanie pošty na nadradený server
- v súbore
/etc/courier/esmtproutes
je možné špecifikovať servery, ktoré sa starajú o preposielanie pošty, pre jenodtlivé domény - úplný relay je možné zabezpečiť pomocou
:[82.113.57.2]
Nastavenie maximálnej veľkosti akceptovaného mailu
V /etc/courier/esmtpd je nutné nastaviť premennú SIZELIMIT na potrebnú hodnotu, ak nie je špecifikovaná, považuje sa za maximum 10MB
SIZELIMIT=10485760
Záznam dialogu mail serverov – ladenie komunikácie
V /etc/courier/esmtpd je nutné nastaviť premennú ESMTP_LOG_DIALOG na hodnotu 1
Courier – IMAP – SSL – certifikát
Návod na vygenerovanie príslušného certifikácu pre courier-imap-ssl
- zmodifikovať /etc/courier/imapd.cnf
[ req_dn ] C=SK ST=Slovakia L=Moje_mesto O=domenka.net OU=domenka.net CN=mail.domenka.net emailAddress=ca@domenka.net
- zmazať starý certifikát
rm /usr/lib/courier/imapd.pem
- vygenerovať nový certifikát
mkimapdcert cp /usr/lib/courier/imapd.pem /etc/courier/
- reštartnúť démonka
/etc/init.d/courier-imap-ssl restart
Courier – ostatné certifikáty
ESMTP-SSL:
rm /usr/lib/courier/esmtpd.pem mkesmtpdcert cp /usr/lib/courier/esmtpd.pem /etc/courier/ /etc/init.d/courier-mta-ssl restart
POP-SSL:
rm /usr/lib/courier/pop3d.pem mkpop3dcert cp /usr/lib/courier/pop3d.pem /etc/courier/ /etc/init.d/courier-pop-ssl restart
Migrácia z Mboxov na Maildir (courier)
- stiahnuť skript „Simple but Perfect“ mbox to Maildir converter (http://perfectmaildir.home-dn.net/perfect_maildir/)
wget http://perfectmaildir.home-dn.net/perfect_maildir/perfect_maildir.pl chmod u+x perfect_maildir.pl
- skonvertovať príslušný mailbox do maildiru
perfect_maildir.pl ~/Maildir < mbox
Clamav – Antivírusová kontrola
Nasledujúcim skriptom je možné nahodiť antivírusovú kontrolu pre Couriera
cd /etc/courier/filters wget http://karmak.org/2004/courier-clamav/clamav-perlfilter echo "/etc/courier/filters/clamav-perlfilter" >perlfilter echo "all" >perlfilter-mode filterctl start perlfilter /etc/init.d/courier-mta restart /etc/init.d/courier-mta-ssl restart
Maildrop – definícia cesty mailu
V /etc/courier/maildroprc je možné nastaviť, akými kontrolami mail prejde. Zmena sa prejavuje okamžite po uložení súboru.
# Global maildrop filter file import RECIPIENT # Spam Filter xfilter "/usr/bin/spamc" if (/^X-Spam-Status: Yes/) { to "/var/maildir/spam/Maildir" } # Sanitizer #xfilter "/usr/bin/sanitizer /etc/borax/sanitizer/sanitizer.conf" DEFAULT="$HOME/Maildir"
Ochrana proti spamu
- zamietnutie prijímania mailov z neexistujúcich domén
- ‚/etc/courier/bofh‘:
opt BOFHSPFHELO=pass,none,softfail,neutral,unknown
- ‚/etc/courier/bofh‘:
- zamietnutie prijímania mailov zo zakázaných domén (načítavané z banlistu na internete)
- ‚/etc/courier/esmtpd‘:
BLACKLISTS="-block=list.dsbl.org,BLOCK -block=sbl.spamhaus.org,BLOCK -block=blackholes.mail-abuse.org,BLOCK -block=relays.mail-abuse.org,BLOCK"
- ‚/etc/courier/esmtpd‘:
Odstraňovanie mailov
Odstránenie mailov od určitého odosielateľa
- je možné použiť nástroj
courier-deletemsg.sh
(nachádza sa vrámci balíka ServerAdmin Tools) - zápis:
courier-deletemsg.sh emailadresa
- je možné špecifikovať len časť adresy, v tom prípade budú odstránené všetky adresy, ktoré v sebe obsahujú zadaný reťazec
Odstránenie gigantického množstva mailov
- pozor! používať veľmi opatrne! nepatrí do rúk deťom:
cd /var/lib/courier/msgs; for l in `ls -d -1 *`; do cd $l; for i in `grep www-data * | sed -e 's/:.*//g'`; do rm $i; done; cd /var/lib/courier/msgs ;done
- skript bol požitý pri odstraňovaní následkov útoku, kedy vzniklo na serveri 27 000 mailov s odosielateľom www-data (pravdepodobne diera v nejakej PHP aplikacii)
Odstranění uživatele
Smazání uživatele couriera
- odstranis radek s jeho jmenym zaznamem ze souboru:
/etc/courier/userdb/script
- potom zadas prikaz na aktualizaci DB:
makeuserdb
- Jeho domovsky mailovy adresar ve:
/var/maildir
musis odstranit rucne.
Poznamka:
- mail server povazuje adresy s velkymi pismenami za rovnake ako adresy s malymi pismenami. Tj. im_ziSka == im_ziska (to ja len tak pre informaciu 🙂
Otestovani komunikace serveru na postu
- overeni nastaveni DNS dig -t MX lasquadra.cz @147.251.48.1 (dig -t MX(mail) jakoudomenu @ujakehoserveruoveruji
- pripojime se telnetem
::
‚telnet mail.lasquadra.cz 25
Trying 82.113.57.2…
Connected to mail.lasquadra.cz.
Escape character is ^]
.
- ns.blucina.net ESMTP
helo ns.blucina.net
- ns.blucina.net Ok.
mail from:<kubes@blucina.net>
- Ok.
rcpt to:<spravce@lasquadra.cz>
- Ok.
data
- Ok.
To:
From:
Subject:
.
- Ok. 4667F620.00005F3C
quit
- Bye.
Connection closed by foreign host.‘
Chyby komunikace předání emailu a jejich odstranění
Vrací li se email s chybou :
- > STARTTLS
- < 500 couriertls: connect: error:14094410:SSL
- > routines:SSL3_READ_BYTES:sslv3 alert handshake failure
je třeba :
- pridat do /etc/courier/esmtproutes info o tom, ze sa nema sifrovat proti tomu serveru:media4web.cz:/SECURITY=NONEatruhlarstvi.com:/SECURITY=NONE
Chyby outlook a POP3 a jejich odstranění
Zobrazuje li se chyba :
- > Filesystem notification error blabla errors with the FAM/Gamin library
je třeba :
- doinstalovat do serveru Gamin (urobi admin sluzby):
apt-get install gamin
Chyby outlook POP3
vyprsel casovy limit spojeni – nestahuje postu :
- > vyprsel casovy limit spojeni
je třeba :
- /etc/courier/pop3d zkontrolovat a navysit mnozstvi povolenych spojeni :
MAXPERIP=20
problem je v tom, ze pokud je vice IP adres za NATem?, vidi server spojeni jako z jednoho stroje a v tomto ten limit je omezi a nepovoli dalsi spojeni, dokud stare nevyexpiruje.