| 1 | <?xml version='1.0' encoding='UTF-8'?> |
1 | <?xml version='1.0' encoding='UTF-8'?> |
| 2 | <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/virt-mail-howto.xml,v 1.50 2006/04/09 07:42:45 fox2mike Exp $ --> |
2 | <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/virt-mail-howto.xml,v 1.51 2006/06/18 22:09:40 nightmorph Exp $ --> |
| 3 | <!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> |
3 | <!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> |
| 4 | |
4 | |
| 5 | <guide link="/doc/en/virt-mail-howto.xml"> |
5 | <guide link="/doc/en/virt-mail-howto.xml"> |
| 6 | <title>Virtual Mailhosting System with Postfix Guide</title> |
6 | <title>Virtual Mailhosting System with Postfix Guide</title> |
| 7 | |
7 | |
| 8 | <author title="Author"> |
8 | <author title="Author"> |
| 9 | <mail link="antifa@gentoo.org">Ken Nowack</mail> |
9 | <mail link="antifa@gentoo.org">Ken Nowack</mail> |
| 10 | </author> |
10 | </author> |
| 11 | <author title="Author"> |
11 | <author title="Author"> |
| 12 | <mail link="ezra@revoltltd.org">Ezra Gorman</mail> |
12 | <mail link="ezra@revoltltd.org">Ezra Gorman</mail> |
| 13 | </author> |
13 | </author> |
| 14 | <author title="Editor"> |
14 | <author title="Editor"> |
| 15 | <mail link="klasikahl@gentoo.org">Zack Gilburd</mail> |
15 | <mail link="klasikahl@gentoo.org">Zack Gilburd</mail> |
| 16 | </author> |
16 | </author> |
| 17 | <author title="Editor"> |
17 | <author title="Editor"> |
| 18 | <mail link="seather@scygro.za.net">Scygro</mail> |
18 | <mail link="seather@scygro.za.net">Scygro</mail> |
| 19 | </author> |
19 | </author> |
| 20 | |
20 | |
| 21 | <abstract> |
21 | <abstract> |
| 22 | This document details how to create a virtual mailhosting system based upon |
22 | This document details how to create a virtual mailhosting system based upon |
| 23 | postfix, mysql, courier-imap, and cyrus-sasl. |
23 | postfix, mysql, courier-imap, and cyrus-sasl. |
| 24 | </abstract> |
24 | </abstract> |
| 25 | |
25 | |
| 26 | <version>1.0.27</version> |
26 | <version>1.0.28</version> |
| 27 | <date>2006-04-09</date> |
27 | <date>2006-06-18</date> |
| 28 | |
28 | |
| 29 | <!-- |
29 | <!-- |
| 30 | Contents |
30 | Contents |
| 31 | |
31 | |
| 32 | I. Introduction |
32 | I. Introduction |
| 33 | II. Postfix Basics |
33 | II. Postfix Basics |
| 34 | III. Courier-imap |
34 | III. Courier-imap |
| 35 | IV. Cyrus-sasl |
35 | IV. Cyrus-sasl |
| 36 | V. SSL Certificates for Postfix and Apache |
36 | V. SSL Certificates for Postfix and Apache |
| 37 | VI. Adding SSL and SASL support to Postfix |
37 | VI. Adding SSL and SASL support to Postfix |
| 38 | VII. MySQL |
38 | VII. MySQL |
| 39 | VIII. Apache and phpMyAdmin |
39 | VIII. Apache and phpMyAdmin |
| 40 | IX. The vmail user |
40 | IX. The vmail user |
| 41 | X. Configuring MySQL Authentication and vhosts |
41 | X. Configuring MySQL Authentication and vhosts |
| 42 | XI. Squirrelmail |
42 | XI. Squirrelmail |
| 43 | XII. Mailman |
43 | XII. Mailman |
| 44 | XIII. Content Filtering and Anti-Virus |
44 | XIII. Content Filtering and Anti-Virus |
| 45 | XIV. Wrap Up |
45 | XIV. Wrap Up |
| 46 | XV. Troubleshooting |
46 | XV. Troubleshooting |
| 47 | --> |
47 | --> |
| 48 | |
48 | |
| 49 | <chapter> |
49 | <chapter> |
| 50 | <title>Introduction</title> |
50 | <title>Introduction</title> |
| 51 | <section> |
51 | <section> |
| 52 | <body> |
52 | <body> |
| 53 | |
53 | |
| 54 | <p> |
54 | <p> |
| 55 | For most gentoo users, a simple mail client and fetchmail will do. However, if |
55 | For most Gentoo users, a simple mail client and fetchmail will do. However, if |
| 56 | you're hosting a domain with your system, you'll need a full blown MTA (Mail |
56 | you're hosting a domain with your system, you'll need a full blown MTA (Mail |
| 57 | Transfer Agent). And if you're hosting multiple domains, then you'll definitely |
57 | Transfer Agent). And if you're hosting multiple domains, then you'll definitely |
| 58 | need something more robust to handle all of the email for your users. This |
58 | need something more robust to handle all of the email for your users. This |
| 59 | system was designed to be an elegant solution to that problem. |
59 | system was designed to be an elegant solution to that problem. |
| 60 | </p> |
60 | </p> |
| 61 | |
61 | |
| 62 | <p> |
62 | <p> |
| 63 | A virtual mail system needs to be able to handle email for numerous domains |
63 | A virtual mail system needs to be able to handle email for numerous domains |
| 64 | with multiple users over a variety of interfaces. This presents some issues |
64 | with multiple users over a variety of interfaces. This presents some issues |
| 65 | that must be dealt with. For instance, what if you have two users on different |
65 | that must be dealt with. For instance, what if you have two users on different |
| 66 | domains that want the same user name? If you are providing imap access and |
66 | domains that want the same user name? If you are providing imap access and |
| 67 | smtp-auth, how do combine the various authentication daemons into a single |
67 | smtp-auth, how do combine the various authentication daemons into a single |
| 68 | system? How do you provide security for the numerous components that comprise |
68 | system? How do you provide security for the numerous components that comprise |
| 69 | the system? How do you manage it all? |
69 | the system? How do you manage it all? |
| 70 | </p> |
70 | </p> |
| … | |
… | |
| 110 | |
110 | |
| 111 | <impo> |
111 | <impo> |
| 112 | This document uses apache-1.3.x. Apache-2 has been marked stable in portage. |
112 | This document uses apache-1.3.x. Apache-2 has been marked stable in portage. |
| 113 | However there are still a number of issues with php integration. Until php |
113 | However there are still a number of issues with php integration. Until php |
| 114 | support in apache-2.0.x is marked stable, this guide will continue to use the |
114 | support in apache-2.0.x is marked stable, this guide will continue to use the |
| 115 | 1.3.x version. |
115 | 1.3.x version. |
| 116 | </impo> |
116 | </impo> |
| 117 | |
117 | |
| 118 | <impo> |
118 | <impo> |
| 119 | You need a domain name to run a public mail server, or at least an MX record |
119 | You need a domain name to run a public mail server, or at least an MX record |
| 120 | for a domain. Ideally you would have control of at least two domains to take |
120 | for a domain. Ideally you would have control of at least two domains to take |
| 121 | advantage of your new virtual domain functionality. |
121 | advantage of your new virtual domain functionality. |
| 122 | </impo> |
122 | </impo> |
| 123 | |
123 | |
| 124 | <impo> |
124 | <impo> |
| 125 | Make sure <path>/etc/hostname</path> is set to the right hostname for your mail |
125 | Make sure <path>/etc/conf.d/hostname</path> is set to the right hostname for |
| 126 | server. Verify your hostname is set correctly with <c>hostname</c>. Also |
126 | your mail server. You can apply any changes you make to this file by running |
| 127 | verify that there are no conflicting entries in <path>/etc/hosts</path>. |
127 | <c>/etc/init.d/hostname restart</c>. Verify your hostname is set correctly with |
|
|
128 | <c>hostname</c>. Also verify that there are no conflicting entries in |
|
|
129 | <path>/etc/hosts</path>. |
| 128 | </impo> |
130 | </impo> |
| 129 | |
131 | |
| 130 | <note> |
132 | <note> |
| 131 | It is recommended that you read this entire document and familiarize yourself |
133 | It is recommended that you read this entire document and familiarize yourself |
| 132 | with all the steps before attempting the install. If you run into problems with |
134 | with all the steps before attempting the install. If you run into problems with |
| 133 | any of the steps, check the troubleshooting guide at the end of this document. |
135 | any of the steps, check the troubleshooting guide at the end of this document. |
| 134 | Also, not all the referenced packages are necessary, this set up is very |
136 | Also, not all the referenced packages are necessary, this set up is very |
| 135 | flexible. For instance, if you do not desire a web interface, feel free to skip |
137 | flexible. For instance, if you do not desire a web interface, feel free to skip |
| 136 | the squirrelmail section. |
138 | the squirrelmail section. |
| 137 | </note> |
139 | </note> |
| 138 | |
140 | |
| 139 | </body> |
141 | </body> |
| 140 | </section> |
142 | </section> |
| 141 | </chapter> |
143 | </chapter> |
| 142 | |
144 | |