Mercurial > masqmail-0.2
annotate man/masqmail.conf.5 @ 57:ed34413652fc
moved man pages from docs/ to man/
author | meillo@marmaro.de |
---|---|
date | Sat, 29 May 2010 22:07:07 +0200 |
parents | docs/masqmail.conf.5@5e527abc1fc2 |
children | 10d00e3235f2 |
rev | line source |
---|---|
42
03817f849106
decided to release the next version as 0.2.22 (not as 0.3.0)
meillo@marmaro.de
parents:
40
diff
changeset
|
1 .TH masqmail.conf 5 2010-05-07 masqmail-0.2.22 "File Formats" |
34 | 2 |
0 | 3 .SH NAME |
4 masqmail.conf \- masqmail configuration file | |
34 | 5 |
6 | |
0 | 7 .SH DESCRIPTION |
8 | |
34 | 9 This man page describes the syntax of the main configuration file of masqmail. |
10 Its usual location is \fI/etc/masqmail/masqmail.conf\fR | |
0 | 11 |
12 The configuration consists of lines of the form | |
13 | |
34 | 14 \fBval\fR = \fIexpression\fR |
0 | 15 |
34 | 16 Where \fBval\fR is a variable name and \fIexpression\fR a string, |
17 which can be quoted with double quotes `"'. | |
18 If the expression is on multiple lines or contains characters other than letters, | |
19 digits or the characters `.', `-', `_', `/', it must be quoted. | |
20 You can use quotes inside quotes by escaping them with a backslash. | |
0 | 21 |
34 | 22 Each val has a type, which can be boolean, numeric, string or list. |
23 A boolean variable can be set with one of the values `on', `yes', and `true' or `off', `no' and `false'. | |
24 List items are separated with semicolons `;'. | |
25 For some values patterns (like `*',`?') can be used. | |
26 The spaces before and after the equal sign `=' are optional. | |
0 | 27 |
34 | 28 Most lists (exceptions: \fBlocal_hosts\fR, \fBlocal_nets\fR, \fBlisten_addresses\fR, |
29 \fBonline_routes\fR, and \fBonline_gets\fR) accept files. | |
30 These will be recognized by a leading slash `/'. | |
31 The contents of these files will be included at the position of the file name, | |
32 there can be items or other files before and after the file entry. | |
33 The format of the files is different though, within these files each entry is on another line. | |
34 (And not separated by semicolons). | |
35 This makes it easy to include large lists which are common in different configuration files, | |
36 so they do not have to appear in every configuration file. | |
0 | 37 |
34 | 38 Blank lines and lines starting with a hash `#' are ignored. |
39 | |
0 | 40 |
41 .SH OPTIONS | |
34 | 42 |
0 | 43 .TP |
34 | 44 \fBrun_as_user = \fIboolean\fR |
0 | 45 |
34 | 46 If this is set, masqmail runs with the user id of the user who invoked it and never changes it. |
47 This is for debugging purposes only. | |
48 If the user is not root, masqmail will not be able to listen on a port < 1024 | |
49 and will not be able to deliver local mail to others than the user. | |
50 | |
0 | 51 .TP |
34 | 52 \fBuse_syslog = \fIboolean\fR |
0 | 53 |
34 | 54 If this is set, masqmail uses syslogd for logging. |
55 It uses facility MAIL. | |
56 You still have to set \fBlog_dir\fR for debug files. | |
57 | |
0 | 58 .TP |
34 | 59 \fBdebug_level = \fIn\fR |
0 | 60 |
34 | 61 Set the debug level. |
62 Valid values are 0 to 6, increasing it further makes no difference. | |
63 Be careful if you set this as high as 5 or higher, the logs may very soon fill your hard drive. | |
64 | |
0 | 65 .TP |
44 | 66 \fBlog_dir = \fIfile\fR |
67 | |
68 The directory where log are stored, if syslog is not used. | |
69 Debug files are stored in this directory anyways. | |
70 \fI/var/log/masqmail\fR is a common value. | |
71 \fIfile\fR must be an absolute path. | |
72 | |
73 .TP | |
34 | 74 \fBmail_dir = \fIfile\fR |
0 | 75 |
34 | 76 The directory where local mail is stored, usually \fI/var/spool/mail\fR or \fI/var/mail\fR. |
44 | 77 \fIfile\fR must be an absolute path. |
34 | 78 |
0 | 79 .TP |
34 | 80 \fBspool_dir = \fIfile\fR |
0 | 81 |
34 | 82 The directory where masqmail stores its spool files (and later also other stuff). |
83 It must have a subdirectory \fIinput\fR. | |
84 Masqmail needs read and write permissions for this directory. | |
85 I suggest to use \fI/var/spool/masqmail\fR. | |
44 | 86 \fIfile\fR must be an absolute path. |
0 | 87 |
88 .TP | |
34 | 89 \fBhost_name = \fIstring\fR |
0 | 90 |
34 | 91 This is used in different places: Masqmail identifies itself in the greeting banner |
92 on incoming connections and in the HELO/EHLO command for outgoing connections with this name, | |
93 it is used in the Received: header and to qualify the sender of a locally originating message. | |
0 | 94 |
34 | 95 If the string begins with a slash `/', it it assumed that it is a filename, |
96 and the first line of this file will be used. | |
97 Usually this will be `/etc/mailname' to make masqmail conform to Debian policies. | |
0 | 98 |
34 | 99 It is not used to find whether an address is local. Use \fBlocal_hosts\fR for that. |
100 | |
0 | 101 .TP |
34 | 102 \fBremote_port = \fIn\fR |
0 | 103 |
104 The remote port number to be used. This defaults to port 25. | |
105 | |
34 | 106 This option is deprecated. |
107 Use \fBhost_name\fR in the route configuration instead. | |
108 See \fBmasqmail.route(5)\fR. | |
109 | |
0 | 110 .TP |
34 | 111 \fBlocal_hosts = \fIlist\fR |
0 | 112 |
34 | 113 A semicolon `;' separated list of hostnames which are considered local. |
114 Normally you set it to "localhost;foo;foo.bar.com" if your host has the | |
115 fully qualified domain name `foo.bar.com'. | |
0 | 116 |
117 .TP | |
34 | 118 \fBlocal_nets = \fIlist\fR |
0 | 119 |
34 | 120 A semicolon `;' separated list of hostnames which are on the `local' net. |
121 Delivery to these hosts is attempted immediately. | |
122 You can use patterns with `*', e.g. "*.bar.com". | |
0 | 123 |
124 .TP | |
34 | 125 \fBlocal_addresses = \fIlist\fR |
0 | 126 |
34 | 127 A semicolon `;' separated list of fully qualified email-addresses which are |
128 considered local although their domain name part is not in the list of \fBlocal_hosts\fR. | |
0 | 129 |
34 | 130 For example: There are two people working at your LAN: person1@yourdomain and person2@yourdomain. |
131 But there are other persons @yourdomain which are NOT local. | |
132 So you can not put yourdomain to the list of local_hosts. | |
133 If person1 now wants to write to person2@yourdomain and this mail should not leave the LAN then you can put | |
0 | 134 |
135 local_addresses = "person1@yourdomain;person2@yourdomain" | |
136 | |
137 to your masqmail.conf. | |
34 | 138 |
0 | 139 .TP |
34 | 140 \fBnot_local_addresses = \fIlist\fR |
0 | 141 |
34 | 142 A semicolon `;' separated list of fully qualified email-addresses which are |
143 considered not local although their domain name part is in the list of \fBlocal_hosts\fR. | |
0 | 144 |
34 | 145 This is the opposite of the previous case. |
146 The majority of addresses of a specific domain are local. | |
147 But some users are not. | |
148 With this option you can easily exclude these users. | |
0 | 149 |
150 Example: | |
151 | |
152 local_hosts = "localhost;myhost;mydomain.net" | |
153 | |
154 not_local_addresses = "eric@mydomain.net" | |
34 | 155 |
0 | 156 .TP |
34 | 157 \fBlisten_addresses = \fIlist\fR |
0 | 158 |
34 | 159 A semicolon `;' separated list of interfaces on which connections will be accepted. |
160 An interface ist defined by a hostname, optionally followed by a colon `:' and a number for the port. | |
161 If this is left out, port 25 will be used. | |
0 | 162 |
34 | 163 You can set this to "localhost:25;foo:25" if your hostname is `foo'. |
0 | 164 |
34 | 165 Note that the names are resolved to IP addreses. |
166 If your host has different names which resolve to the same IP, | |
167 use only one of them, otherwise you will get an error message. | |
168 | |
0 | 169 .TP |
34 | 170 \fBdo_save_envelope_to = \fIboolean\fR |
0 | 171 |
34 | 172 If this is set to true, a possibly existing Envelope-to: header in an incoming mail |
173 which is received via either pop3 or smtp will be saved as an X-Orig-Envelope-to: header. | |
0 | 174 |
34 | 175 This is useful if you retrieve mail from a pop3 server with either masqmail or fetchmail, |
176 and the server supports Envelope-to: headers, | |
177 and you want to make use of those with a mail filtering tool, e.g. procmail. | |
178 It cannot be preserved because masqmail sets such a header by itself. | |
0 | 179 |
180 Default is false. | |
34 | 181 |
0 | 182 .TP |
34 | 183 \fBdo_relay = \fIboolean\fR |
0 | 184 |
34 | 185 If this is set to false, mail with a return path that is not local and a destination |
186 that is also not local will not be accepted via smtp and a 550 reply will be given. | |
187 Default is true. | |
0 | 188 |
34 | 189 Note that this will not protect you from spammers using open relays, |
190 but from users unable to set their address in their mail clients. | |
191 | |
0 | 192 .TP |
34 | 193 \fBdo_queue = \fIboolean\fR |
0 | 194 |
34 | 195 If this is set, mail will not be delivered immediately when accepted. |
196 Same as calling masqmail with the \fB\-odq\fR option. | |
0 | 197 |
198 .TP | |
34 | 199 \fBonline_routes.\fIname\fR = \fIlist\fR |
0 | 200 |
34 | 201 Replace \fIname\fR with a name to identify a connection. |
202 Set this to a filename (or a list of filenames) for the special route configuration for that connection. | |
203 You will use that name to call masqmail with the \fB\-qo\fR option every time a | |
204 connection to your ISP is set up. | |
0 | 205 |
34 | 206 Example: Your ISP has the name FastNet. |
207 Then you write the following line in the main configuration: | |
0 | 208 |
34 | 209 \fBonline_routes.FastNet\fR = \fI"/etc/masqmail/fastnet.route"\fR |
0 | 210 |
34 | 211 \fI/etc/masqmail/fastnet.route\fR is the route configuration file, see \fBmasqmail.route(5)\fR. |
212 As soon as a link to FastNet has been set up, you call masqmail \fB\-qo \fIFastNet\fR. | |
213 Masqmail will then read the specified file and send the mails. | |
0 | 214 |
34 | 215 .TP |
216 \fBconnect_route.\fIname\fR = \fIlist\fR | |
0 | 217 |
34 | 218 Old name for \fBonline_routes\fR. |
219 | |
0 | 220 .TP |
34 | 221 \fBlocal_net_route = \fIfile\fR |
0 | 222 |
34 | 223 This is similar to \fBonline_routes.\fIname\fR but for the local net. |
224 Recipient addresses that are in local_nets will be routed using this route configuration. | |
225 Main purpose is to define a mail server with mail_host in your local network. | |
226 In simple environments this can be left unset. | |
227 If unset, a default route configuration will be used. | |
0 | 228 |
34 | 229 .TP |
230 \fBalias_file = \fIfile\fR | |
0 | 231 |
34 | 232 Set this to the location of your alias file. |
233 If unset, no aliasing will be done. | |
234 | |
0 | 235 .TP |
34 | 236 \fBalias_local_caseless = \fIboolean\fR |
0 | 237 |
238 If this is set, local parts in the alias file will be matched disregarding upper/lower case. | |
34 | 239 |
0 | 240 .TP |
34 | 241 \fBpipe_fromline = \fIboolean\fR |
0 | 242 |
34 | 243 If this is set, a from line will be prepended to the output stream whenever |
244 a pipe command is called after an alias expansion. | |
245 Default is false. | |
246 | |
0 | 247 .TP |
34 | 248 \fBpipe_fromhack = \fIboolean\fR |
0 | 249 |
34 | 250 If this is set, each line beginning with `From ' is replaced with `>From ' |
251 whenever a pipe command is called after an alias expansion. | |
252 You probably want this if you have set \fBpipe_fromline\fR above. | |
253 Default is false. | |
254 | |
0 | 255 .TP |
34 | 256 \fBmbox_default = \fIstring\fR |
0 | 257 |
34 | 258 The default local delivery method. |
259 Can be one of mbox, mda or maildir (the latter only if maildir support is enabled at compile time). | |
260 Default is mbox. | |
261 You can override this for each user by using the \fBmbox_users\fR, \fBmda_users\fR, | |
262 or \fBmaildir_users\fR options (see below). | |
263 | |
0 | 264 .TP |
34 | 265 \fBmbox_users = \fIlist\fR |
0 | 266 |
267 A list of users which wish delivery to an mbox style mail folder. | |
34 | 268 |
0 | 269 .TP |
34 | 270 \fBmda_users = \fIlist\fR |
0 | 271 |
34 | 272 A list of users which wish local delivery to an mda. |
273 You have to set \fBmda\fR (see below) as well. | |
274 | |
0 | 275 .TP |
34 | 276 \fBmaildir_users = \fIlist\fR |
0 | 277 |
34 | 278 A list of users which wish delivery to a qmail style maildir. |
279 The path to maildir is ~/Maildir/. | |
280 The maildir will be created if it does not exist. | |
281 | |
0 | 282 .TP |
34 | 283 \fBmda = \fIexpand string\fR |
0 | 284 |
34 | 285 If you want local delivery to be transferred to an mda (Mail Delivery Agent), |
286 set this to a command. | |
287 The argument will be expanded on delivery time, | |
288 you can use variables beginning with a dolloar sign `$', optionally enclosed in curly braces. | |
289 Variables you can use are: | |
0 | 290 |
34 | 291 uid - the unique message id. |
292 This is not necessarily identical with the Message ID as given in the Message ID: header. | |
0 | 293 |
294 received_host - the host the mail was received from | |
295 | |
34 | 296 ident - the ident, this is either the ident delivered by the ident protocol |
297 or the user id of the sender if the message was received locally. | |
0 | 298 |
299 return_path_local - the local part of the return path (sender). | |
300 | |
301 return_path_domain - the domain part of the return path (sender). | |
302 | |
303 return_path - the complete return path (sender). | |
304 | |
305 rcpt_local - the local part of the recipient. | |
306 | |
307 rcpt_domain - the domain part of the recipient. | |
308 | |
309 rcpt - the complete recipient address. | |
310 | |
311 Example: | |
312 | |
16 | 313 mda="/usr/bin/procmail \-Y \-d ${rcpt_local}" |
0 | 314 |
34 | 315 For the mda, as for pipe commands, a few environment variables will be set as well. |
316 See \fBmasqmail(8)\fR. | |
317 To use environment variables for the mda, the dollar sign `$' has to be escaped with a backslash, | |
318 otherwise they will be tried to be expanded with the internal variables. | |
0 | 319 |
320 .TP | |
34 | 321 \fBmda_fromline = \fIboolean\fR |
0 | 322 |
34 | 323 If this is set, a from line will be prepended to the output stream whenever |
324 a message is delivered to an mda. | |
325 Default is false. | |
0 | 326 |
327 .TP | |
34 | 328 \fBmda_fromhack = \fIboolean\fR |
0 | 329 |
34 | 330 If this is set, each line beginning with `From ' is replaced with `>From ' |
331 whenever a message is delivered to an mda. | |
332 You probably want this if you have set \fBmda_fromline\fR above. | |
333 Default is false. | |
334 | |
335 .TP | |
336 \fBonline_detect = \fIstring\fR | |
0 | 337 |
34 | 338 Defines the method masqmail uses to detect whether there is currently an online connection. |
339 It can have the values \fBfile\fR, \fBpipe\fR, or \fBmserver\fR. | |
0 | 340 |
34 | 341 When it is set to \fBfile\fR, masqmail first checks for the existence of \fBonline_file\fR |
342 (see below) and if it exists, it reads it. | |
343 The content of the file should be the name of the current connection as defined | |
344 with \fBconnect_route.\fIname\fR (trailing whitespace is removed). | |
0 | 345 |
34 | 346 When it is set to \fBpipe\fR, masqmail calls the executable given by the |
347 \fBonline_pipe\fR option (see below) and reads the current online status from its standard output. | |
0 | 348 |
34 | 349 When it is set to \fBmserver\fR, masqmail connects to the masqdialer server |
350 using the value of \fBmserver_iface\fR and asks it whether a connection exists and for the name, | |
351 which should be the name of the current connection as defined with \fBconnect_route.\fIname\fR. | |
0 | 352 |
34 | 353 No matter how masqmail detects the online status, |
354 only messages that are accepted at online time will be delivered using the connection. | |
355 The spool still has to be emptied with masqmail \fB\-qo\fIconnection\fR. | |
356 | |
0 | 357 .TP |
34 | 358 \fBonline_file = \fIfile\fR |
0 | 359 |
34 | 360 This is the name of the file checked for when masqmail determines whether it is online. |
361 The file should only exist when there is currently a connection. | |
362 Create it in your ip-up script with e.g. | |
0 | 363 |
37
4fee89792559
updated config example and man page to new default online file
meillo@marmaro.de
parents:
34
diff
changeset
|
364 echo \-n <name> > /var/run/masqmail/masqmail-route |
0 | 365 |
37
4fee89792559
updated config example and man page to new default online file
meillo@marmaro.de
parents:
34
diff
changeset
|
366 chmod 0644 /var/run/masqmail/masqmail-route |
0 | 367 |
368 Do not forget to delete it in your ip-down script. | |
34 | 369 |
0 | 370 .TP |
34 | 371 \fBonline_pipe = \fIfile\fR |
0 | 372 |
34 | 373 This is the name of the executable which will be called to determine the online status. |
374 This executable should just print the name of the current connection to | |
375 the standard output and return a zero status code. | |
376 masqmail assumes it is offline if the script returns with a non zero status. | |
377 Simple example: | |
0 | 378 |
379 #!/bin/sh | |
380 | |
37
4fee89792559
updated config example and man page to new default online file
meillo@marmaro.de
parents:
34
diff
changeset
|
381 [ \-e /var/run/masqmail/masqmail-route ] || exit 1 |
0 | 382 |
37
4fee89792559
updated config example and man page to new default online file
meillo@marmaro.de
parents:
34
diff
changeset
|
383 cat /var/run/masqmail/masqmail-route |
0 | 384 |
385 exit 0 | |
386 | |
34 | 387 Of course, instead of the example above you could as well use \fBfile\fR as |
388 the online detection method, but you can do something more sophisticated. | |
389 | |
0 | 390 .TP |
34 | 391 \fBmserver_iface = \fIinterface\fR |
0 | 392 |
34 | 393 The interface the masqdialer server is listening to. |
394 Usually this will be "localhost:224" if mserver is running on the same host as masqmail. | |
395 But using this option, you can also let masqmail run on another host by setting | |
396 \fBmserver_iface\fR to another hostname, e.g. "foo:224". | |
0 | 397 |
34 | 398 .TP |
399 \fBget.\fIname\fR = \fIfile\fR | |
0 | 400 |
34 | 401 Replace \fIname\fR with a name to identify a get configuration. |
402 Set this to a filename for the get configuration. | |
403 These files will be used to retrieve mail when called with the \-g option. | |
404 | |
0 | 405 .TP |
34 | 406 \fBonline_gets.\fIname\fR = \fIlist\fR |
0 | 407 |
34 | 408 Replace \fIname\fR with a name to identify an online configuration. |
409 Set this to a filename (or a list of filenames) for the get configuration. | |
410 These files will be used to retrieve mail when called with the \-go option. | |
0 | 411 |
412 .TP | |
34 | 413 \fBident_trusted_nets = \fIlist\fR |
0 | 414 |
34 | 415 \fIlist\fR is a list of networks of the form a.b.c.d/e (e.g. 192.168.1.0/24), |
416 from which the ident given by the ident protocol will be trusted, | |
417 so a user can delete his mail from the queue if the ident is identical to his login name. | |
418 | |
0 | 419 .TP |
34 | 420 \fBerrmsg_file = \fIfile\fR |
0 | 421 |
34 | 422 Set this to a template which will be used to generate delivery failure reports. |
423 Variable parts within the template begin with a dollar sign and are identical | |
424 to those which can be used as arguments for the mda command, see \fBmda\fR above. | |
425 Additional information can be included with @failed_rcpts, @msg_headers and @msg_body, | |
426 these must be at the beginning of a line and will be replaced with the list of the failed recipients, | |
427 the message headers and the message body of the failed message. | |
0 | 428 |
429 Default is /usr/share/masqmail/tpl/failmsg.tpl. | |
430 | |
34 | 431 .TP |
432 \fBwarnmsg_file = \fIfile\fR | |
0 | 433 |
34 | 434 Set this to a template which will be used to generate delivery warning reports. |
435 It uses the same mechanisms for variables as \fBerrmsg_file\fR, see above. | |
0 | 436 |
437 Default is /usr/share/masqmail/tpl/warnmsg.tpl. | |
34 | 438 |
0 | 439 .TP |
34 | 440 \fBwarn_intervals\fR = \fIlist\fR |
0 | 441 |
34 | 442 Set this to a list of time intervals, at which delivery warnings |
443 (starting with the receiving time of the message) shall be generated. | |
0 | 444 |
34 | 445 A warning will only be generated just after an attempt to deliver the mail |
446 and if that attempt failed temporarily. | |
447 So a warning may be generated after a longer time, if there was no attempt before. | |
0 | 448 |
449 Default is "1h;4h;8h;1d;2d;3d" | |
34 | 450 |
0 | 451 .TP |
34 | 452 \fBmax_defer_time\fR = \fItime\fR |
0 | 453 |
34 | 454 This is the maximum time, in which a temporarily failed mail will be kept in the spool. |
455 When this time is exceeded, it will be handled as a delivery failure, | |
456 and the message will be bounced. | |
0 | 457 |
34 | 458 The excedence of this time will only be noticed if the message was actually tried to be delivered. |
459 If, for example, the message can only be delivered when online, | |
460 but you have not been online for that time, no bounce will be generated. | |
0 | 461 |
462 Default is 4d (4 days) | |
463 | |
34 | 464 .TP |
465 \fBlog_user = \fIname\fR | |
466 | |
467 Replace \fIname\fR with a valid local or remote mail address. | |
0 | 468 |
44 | 469 If this option is set, then a copy of every mail, |
470 that passes through the masqmail system will also be sent to the given mail address. | |
0 | 471 |
34 | 472 For example you can feed your mails into a program like hypermail |
473 for archiving purpose by placing an appropriate pipe command in masqmail.alias | |
0 | 474 |
34 | 475 |
0 | 476 .SH AUTHOR |
477 | |
34 | 478 Masqmail was written by Oliver Kurth. |
479 It is now maintained by Markus Schnalke <meillo@marmaro.de>. | |
0 | 480 |
34 | 481 You will find the newest version of masqmail at \fBhttp://prog.marmaro.de/masqmail/\fR. |
26
607221b0dac1
added myself as maintainer; updated URL of the website
meillo@marmaro.de
parents:
16
diff
changeset
|
482 There is also a mailing list, you will find information about it at masqmail's main site. |
0 | 483 |
34 | 484 |
0 | 485 .SH BUGS |
486 | |
34 | 487 Please report bugs to the mailing list. |
488 | |
0 | 489 |
490 .SH SEE ALSO | |
491 | |
34 | 492 \fBmasqmail(8)\fR, \fBmasqmail.route(5)\fR, \fBmasqmail.get(5)\fR |