Mercurial > dovecot > original-hg > dovecot-1.2
changeset 5441:9d36800df1ae HEAD
Added documentation to doc/wiki/. autogen.sh downloads them from dovecot.org
if they don't exist. Changed wiki links in dovecot-example.conf to point to
the doc/wiki/ directory instead.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Wed, 28 Mar 2007 01:50:53 +0300 |
parents | d9b7957a7255 |
children | 041c4185273e |
files | autogen.sh configure.in doc/Makefile.am doc/USE-WIKI-INSTEAD doc/documentation.txt doc/variables.txt doc/wiki/.cvsignore doc/wiki/Makefile.am.in dovecot-example.conf |
diffstat | 9 files changed, 196 insertions(+), 116 deletions(-) [+] |
line wrap: on
line diff
--- a/autogen.sh Wed Mar 28 00:56:53 2007 +0300 +++ b/autogen.sh Wed Mar 28 01:50:53 2007 +0300 @@ -16,4 +16,17 @@ fi done +if ! test -f doc/wiki/Authentication.txt; then + cd doc + wget http://www.dovecot.org/tmp/wiki-export.tar.gz + tar xzf wiki-export.tar.gz + mv wiki-export/*.txt wiki/ + cd wiki + cp -f Makefile.am.in Makefile.am + echo *.txt | sed 's/ / \\\n /g' >> Makefile.am + cd .. + rm -rf wiki-export wiki-export.tar.gz + cd .. +fi + autoreconf -i
--- a/configure.in Wed Mar 28 00:56:53 2007 +0300 +++ b/configure.in Wed Mar 28 01:50:53 2007 +0300 @@ -1898,6 +1898,7 @@ AC_CONFIG_FILES([ Makefile doc/Makefile +doc/wiki/Makefile src/Makefile src/lib/Makefile src/lib-sql/Makefile
--- a/doc/Makefile.am Wed Mar 28 00:56:53 2007 +0300 +++ b/doc/Makefile.am Wed Mar 28 01:50:53 2007 +0300 @@ -1,3 +1,5 @@ +SUBDIRS = wiki + docdir = $(datadir)/doc/dovecot confdir = $(sysconfdir) @@ -6,10 +8,9 @@ dovecot-sql-example.conf doc_DATA = \ - USE-WIKI-INSTEAD \ auth-protocol.txt \ - securecoding.txt \ - variables.txt + documentation.txt \ + securecoding.txt EXTRA_DIST = \ mkcert.sh \
--- a/doc/USE-WIKI-INSTEAD Wed Mar 28 00:56:53 2007 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,6 +0,0 @@ -All the useful documentation is currently only in Dovecot's wiki: - -http://wiki.dovecot.org/ - -Perhaps some day they'll also be included in this directory as .txt files. -You can speed that up by creating a script which does that.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/documentation.txt Wed Mar 28 01:50:53 2007 +0300 @@ -0,0 +1,142 @@ +The documentation in wiki/ directory has been imported from +http://wiki.dovecot.org/. The actual Wiki may contain more up-to-date +information, so unless this is an old Dovecot release, you may want to use +the Wiki directly. + +Documentation Index +=================== + + * <QuickConfiguration.txt> for people in hurry + * <WhyDoesItNotWork.txt> - Why doesn't Dovecot work? + + 1. Welcome to the Dovecot Wiki + 2. Dovecot Wiki Contents + 3. Generic information about mail servers + 4. A simple Dovecot installation + 5. Full guide to setting up a new Dovecot installation + 6. Examples / Scenarios + 7. Migration from existing systems + 8. Troubleshooting + 9. Tuning + 10. Reference + 11. Misc + +Generic information about mail servers +====================================== + + * Mail protocols: IMAP [http://en.wikipedia.org/wiki/Imap], POP3 + [http://en.wikipedia.org/wiki/Pop3] and SMTP + [http://en.wikipedia.org/wiki/Smtp] + * <Mail delivery agents and Sieve> [MDA.txt] + * <Mailbox formats> [MailboxFormat.txt] + * <User authentication> [Authentication.txt] + * <SASL> [Sasl.txt] + +A simple Dovecot installation +============================= + +It's a good idea to start with a simple Dovecot installation to see that +everything works. After that you can start changing things one at a time, so if +you run into trouble you know immediately where the problem is. + +If you're in a hurry and you already know enough about mail servers, +<QuickConfiguration.txt> may be more helpful to you instead. + + 1. Installing + * <Compiling from sources> [CompilingSource.txt] + * <Installing prebuilt binaries> [PrebuiltBinaries.txt] + 2. <Checking where mail is delivered to> [FindMailLocation.txt] + 3. <Configuring Dovecot> [BasicConfiguration.txt] + 4. <Running Dovecot> [RunningDovecot.txt] + 5. <Logging.txt> + 6. <Testing that everything works> [TestInstallation.txt] + * <Testing POP3 installation> [TestPop3Installation.txt] + 7. <Finishing the test installation> [FinishBasicConfiguration.txt] + +Full guide to setting up a new Dovecot installation +=================================================== + +This guide assumes that you have already managed to run Dovecot successfully, +as described in the "A simple Dovecot installation" guide above. + + * Starting guidelines + * <System users> [SystemUsers.txt] + * <Virtual users> [VirtualUsers.txt] + * <UNIX User IDs used by Dovecot> [UserIds.txt] + * <Authentication configuration> [Authentication.txt] + * <Password databases> [PasswordDatabase.txt] + * <User databases> [UserDatabase.txt] + * <Multiple authentication databases> + [Authentication.MultipleDatabases.txt] + * <Kerberos> [Authentication.Kerberos.txt] + * <Restricting users' access> [Authentication.RestrictAccess.txt] + * <Special authentication features> [PasswordDatabase.ExtraFields.txt] + * <Master users> [Authentication.MasterUsers.txt] + * <Mailbox location configuration> [MailLocation.txt] + * <Mails stored in local disk> [MailLocation.LocalDisk.txt] + * <Mails stored in shared filesystem> [MailLocation.SharedDisk.txt] + (<NFS.txt>, clustered FS) + * <Maildir configuration> [MailLocation.Maildir.txt] + * <Mbox configuration> [MailLocation.Mbox.txt] + * <Namespaces.txt> + * <Shared mailboxes> [SharedMailboxes.txt] + * <Login processes and their settings> [LoginProcess.txt] + * <SSL.txt> settings and certificate creation + * <Plugins.txt> + * <Quota.txt> + * <Access Control Lists> [ACL.txt] (ACLs) + * <Dovecot as a POP3 server> [POP3Server.txt] + * <Dovecot's local delivery agent> [LDA.txt] + * <Post-login scripting> [PostLoginScripting.txt] + +Examples / Scenarios +==================== + +See this section in http://wiki.dovecot.org/ + + * <Rootless installation> [Rootless.txt] + * <POP-before-SMTP> [PopBSMTPAndDovecot.txt] + * <Pop Relay Compatibility> [PopRelay.txt] + +Migration from existing systems +=============================== + + * <From other IMAP/POP3 servers> [Migration.txt] + * <My mailboxes are lost after migrating to Dovecot!> + [MissingMailboxes.txt] + * <Upgrading from Dovecot 0.99.x to 1.0> [UpgradingDovecot.txt] + * <Converting between mailbox formats> [Migration.MailFormat.txt] (mbox <-> + Maildir, etc.) + +Troubleshooting +=============== + + * <Why doesn't Dovecot work?> [WhyDoesItNotWork.txt] + * <Finding the error message from logs> [Logging.txt] + * <Debugging authentication> [Debugging.Authentication.txt] + * <Process tracing> [Debugging.ProcessTracing.txt] is useful when Dovecot + seems slow or hangs completely + * <mbox errors and crashes> [MboxProblems.txt] + * <Client issues and configuration> [Clients.txt] + * <Debugging using Thunderbird's logging> [Debugging.Thunderbird.txt] + * Sending bug reports [http://dovecot.org/bugreport.html], debugging crashes + and sniffing network traffic + +Tuning +====== + + * <Performance tuning> [PerformanceTuning.txt] + * <Security tuning> [SecurityTuning.txt] + * <Chrooting.txt> + +Reference +========= + + * <Command line arguments> [CommandLine.txt] + * <Dovecot's design> [Design.txt] + * <Client issues and configuration> [Clients.txt] + +Misc +==== + + * <Listening on Additional Ports> [Iptables.txt] using IP Tables
--- a/doc/variables.txt Wed Mar 28 00:56:53 2007 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,63 +0,0 @@ -You can use special variables in several places: - - mail_location setting - - namespace locations - - static userdb template string - - LDAP and SQL userdb query strings - - log prefix for login/imap/pop3 process - -The variables are: - - %u - username - %n - user part in user@domain, same as %u if there's no domain - %d - domain part in user@domain, empty if user there's no domain - %h - home directory - %s - service (imap, pop3, smtp, deliver) - %p - PID of the current process (login or imap/pop3 process) - %l - local IP address - %r - remote IP address - %w - plaintext password from plaintext authentication mechanism - %i - System UID of the user - -You can apply a modifiers for each variable (eg. %Us = POP3): - - %L - lowercase - %U - uppercase - %E - escape '"', "'" and '\' characters by inserting '\' before them. - Note that variables in SQL queries are automatically escaped, you - don't need to use this modifier for them. - %R - reverse the string - %H - take a 32bit hash of the variable and return it as hex. You can also - limit the hash value. For example %256Hu gives values 0..ff. You might - want padding also, so %2.256Hu gives 00..ff. This can be useful for - example in dividing users automatically to multiple partitions. Note - that if you're hashing usernames being in user@domain form, you probably - want to reverse the string to get better hash value variety, eg. %3RHu. - %M - return the string's MD5 sum - %D - return "sub.domain.org" as "sub,dc=domain,dc=org" (for LDAP queries) - -You can take a substring of the variable by giving optional offset followed -by '.' and width after the '%' character. For example %2u gives first two -characters of the username. %2.1u gives third character of the username. - -If the offset is negative, it counts from the end, for example %-2.2i gives -the UID mod 100 (last two characters of the UID printed in a string). If a -positive offset points outside the value, empty string is returned, if a -negative offset does then the string is taken from the start. - -If the width is prefixed with zero, the string isn't truncated, but only -padded with '0' character if the string is shorter. For example %04i may -return "0001", "1000" and "12345". %1.04i for the same string would return -"001", "000" and "2345". - -For dovecot-auth there are also these variables: - - %m - authentication method (eg. PLAIN) - %c - "secured" string with SSL, TLS and localhost connections. - Otherwise empty. - -For login_log_format_elements there are also these variables: - - %m - authentication method (eg. PLAIN) - %a - Local port - %b - Remote port - %c - SSL, TLS or empty
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/wiki/.cvsignore Wed Mar 28 01:50:53 2007 +0300 @@ -0,0 +1,4 @@ +Makefile.am +Makefile.in +Makefile +*.txt
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/wiki/Makefile.am.in Wed Mar 28 01:50:53 2007 +0300 @@ -0,0 +1,3 @@ +wikidir = $(datadir)/doc/dovecot/wiki + +wiki_DATA = \ No newline at end of file
--- a/dovecot-example.conf Wed Mar 28 00:56:53 2007 +0300 +++ b/dovecot-example.conf Wed Mar 28 01:50:53 2007 +0300 @@ -119,7 +119,7 @@ ## Login processes ## -# http://wiki.dovecot.org/LoginProcess +# <doc/wiki/LoginProcess.txt> # Directory where authentication process places authentication UNIX sockets # which login needs to be able to connect to. The sockets are created when @@ -128,15 +128,13 @@ #login_dir = /var/run/dovecot/login # chroot login process to the login_dir. Only reason not to do this is if you -# wish to run the whole Dovecot without roots. -# http://wiki.dovecot.org/Rootless +# wish to run the whole Dovecot without roots. <doc/wiki/Rootless.txt> #login_chroot = yes # User to use for the login process. Create a completely new user for this, # and don't use it anywhere else. The user must also belong to a group where # only it has access, it's used to control access for authentication process. -# Note that this user is NOT used to access mails. -# http://wiki.dovecot.org/UserIds +# Note that this user is NOT used to access mails. <doc/wiki/UserIds.txt> #login_user = dovecot # Set max. process size in megabytes. If you don't use @@ -200,13 +198,13 @@ # %d - domain part in user@domain, empty if there's no domain # %h - home directory # -# See doc/variables.txt for full list. Some examples: +# See doc/wiki/Variables.txt for full list. Some examples: # # mail_location = maildir:~/Maildir # mail_location = mbox:~/mail:INBOX=/var/mail/%u # mail_location = mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/%n # -# http://wiki.dovecot.org/MailLocation +# <doc/wiki/MailLocation.txt> # #mail_location = @@ -267,8 +265,8 @@ # isn't finding your mails. #mail_debug = no -# Log prefix for mail processes. See doc/variables.txt for list of possible -# variables you can use. +# Log prefix for mail processes. See doc/wiki/Variables.txt for list of +# possible variables you can use. #mail_log_prefix = "%Us(%u): " # Max. number of lines a mail process is allowed to log per second before it's @@ -344,16 +342,14 @@ # This setting doesn't affect login_chroot or auth chroot variables. # WARNING: Never add directories here which local users can modify, that # may lead to root exploit. Usually this should be done only if you don't -# allow shell access for users. -# http://wiki.dovecot.org/Chrooting +# allow shell access for users. <doc/wiki/Chrooting.txt> #valid_chroot_dirs = # Default chroot directory for mail processes. This can be overridden for # specific users in user database by giving /./ in user's home directory # (eg. /home/./user chroots into /home). Note that usually there is no real # need to do chrooting, Dovecot doesn't allow users to access files outside -# their mail directory anyway. -# http://wiki.dovecot.org/Chrooting +# their mail directory anyway. <doc/wiki/Chrooting.txt> #mail_chroot = ## @@ -761,15 +757,13 @@ # allow both system users (/etc/passwd) and virtual users to login without # duplicating the system users into virtual database. # - # http://wiki.dovecot.org/PasswordDatabase + # <doc/wiki/PasswordDatabase.txt> # # By adding master=yes setting inside a passdb you make the passdb a list # of "master users", who can log in as anyone else. Unless you're using PAM, # you probably still want the destination user to be looked up from passdb # that it really exists. This can be done by adding pass=yes setting to the - # master passdb. - # - # http://wiki.dovecot.org/MasterPassword + # master passdb. <doc/wiki/Authentication.MasterUsers.txt> # Users can be temporarily disabled by adding a passdb with deny=yes. # If the user is found from that database, authentication will fail. @@ -787,8 +781,7 @@ # so it can't be used as userdb. If you don't want to use a separate user # database (passwd usually), you can use static userdb. # REMEMBER: You'll need /etc/pam.d/dovecot file created for PAM - # authentication to actually work. - # http://wiki.dovecot.org/PasswordDatabase/PAM + # authentication to actually work. <doc/wiki/PasswordDatabase.PAM.txt> passdb pam { # [blocking=yes] [session=yes] [setcred=yes] # [cache_key=<key>] [<service name>] @@ -809,7 +802,7 @@ # because PAM modules can do all kinds of checks besides checking password, # such as checking IP address. Dovecot can't know about these checks # without some help. cache_key is simply a list of variables (see - # doc/variables.txt) which must match for the cached data to be used. + # doc/wiki/Variables.txt) which must match for the cached data to be used. # Here are some examples: # %u - Username must match. Probably sufficient for most uses. # %u%r - Username and remote IP address must match. @@ -826,29 +819,28 @@ # /etc/passwd or similar, using getpwnam() # In many systems nowadays this uses Name Service Switch, which is - # configured in /etc/nsswitch.conf. - # http://wiki.dovecot.org/AuthDatabase/Passwd + # configured in /etc/nsswitch.conf. <doc/wiki/AuthDatabase.Passwd.txt> #passdb passwd { # [blocking=yes] - See userdb passwd for explanation #args = #} # /etc/shadow or similiar, using getspnam(). Deprecated by PAM nowadays. - # http://wiki.dovecot.org/PasswordDatabase/Shadow + # <doc/wiki/PasswordDatabase.Shadow.txt> #passdb shadow { # [blocking=yes] - See userdb passwd for explanation #args = #} # PAM-like authentication for OpenBSD. - # http://wiki.dovecot.org/PasswordDatabase/BSDAuth + # <doc/wiki/PasswordDatabase.BSDAuth.txt> #passdb bsdauth { # [cache_key=<key>] - See cache_key in PAM for explanation. #args = #} # passwd-like file with specified location - # http://wiki.dovecot.org/AuthDatabase/PasswdFile + # <doc/wiki/AuthDatabase.PasswdFile.txt> #passdb passwd-file { # Path for passwd-file #args = @@ -856,28 +848,25 @@ # checkpassword executable authentication # NOTE: You will probably want to use "userdb prefetch" with this. - # http://wiki.dovecot.org/PasswordDatabase/CheckPassword + # <doc/wiki/PasswordDatabase.CheckPassword.txt> #passdb checkpassword { # Path for checkpassword binary #args = #} - # SQL database - # http://wiki.dovecot.org/AuthDatabase/SQL + # SQL database <doc/wiki/AuthDatabase.SQL.txt> #passdb sql { # Path for SQL configuration file, see doc/dovecot-sql-example.conf #args = #} - # LDAP database - # http://wiki.dovecot.org/AuthDatabase/LDAP + # LDAP database <doc/wiki/AuthDatabase.LDAP.txt> #passdb ldap { # Path for LDAP configuration file, see doc/dovecot-ldap-example.conf #args = #} - # vpopmail authentication - # http://wiki.dovecot.org/AuthDatabase/VPopMail + # vpopmail authentication <doc/wiki/AuthDatabase.VPopMail.txt> #passdb vpopmail { # [cache_key=<key>] - See cache_key in PAM for explanation. #args = @@ -887,12 +876,12 @@ # User database specifies where mails are located and what user/group IDs # own them. For single-UID configuration use "static". # - # http://wiki.dovecot.org/UserDatabase + # <doc/wiki/UserDatabase.txt> # # /etc/passwd or similar, using getpwnam(). In many systems nowadays this # uses Name Service Switch, which is configured in /etc/nsswitch.conf. - # http://wiki.dovecot.org/AuthDatabase/Passwd + # <doc/wiki/AuthDatabase.Passwd.txt> userdb passwd { # [blocking=yes] - By default the lookups are done in the main dovecot-auth # process. This setting causes the lookups to be done in auth worker @@ -903,14 +892,13 @@ } # passwd-like file with specified location - # http://wiki.dovecot.org/AuthDatabase/PasswdFile + # <doc/wiki/AuthDatabase.PasswdFile.txt> #userdb passwd-file { # Path for passwd-file #args = #} - # static settings generated from template - # http://wiki.dovecot.org/UserDatabase/Static + # static settings generated from template <doc/wiki/UserDatabase.Static.txt> #userdb static { # Template for the fields. Can return anything a userdb could normally # return. For example: @@ -927,22 +915,19 @@ #args = #} - # SQL database - # http://wiki.dovecot.org/AuthDatabase/SQL + # SQL database <doc/wiki/AuthDatabase.SQL.txt> #userdb sql { # Path for SQL configuration file, see doc/dovecot-sql-example.conf #args = #} - # LDAP database - # http://wiki.dovecot.org/AuthDatabase/LDAP + # LDAP database <doc/wiki/AuthDatabase.LDAP.txt> #userdb ldap { # Path for LDAP configuration file, see doc/dovecot-ldap-example.conf #args = #} - # vpopmail - # http://wiki.dovecot.org/AuthDatabase/VPopMail + # vpopmail <doc/wiki/AuthDatabase.VPopMail.txt> #userdb vpopmail { #} @@ -950,7 +935,7 @@ # needed information and there's no need to do a separate userdb lookup. # This can be made to work with SQL and LDAP databases, see their example # configuration files for more information how to do it. - # http://wiki.dovecot.org/UserDatabase/Prefetch + # <doc/wiki/UserDatabase.Prefetch.txt> #userdb prefetch { #}