rev |
line source |
meillo@59
|
1 Additional information may be available in docs/ or on the website.
|
meillo@174
|
2 For installing on GNU/Linux distributions read docs/INSTALL.linux.
|
meillo@0
|
3
|
meillo@59
|
4
|
meillo@59
|
5 Installation instructions
|
meillo@59
|
6 -------------------------
|
meillo@59
|
7
|
meillo@165
|
8 To compile masqmail you need glib (>= 1.2) (http://www.gtk.org). Your
|
meillo@181
|
9 distribution probably provides it. Glib-2.0 works out of the box, for
|
meillo@181
|
10 glib-1.2, you need to adjust configure.ac. See the comment in there.
|
meillo@0
|
11
|
meillo@165
|
12 You need a user and a group for masqmail to run. If
|
meillo@165
|
13
|
meillo@165
|
14 grep '^mail:' /etc/passwd
|
meillo@358
|
15 grep '^mail:' /etc/group
|
meillo@165
|
16
|
meillo@358
|
17 shows that the user `mail' and the group `mail' exist, it's probably
|
meillo@358
|
18 best to use these. If they don't exist, create them:
|
meillo@0
|
19
|
meillo@358
|
20 groupadd -g 12 mail
|
meillo@358
|
21 useradd -u 8 -g mail -d /nonexistent -s /bin/false -c "masqmail MTA" mail
|
meillo@0
|
22
|
meillo@358
|
23 The 8 and 12 are common uid/gid for the user and group `mail', but you can
|
meillo@358
|
24 use any (not yet used) number you like, preferably one lower than 100.
|
meillo@358
|
25 If you use other names than `mail' and `mail', you need to use the
|
meillo@358
|
26 configure options described below.
|
meillo@165
|
27
|
meillo@0
|
28
|
meillo@174
|
29 Compiling is a matter of the usual procedure. In the source directory,
|
meillo@59
|
30 after unpacking do:
|
meillo@0
|
31
|
meillo@59
|
32 ./configure
|
meillo@59
|
33 make
|
meillo@59
|
34 make install
|
meillo@0
|
35
|
meillo@0
|
36
|
meillo@0
|
37
|
meillo@59
|
38 Additional options for configure
|
meillo@59
|
39 --------------------------------
|
meillo@0
|
40
|
meillo@59
|
41 See the output of
|
meillo@0
|
42
|
meillo@59
|
43 ./configure -h
|
meillo@0
|
44
|
meillo@165
|
45 Here is a selection of the options with additional explanations:
|
meillo@0
|
46
|
meillo@165
|
47 --with-user=USER
|
meillo@165
|
48 sets the user as which masqmail will run. Default is 'mail'. USER has
|
meillo@165
|
49 to exist before you 'make install'.
|
meillo@0
|
50
|
meillo@165
|
51 --with-group=GROUP
|
meillo@358
|
52 sets the group as which masqmail will run. Default is 'mail'. GROUP
|
meillo@165
|
53 has to exist before you 'make install'.
|
meillo@0
|
54
|
meillo@0
|
55
|
meillo@165
|
56 --with-logdir=LOGDIR
|
meillo@165
|
57 sets the directory where masqmail stores its log files. It will be
|
meillo@165
|
58 created if it does not exist. Default is /var/log/masqmail/.
|
meillo@0
|
59
|
meillo@165
|
60 --with-spooldir=SPOOLDIR
|
meillo@165
|
61 sets the directory where masqmail stores its spool files. It will be
|
meillo@165
|
62 created if it does not exist. Default is /var/spool/masqmail/.
|
meillo@0
|
63
|
meillo@165
|
64 --with-confdir=CONFDIR
|
meillo@165
|
65 sets the default configuration directory to CONFDIR, in case you
|
meillo@165
|
66 prefer another location than /etc/masqmail/.
|
meillo@0
|
67
|
meillo@0
|
68
|
meillo@165
|
69 --enable-auth
|
meillo@165
|
70 enables ESMTP AUTH support (disabled by default)
|
meillo@0
|
71
|
meillo@165
|
72 --enable-ident
|
meillo@175
|
73 enables RFC 1413 support. If you have the libident dynamic library
|
meillo@165
|
74 installed, this will be linked, otherwise it will be statically linked
|
meillo@360
|
75 using the sources included in the package. Ident support brings few
|
meillo@360
|
76 advantages. If mail is received from machines that run identd, the
|
meillo@360
|
77 Received headers and log messages include a user name too. Additionally
|
meillo@360
|
78 a user can remove queued mail if it had been sent by himself from another
|
meillo@360
|
79 machine running identd. In any case: You cannot trust the ident
|
meillo@360
|
80 information more than you trust the specific remote machine.
|
meillo@0
|
81
|
meillo@165
|
82 --disable-resolver
|
meillo@175
|
83 disables resolver support. Without the resolver functions, masqmail
|
meillo@165
|
84 uses only gethostbyname() to resolve DNS names, and you cannot send
|
meillo@165
|
85 mail without a smart host. Not recommended.
|
meillo@0
|
86
|
meillo@165
|
87
|
meillo@165
|
88 --with-libcryto
|
meillo@165
|
89 instead of using the md5 and hmac functions within the package, link
|
meillo@192
|
90 dynamically with libcrypto. This applies only if you have SMTP AUTH
|
meillo@192
|
91 enabled. Only makes sense if your resources are limited and you have
|
meillo@192
|
92 libcrypto installed. Untested.
|
meillo@165
|
93
|
meillo@0
|
94
|
meillo@165
|
95 --disable-debug
|
meillo@175
|
96 disables debugging; setting it on the command line or in the
|
meillo@175
|
97 configuration has no effect. Strongly discouraged, since you miss
|
meillo@175
|
98 valuable information if something goes wrong.
|
meillo@0
|
99
|
meillo@59
|
100
|
meillo@59
|
101
|
meillo@165
|
102 Checking the installation
|
meillo@165
|
103 -------------------------
|
meillo@0
|
104
|
meillo@0
|
105 Check that 'make install' worked correctly. The following command:
|
meillo@0
|
106
|
meillo@195
|
107 ls -ld /usr/local/sbin/masqmail /etc/masqmail /var/log/masqmail/ \
|
meillo@174
|
108 /var/run/masqmail /var/spool/masqmail/ /var/spool/masqmail/*
|
meillo@0
|
109
|
meillo@0
|
110 should give output similar to
|
meillo@0
|
111
|
meillo@165
|
112 -rwsr-xr-x 1 root root 399356 May 10 12:34 /usr/local/sbin/masqmail
|
meillo@59
|
113 drwxr-xr-x 2 root root 4096 May 10 12:34 /etc/masqmail
|
meillo@358
|
114 drwxr-xr-x 2 mail mail 4096 May 10 12:34 /var/log/masqmail
|
meillo@358
|
115 drwxr-xr-x 2 mail mail 4096 May 10 12:34 /var/run/masqmail
|
meillo@358
|
116 drwxr-xr-x 5 mail mail 4096 May 10 12:34 /var/spool/masqmail
|
meillo@358
|
117 drwxr-xr-x 2 mail mail 4096 May 10 12:34 /var/spool/masqmail/input
|
meillo@358
|
118 drwxr-xr-x 2 mail mail 4096 May 10 12:34 /var/spool/masqmail/lock
|
meillo@0
|
119
|
meillo@165
|
120 Important are the set-user-id bit for /usr/local/sbin/masqmail and
|
meillo@165
|
121 the permissions of all files.
|
meillo@0
|
122
|
meillo@0
|
123
|
meillo@59
|
124
|
meillo@165
|
125 Making masqmail the default
|
meillo@165
|
126 ---------------------------
|
meillo@0
|
127
|
meillo@165
|
128 `sendmail' is the de-facto standard name of the system's MTA, no
|
meillo@165
|
129 matter which MTA actually runs. If you want to make masqmail the
|
meillo@185
|
130 system's MTA (i.e. replace sendmail, postfix, etc), make two symbolic
|
meillo@185
|
131 links:
|
meillo@0
|
132
|
meillo@165
|
133 ln -s /usr/local/sbin/masqmail /usr/lib/sendmail
|
meillo@185
|
134 ln -s /usr/local/sbin/masqmail /usr/sbin/sendmail
|
meillo@0
|
135
|
meillo@165
|
136 Now every mailer that used to call sendmail will now call masqmail.
|
meillo@165
|
137 If you already had an MTA installed and running, you can kill it and
|
meillo@165
|
138 start masqmail. Probably with:
|
meillo@59
|
139
|
meillo@165
|
140 /etc/init.d/sendmail restart
|
meillo@59
|
141
|
meillo@165
|
142 If this doesn't work as expected, you might need to add a special init
|
meillo@165
|
143 script for masqmail. Currently none is distributed with masqmail.
|
meillo@165
|
144 (Hopefully this will change soon.) Please ask on the mailing list for
|
meillo@165
|
145 help.
|
meillo@59
|
146
|
meillo@165
|
147 You can also directly start masqmail as daemon with:
|
meillo@59
|
148
|
meillo@165
|
149 /usr/local/sbin/masqmail -bd -q30m
|
meillo@59
|
150
|
meillo@59
|
151
|
meillo@59
|
152
|
meillo@165
|
153 Basic Configuration
|
meillo@165
|
154 -------------------
|
meillo@59
|
155
|
meillo@165
|
156 The only thing you must configure in order to use masqmail is the
|
meillo@165
|
157 hostname. It's the name under which masqmail operates. In most cases
|
meillo@165
|
158 it is the same as the machine's name, but it can be different.
|
meillo@59
|
159
|
meillo@227
|
160 The script `admin/guess-hostname' tries to print the hostname of
|
meillo@165
|
161 your machine. The first output line is probably the best choice.
|
meillo@59
|
162
|
meillo@165
|
163 Create a minimal config with:
|
meillo@59
|
164
|
meillo@165
|
165 echo "host_name = HOSTNAME" >/etc/masqmail/masqmail.conf
|
meillo@59
|
166
|
meillo@165
|
167 (Substitute `HOSTNAME' with the real value, of course.)
|
meillo@59
|
168
|
meillo@165
|
169 Such a setup (i.e. the default one) does:
|
meillo@165
|
170 - deliver mail locally
|
meillo@206
|
171 - accept mail on stdin (plain text)
|
meillo@206
|
172 - accept mail on stdin (SMTP) (if started with -bs)
|
meillo@206
|
173 - accept mail on the local port 25 (SMTP) (if started with -bd)
|
meillo@185
|
174
|
meillo@165
|
175 It does not
|
meillo@185
|
176 - transfer mail to other machines
|
meillo@165
|
177 - accept mail from outside your machine
|
meillo@59
|
178
|
meillo@59
|
179
|
meillo@165
|
180 For more elaborate setups, have a look at docs/*setup and
|
meillo@165
|
181 docs/INSTALL*. You can also take the example configuration files in
|
meillo@165
|
182 examples/ as basis for your own. Take the man pages masqmail.conf(5)
|
meillo@165
|
183 and masqmail.route(5) for reference.
|
meillo@92
|
184
|
meillo@165
|
185 All configuration files should go into /etc/masqmail.
|
meillo@59
|
186
|
meillo@59
|
187
|
meillo@59
|
188
|
meillo@59
|
189 Written by oku.
|
meillo@165
|
190 Improved by meillo.
|