Hits : 4727

Dovecot Mail Server :: Mini How To 


Contents


Dovecot


http://dovecot.org

http://wiki.dovecot.org

http://wiki.dovecot.org/MainConfig

http://www.linux-mail.info/mbo[..]ail-storage-formats/[link1]

top

Installation

Dovecot 1.0.15


wget -c http://dovecot.org/releases/1.0/dovecot-1.0.15.tar.gz
tar zxfv dovecot-1.0.15.tar.gz
cd dovecot
./configure --enable-header-install
make 
make install


Θέλοντας να βελτιώσω την απόδοση του dovecot έχω τρέξει το εξής :

#!/bin/bash
 ./configure \
	--with-notify=inotify \
	--with-ioloop=epoll \
	--with-mem-align=32 \
	--disable-ipv6 \
	--enable-header-install

Dovecot Sieve Plugin 1.0.3


wget -c http://dovecot.org/releases/sieve/dovecot-sieve-1.0.3.tar.gz
tar zxfv dovecot-sieve-1.0.3.tar.gz
cd dovecot-sieve-1.0.3
./configure --with-dovecot=/usr/local/lib/dovecot
make
make install


top

Configuration

dovecot.conf


/usr/local/etc/dovecot.conf

Formatter "highlight/html" not found

top

dovecot.passwd


Σύμφωνα με το παραπάνω configuration file η αυθεντικοποίηση των χρηστών γίνεται μέσα από το αρχείο dovecot.passwd
Όπως υποδηλώνει και το όνομα του αρχείου, η λειτουργικότητά του είναι παρόμοια με το passwd αρχείο ενός linux συστήματος.

Η σύνταξή είναι είναι της παρακάτω μορφής:

username:password:uid:gid:(gecos):home:(shell):extra_fields


/usr/local/etc/dovecot.passdb

ebal:{PLAIN}test:1001:1001:Evaggelos Balaskas
ebal2:{PLAIN}test:1001:1001:Evaggelos Balaskas

Encrypted Passwords


Εάν επιθυμούμε να προσθέσουμε μεγαλύτερη ασφάλεια στο παραπάνω αρχείο τότε χρειάζεται
να χρησιμοποιήσουμε την εντολή dovecotpw. Παράδειγμα χρήσης :

$ dovecotpw -p test -s MD5-CRYPT
{MD5-CRYPT}$1$5LH9m/w2$PhkXZLzBzSEQu0pWLwuO./


Και έτσι το παραπάνω αρχείο γίνεται ως εξής:

ebal:{MD5-CRYPT}$1$5LH9m/w2$PhkXZLzBzSEQu0pWLwuO./:1001:1001:Evaggelos Balaskas
ebal2:{MD5-CRYPT}$1$5LH9m/w2$PhkXZLzBzSEQu0pWLwuO./:1001:1001:Evaggelos Balaskas

Allow Login – Network Security


Μία από τις δυνατότητες του dovecot είναι να μπορεί να επιτρέπει μόνο από συγκεκριμένες IPs ή
από συγκεκριμένα δίκτυα. Με αυτόν τον τρόπο αυξάνεται η ασφάλεια στον mail server από συνδέσεις
μη εγκεκριμμένες ή από την δυνατότητα παράκαμψης μη-ασφαλών συνθηματικών. Η δυνατότητα αυτή
μας δίνεται κάνοντας χρήση ενός extra field στο αρχείο από το οποίο γίνεται η αυθεντικοποίηση των χρηστών.
Το μήνυμα λάθους που εμφανίζει είναι το ίδιο με το να δώσει κανείς λάθος συνθηματικό.

Το extra field ονομάζεται allow_nets και ένα τυπικό παράδειγμα είναι το εξής:

ebal:{MD5-CRYPT}$1$5LH9m/w2$PhkXZLzBzSEQu0pWLwuO./:1001:1001:Evaggelos Balaskas allow_nets=127.0.0.1,10.10.10.0/24
ebal2:{MD5-CRYPT}$1$5LH9m/w2$PhkXZLzBzSEQu0pWLwuO./:1001:1001:Evaggelos Balaskas allow_nets=127.0.0.1,10.10.20.0/24


Περισσότερα εδώ[link2]

top

Mailbox Formats


Το παραπάνω conf έχει ορισμένο το mbox mail format.
Για να δημιουργήσεις έναν λογαριασμό με maildir format χωρίς να τροποποιήσεις το dovecot.conf αρχείο
χρειάζεται να προσθέσει κανείς στο dovecot.passwd και ειδικότερα στα extra fields το εξής:

userdb_mail=maildir:~/Maildir


εάν βέβαια έχει λογαριασμούς κάτω από το path /var/mail/ όπως στο παράδειγμά μας τότε
τo παραπάνω dovecot.passwd μπορεί να γίνει ως εξής:

Formatter "highlight/html" not found

top

Checks


Πριν την εκκίνηση του dovecot για να ελέγξουμε ότι η σύνταξη του configuration μας είναι σωστή :

/usr/local/sbin/dovecot -n


Για να εκκινήσουμε τον mail server μας :

/usr/local/sbin/dovecot


Μετά την εκκίνηση:

tail -f /var/log/dovecot*log


pop3


$ telnet localhost pop3
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK Hi buddy, have an account ?
user ebal
+OK
pass test
+OK Logged in.
^]


top

imap


$ telnet localhost imap
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
* OK Hi buddy, have an account ?
1 login ebal test
1 OK Logged in.
^]


$ telnet localhost imap
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
* OK Hi buddy, have an account ?
1 login ebal test
1 OK Logged in.
 
2 SELECT INBOX 
* FLAGS (\Answered \Flagged \Deleted \Seen \Draft $MDNSent $Label1 NonJunk $Forwarded $Label3 $Label2 $Label4 $Label5 Junk)
* OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft $MDNSent $Label1 NonJunk $Forwarded $Label3 $Label2 $Label4 $Label5 Junk \*)] Flags permitted.
* 8737 EXISTS
* 0 RECENT
* OK [UIDVALIDITY 1174418788] UIDs valid
* OK [UIDNEXT 112330] Predicted next UID 2 OK [READ-WRITE] Select completed.
 
2 LIST "" *
* LIST (\NoInferiors \UnMarked) "/" "draft"
* LIST (\NoInferiors \UnMarked) "/" "Trash"
* LIST (\NoInferiors \UnMarked) "/" "INBOX"
2 OK List completed.


top



Links
[link1] http://www.linux-mail.info/mbox-maildir-mail-storage-formats/

[link2] http://wiki.dovecot.org/PasswordDatabase/ExtraFields/AllowNets