Mercurial > masqmail
annotate INSTALL @ 423:196dfb2a3056
Updated tests to the changes on spool dir.
author | markus schnalke <meillo@marmaro.de> |
---|---|
date | Wed, 30 May 2012 10:38:29 +0200 |
parents | bdbedce60247 |
children | a19e47ebbb33 |
rev | line source |
---|---|
59 | 1 Additional information may be available in docs/ or on the website. |
174
dbe3dadd1afe
Documentation improvements in the INSTALL file and some man pages
meillo@marmaro.de
parents:
92
diff
changeset
|
2 For installing on GNU/Linux distributions read docs/INSTALL.linux. |
59 | 3 |
0 | 4 |
59 | 5 Installation instructions |
6 ------------------------- | |
7 | |
165 | 8 To compile masqmail you need glib (>= 1.2) (http://www.gtk.org). Your |
181
8b17ea9fd17b
added comments on how to compile with glib-1.2
meillo@marmaro.de
parents:
175
diff
changeset
|
9 distribution probably provides it. Glib-2.0 works out of the box, for |
8b17ea9fd17b
added comments on how to compile with glib-1.2
meillo@marmaro.de
parents:
175
diff
changeset
|
10 glib-1.2, you need to adjust configure.ac. See the comment in there. |
165 | 11 |
12 You need a user and a group for masqmail to run. If | |
0 | 13 |
165 | 14 grep '^mail:' /etc/passwd |
358
92340177150d
Eventually switched the default group from `trusted' to `mail'
markus schnalke <meillo@marmaro.de>
parents:
227
diff
changeset
|
15 grep '^mail:' /etc/group |
165 | 16 |
358
92340177150d
Eventually switched the default group from `trusted' to `mail'
markus schnalke <meillo@marmaro.de>
parents:
227
diff
changeset
|
17 shows that the user `mail' and the group `mail' exist, it's probably |
92340177150d
Eventually switched the default group from `trusted' to `mail'
markus schnalke <meillo@marmaro.de>
parents:
227
diff
changeset
|
18 best to use these. If they don't exist, create them: |
0 | 19 |
358
92340177150d
Eventually switched the default group from `trusted' to `mail'
markus schnalke <meillo@marmaro.de>
parents:
227
diff
changeset
|
20 groupadd -g 12 mail |
92340177150d
Eventually switched the default group from `trusted' to `mail'
markus schnalke <meillo@marmaro.de>
parents:
227
diff
changeset
|
21 useradd -u 8 -g mail -d /nonexistent -s /bin/false -c "masqmail MTA" mail |
0 | 22 |
358
92340177150d
Eventually switched the default group from `trusted' to `mail'
markus schnalke <meillo@marmaro.de>
parents:
227
diff
changeset
|
23 The 8 and 12 are common uid/gid for the user and group `mail', but you can |
92340177150d
Eventually switched the default group from `trusted' to `mail'
markus schnalke <meillo@marmaro.de>
parents:
227
diff
changeset
|
24 use any (not yet used) number you like, preferably one lower than 100. |
92340177150d
Eventually switched the default group from `trusted' to `mail'
markus schnalke <meillo@marmaro.de>
parents:
227
diff
changeset
|
25 If you use other names than `mail' and `mail', you need to use the |
92340177150d
Eventually switched the default group from `trusted' to `mail'
markus schnalke <meillo@marmaro.de>
parents:
227
diff
changeset
|
26 configure options described below. |
165 | 27 |
0 | 28 |
174
dbe3dadd1afe
Documentation improvements in the INSTALL file and some man pages
meillo@marmaro.de
parents:
92
diff
changeset
|
29 Compiling is a matter of the usual procedure. In the source directory, |
59 | 30 after unpacking do: |
0 | 31 |
59 | 32 ./configure |
33 make | |
34 make install | |
0 | 35 |
36 | |
37 | |
59 | 38 Additional options for configure |
39 -------------------------------- | |
0 | 40 |
59 | 41 See the output of |
42 | |
43 ./configure -h | |
44 | |
165 | 45 Here is a selection of the options with additional explanations: |
0 | 46 |
165 | 47 --with-user=USER |
48 sets the user as which masqmail will run. Default is 'mail'. USER has | |
49 to exist before you 'make install'. | |
0 | 50 |
165 | 51 --with-group=GROUP |
358
92340177150d
Eventually switched the default group from `trusted' to `mail'
markus schnalke <meillo@marmaro.de>
parents:
227
diff
changeset
|
52 sets the group as which masqmail will run. Default is 'mail'. GROUP |
165 | 53 has to exist before you 'make install'. |
0 | 54 |
165 | 55 |
56 --with-logdir=LOGDIR | |
57 sets the directory where masqmail stores its log files. It will be | |
58 created if it does not exist. Default is /var/log/masqmail/. | |
0 | 59 |
165 | 60 --with-spooldir=SPOOLDIR |
61 sets the directory where masqmail stores its spool files. It will be | |
62 created if it does not exist. Default is /var/spool/masqmail/. | |
0 | 63 |
165 | 64 --with-confdir=CONFDIR |
65 sets the default configuration directory to CONFDIR, in case you | |
66 prefer another location than /etc/masqmail/. | |
67 | |
420
09da6e72cd30
Updated INSTALL to the new --with-piddir option.
markus schnalke <meillo@marmaro.de>
parents:
419
diff
changeset
|
68 --with-piddir=PIDDIR |
421
f37384470855
Changed lockdir to /var/lock/masqmail; Create lockdir and piddir on startup.
markus schnalke <meillo@marmaro.de>
parents:
420
diff
changeset
|
69 sets the directory for the pid file of the daemon. The default and usual |
420
09da6e72cd30
Updated INSTALL to the new --with-piddir option.
markus schnalke <meillo@marmaro.de>
parents:
419
diff
changeset
|
70 location is /var/run, but some GNU/Linux distributions have converted |
421
f37384470855
Changed lockdir to /var/lock/masqmail; Create lockdir and piddir on startup.
markus schnalke <meillo@marmaro.de>
parents:
420
diff
changeset
|
71 to /run. It gets created on program startup if missing. |
f37384470855
Changed lockdir to /var/lock/masqmail; Create lockdir and piddir on startup.
markus schnalke <meillo@marmaro.de>
parents:
420
diff
changeset
|
72 |
f37384470855
Changed lockdir to /var/lock/masqmail; Create lockdir and piddir on startup.
markus schnalke <meillo@marmaro.de>
parents:
420
diff
changeset
|
73 --with-lockdir=LOCKDIR |
f37384470855
Changed lockdir to /var/lock/masqmail; Create lockdir and piddir on startup.
markus schnalke <meillo@marmaro.de>
parents:
420
diff
changeset
|
74 sets the default directory for lock file for spooled messages. Default |
f37384470855
Changed lockdir to /var/lock/masqmail; Create lockdir and piddir on startup.
markus schnalke <meillo@marmaro.de>
parents:
420
diff
changeset
|
75 is /var/lock/masqmail. It gets created on program startup if missing. |
420
09da6e72cd30
Updated INSTALL to the new --with-piddir option.
markus schnalke <meillo@marmaro.de>
parents:
419
diff
changeset
|
76 |
0 | 77 |
165 | 78 --disable-resolver |
175 | 79 disables resolver support. Without the resolver functions, masqmail |
165 | 80 uses only gethostbyname() to resolve DNS names, and you cannot send |
81 mail without a smart host. Not recommended. | |
0 | 82 |
364
72653295b75d
Enabled auth support per default
markus schnalke <meillo@marmaro.de>
parents:
363
diff
changeset
|
83 --disable-auth |
72653295b75d
Enabled auth support per default
markus schnalke <meillo@marmaro.de>
parents:
363
diff
changeset
|
84 disables ESMTP AUTH support (enabled by default) |
72653295b75d
Enabled auth support per default
markus schnalke <meillo@marmaro.de>
parents:
363
diff
changeset
|
85 |
0 | 86 |
165 | 87 --disable-debug |
175 | 88 disables debugging; setting it on the command line or in the |
89 configuration has no effect. Strongly discouraged, since you miss | |
90 valuable information if something goes wrong. | |
0 | 91 |
59 | 92 |
93 | |
165 | 94 Checking the installation |
95 ------------------------- | |
0 | 96 |
97 Check that 'make install' worked correctly. The following command: | |
98 | |
195
5beb5d6d9623
There was still a /usr/sbin/masqmail path
meillo@marmaro.de
parents:
194
diff
changeset
|
99 ls -ld /usr/local/sbin/masqmail /etc/masqmail /var/log/masqmail/ \ |
422
bdbedce60247
Remove `input' dir in spool dir. Spooled files are in spool dir directly now.
markus schnalke <meillo@marmaro.de>
parents:
421
diff
changeset
|
100 /var/spool/masqmail/ |
0 | 101 |
102 should give output similar to | |
103 | |
165 | 104 -rwsr-xr-x 1 root root 399356 May 10 12:34 /usr/local/sbin/masqmail |
59 | 105 drwxr-xr-x 2 root root 4096 May 10 12:34 /etc/masqmail |
358
92340177150d
Eventually switched the default group from `trusted' to `mail'
markus schnalke <meillo@marmaro.de>
parents:
227
diff
changeset
|
106 drwxr-xr-x 2 mail mail 4096 May 10 12:34 /var/log/masqmail |
92340177150d
Eventually switched the default group from `trusted' to `mail'
markus schnalke <meillo@marmaro.de>
parents:
227
diff
changeset
|
107 drwxr-xr-x 5 mail mail 4096 May 10 12:34 /var/spool/masqmail |
0 | 108 |
165 | 109 Important are the set-user-id bit for /usr/local/sbin/masqmail and |
421
f37384470855
Changed lockdir to /var/lock/masqmail; Create lockdir and piddir on startup.
markus schnalke <meillo@marmaro.de>
parents:
420
diff
changeset
|
110 the ownership of the directories. |
165 | 111 |
112 | |
0 | 113 |
165 | 114 Making masqmail the default |
115 --------------------------- | |
0 | 116 |
165 | 117 `sendmail' is the de-facto standard name of the system's MTA, no |
118 matter which MTA actually runs. If you want to make masqmail the | |
185 | 119 system's MTA (i.e. replace sendmail, postfix, etc), make two symbolic |
120 links: | |
59 | 121 |
165 | 122 ln -s /usr/local/sbin/masqmail /usr/lib/sendmail |
185 | 123 ln -s /usr/local/sbin/masqmail /usr/sbin/sendmail |
0 | 124 |
165 | 125 Now every mailer that used to call sendmail will now call masqmail. |
126 If you already had an MTA installed and running, you can kill it and | |
127 start masqmail. Probably with: | |
59 | 128 |
165 | 129 /etc/init.d/sendmail restart |
59 | 130 |
165 | 131 If this doesn't work as expected, you might need to add a special init |
132 script for masqmail. Currently none is distributed with masqmail. | |
133 (Hopefully this will change soon.) Please ask on the mailing list for | |
134 help. | |
59 | 135 |
165 | 136 You can also directly start masqmail as daemon with: |
59 | 137 |
165 | 138 /usr/local/sbin/masqmail -bd -q30m |
59 | 139 |
0 | 140 |
141 | |
165 | 142 Basic Configuration |
143 ------------------- | |
59 | 144 |
165 | 145 The only thing you must configure in order to use masqmail is the |
146 hostname. It's the name under which masqmail operates. In most cases | |
147 it is the same as the machine's name, but it can be different. | |
59 | 148 |
227 | 149 The script `admin/guess-hostname' tries to print the hostname of |
165 | 150 your machine. The first output line is probably the best choice. |
59 | 151 |
165 | 152 Create a minimal config with: |
59 | 153 |
165 | 154 echo "host_name = HOSTNAME" >/etc/masqmail/masqmail.conf |
59 | 155 |
165 | 156 (Substitute `HOSTNAME' with the real value, of course.) |
59 | 157 |
165 | 158 Such a setup (i.e. the default one) does: |
159 - deliver mail locally | |
206
0241aaccfcdb
default listen_addresses: use 127.0.0.1 instead of `localhost'
meillo@marmaro.de
parents:
205
diff
changeset
|
160 - accept mail on stdin (plain text) |
0241aaccfcdb
default listen_addresses: use 127.0.0.1 instead of `localhost'
meillo@marmaro.de
parents:
205
diff
changeset
|
161 - accept mail on stdin (SMTP) (if started with -bs) |
0241aaccfcdb
default listen_addresses: use 127.0.0.1 instead of `localhost'
meillo@marmaro.de
parents:
205
diff
changeset
|
162 - accept mail on the local port 25 (SMTP) (if started with -bd) |
185 | 163 |
165 | 164 It does not |
185 | 165 - transfer mail to other machines |
165 | 166 - accept mail from outside your machine |
59 | 167 |
92 | 168 |
165 | 169 For more elaborate setups, have a look at docs/*setup and |
170 docs/INSTALL*. You can also take the example configuration files in | |
171 examples/ as basis for your own. Take the man pages masqmail.conf(5) | |
172 and masqmail.route(5) for reference. | |
59 | 173 |
165 | 174 All configuration files should go into /etc/masqmail. |
59 | 175 |
176 | |
177 | |
178 Written by oku. | |
165 | 179 Improved by meillo. |