masqmail

annotate man/masqmail.route.5 @ 317:55b7bde95d37

reworked allowed and denied addrs for routes The following refactorings had been made: - allowed_mail_locals + allowed_return_paths -> allowed_senders - not_allowed_mail_locals + not_allowed_return_paths -> denied_senders - allowed_rcpt_domains -> allowed_recipients - not_allowed_rcpt_domains -> denied_recipients The new options allow more consistent and more flexible matching.
author meillo@marmaro.de
date Thu, 28 Apr 2011 09:55:06 +0200
parents d596ac8b5afb
children 290da1595311
rev   line source
meillo@291 1 .TH masqmail.route 5 2010-12-08 masqmail-0.3.1 "File Formats"
meillo@34 2
meillo@0 3 .SH NAME
meillo@0 4 masqmail.route \- masqmail route configuration file
meillo@34 5
meillo@34 6
meillo@0 7 .SH DESCRIPTION
meillo@0 8
meillo@34 9 This man page describes the syntax of the route configuration files of \fBmasqmail (8)\fR.
meillo@34 10 Their usual locations are in \fI/etc/masqmail/\fR.
meillo@0 11
meillo@311 12 Mail will be sent with the SMTP protocol to its destination, unless
meillo@311 13 `pipe' is given.
meillo@311 14 In this case the message will be piped to the given program.
meillo@311 15
meillo@311 16
meillo@316 17 .SH ROUTE CONDITIONS
meillo@316 18
meillo@316 19 .TP
meillo@317 20 \fBallowed_senders\fR = \fIlist\fR
meillo@316 21
meillo@317 22 This is a semicolon `;' separated list of envelope sender addresses.
meillo@317 23 Messages which have one of these addresses as the return path (= mail
meillo@317 24 from) are allowed to use this route
meillo@317 25 (if not also in \fBdenied_senders\fR).
meillo@317 26
meillo@317 27 Glob patterns containing `?' and `*' can be used.
meillo@317 28 The special item "<>" matches the null sender address
meillo@317 29 (eg. failure notices or delivery notifications).
meillo@317 30 If the pattern doesn't contain an `@', it is seen as a pattern for the
meillo@317 31 local part only.
meillo@317 32
meillo@317 33 Example: \fImeillo;*@*example.org;web*@example.com\fP
meillo@317 34
meillo@317 35 (``meillo'' equals ``meillo@*'', i.e. the local part.)
meillo@316 36
meillo@316 37 .TP
meillo@317 38 \fBdenied_senders\fR = \fIlist\fR
meillo@316 39
meillo@317 40 This is a semicolon `;' separated list of envelope sender addresses.
meillo@317 41 Messages which have one of these addresses as the return path (=
meillo@317 42 mail from) will not
meillo@317 43 be sent using this route (even if also in \fBallowed_senders\fR).
meillo@317 44
meillo@317 45 Glob patterns containing `?' and `*' can be used.
meillo@317 46 The special item "<>" matches the null sender address
meillo@317 47 (eg. failure notices or delivery notifications).
meillo@317 48 If the pattern doesn't contain an `@', it is seen as a pattern for the
meillo@317 49 local part only.
meillo@317 50
meillo@317 51 Example: (see \fIallowed_senders\fP)
meillo@316 52
meillo@316 53 .TP
meillo@317 54 \fBallowed_recipients\fR = \fIlist\fR
meillo@316 55
meillo@317 56 A list of envelope recipient addresses where mail can be sent to using
meillo@317 57 this route.
meillo@317 58 This is for example useful if you use this route configuration when connected to another LAN via ppp.
meillo@317 59 Glob patterns containing `?' and `*' can be used.
meillo@316 60
meillo@317 61 Example: \fI*@example.org;*@*foo.bar\fP
meillo@317 62
meillo@317 63 (See also examples for \fIallowed_senders\fP)
meillo@316 64
meillo@316 65 .TP
meillo@317 66 \fBdenied_recipients\fR = \fIlist\fR
meillo@316 67
meillo@317 68 A list of envelope recipient addresses where mail will not be sent to
meillo@317 69 using this route.
meillo@316 70 This is for example useful if you send mail directly (\fBmail_host\fR is not set)
meillo@316 71 and you know of hosts that will not accept mail from you because they use a dialup list
meillo@316 72 (eg. \fBhttp://maps.vix.com/dul/\fR).
meillo@317 73 \fBdenied_recipients\fR overrules \fBallowed_recipients\fR.
meillo@317 74 Glob patterns containing `?' and `*' can be used.
meillo@317 75
meillo@317 76 Example: \fI*@spamblocker.example.org\fP
meillo@317 77
meillo@317 78 (See also examples for \fIallowed_senders\fP)
meillo@316 79
meillo@316 80 .TP
meillo@316 81 \fBlast_route\fR = \fIboolean\fR
meillo@316 82
meillo@316 83 If this is set, a mail which would have been delivered using this route,
meillo@316 84 but has failed temporarily, will not be tried to be delivered using the next route.
meillo@316 85
meillo@317 86 If you have set up a special route with filters using the lists
meillo@317 87 `allowed_recipients' and `allowed_senders' or their complements
meillo@317 88 (denied_),
meillo@316 89 and the mail passing these rules should be delivered using this route only,
meillo@316 90 you should set this to `true'.
meillo@316 91 Otherwise the mail would be passed to the next route (if any),
meillo@316 92 unless that route has rules which prevent that.
meillo@316 93
meillo@316 94 Default is false.
meillo@316 95
meillo@316 96
meillo@316 97 .SH SMTP CONFIGURATION
meillo@34 98
meillo@0 99 .TP
meillo@34 100 \fBmail_host\fR = \fIstring\fR
meillo@0 101
meillo@34 102 This is preferably the mail server of your ISP.
meillo@34 103 All outgoing messages will be sent to this host which will distribute them to their destinations.
meillo@34 104 If you do not set this mails will be sent directly.
meillo@34 105 Because the mail server is probably `near' to you, mail transfer will be much faster if you use it.
meillo@0 106
meillo@0 107 You can optionally give a port number following the host name and a colon, eg mail_host="mail.foo.com:25".
meillo@34 108
meillo@0 109 .TP
meillo@34 110 \fBresolve_list\fR = \fIlist\fR
meillo@0 111
meillo@34 112 Specify the method how the domain of the server is resolved.
meillo@34 113 Possible values are dns_mx, dns_a, byname.
meillo@34 114 For `dns_mx', the domain is assumed to be an MX pointer to a list of host names,
meillo@34 115 these will be tried each in order (lowest preference value first, equal preference values in random order).
meillo@34 116 For `dns_a', the domain is assumed to be an A pointer.
meillo@34 117 For `byname', the library function \fBgethostbyname(3)\fR will be used.
meillo@0 118
meillo@0 119 The default is "dns_mx;dns_a;byname".
meillo@34 120
meillo@0 121 .TP
meillo@34 122 \fBconnect_error_fail\fR = \fIboolean\fR
meillo@0 123
meillo@34 124 If this is set, a connection error will cause a mail delivery to fail, ie. it will be bounced.
meillo@34 125 If it is unset, it will just be defered.
meillo@0 126
meillo@34 127 Default is false.
meillo@34 128 The reason for this is that masqmail is designed for non permanent internet connections,
meillo@34 129 where such errors may occur quite often, and a bounce would be annoying.
meillo@0 130
meillo@171 131 For the default local_net route it is set to true.
meillo@34 132
meillo@0 133 .TP
meillo@34 134 \fBhelo_name\fR = \fIstring\fR
meillo@0 135
meillo@34 136 Set the name given with the HELO/EHLO command. If this is not set,
meillo@34 137 \fBhost_name\fR from \fImasqmail.conf\fR will be used,
meillo@34 138 if the \fBdo_correct_helo\fR option (see below) is unset.
meillo@0 139
meillo@0 140 .TP
meillo@34 141 \fBdo_correct_helo\fR = \fIboolean\fR
meillo@0 142
meillo@34 143 If this is set, masqmail tries to look up your host name as it appears
meillo@34 144 on the internet and sends this in the HELO/EHLO command.
meillo@34 145 Some servers are so picky that they want this.
meillo@34 146 Which is really crazy.
meillo@34 147 It just does not make any sense to lie about ones own identity,
meillo@34 148 because it can always be looked up by the server.
meillo@34 149 Nobody should believe in the name given by HELO/EHLO anyway.
meillo@34 150 If this is not set, \fBhost_name\fR from \fImasqmail.conf\fR or as given with
meillo@34 151 the \fBhelo_name\fR (see above) will be used.
meillo@0 152
meillo@0 153 .TP
meillo@222 154 \fBinstant_helo\fR = \fIboolean\fR
meillo@222 155
meillo@222 156 If this is set, masqmail does not wait for the greeting of the SMTP server
meillo@222 157 after opening the connection.
meillo@222 158 Instead it says EHLO right away (ESMTP is assumed).
meillo@222 159 Use this option with wrappers that eat the 220 greeting of the SMTP server.
meillo@223 160 Common examples are STARTTLS wrappers, like `openssl s_client -starttls smtp ...'.
meillo@222 161
meillo@222 162 If this option is set and a 220 greeting is received though,
meillo@222 163 everything should still work.
meillo@222 164 Please don't rely on that and keep in mind that RFC 2821 says that the client
meillo@222 165 SHOULD wait for the 220 greeting of the server.
meillo@222 166
meillo@222 167 Default: false
meillo@222 168
meillo@222 169 .TP
meillo@34 170 \fBdo_pipelining\fR = \fIboolean\fR
meillo@0 171
meillo@34 172 If this is set to false, masqmail will not use ESMTP PIPELINING,
meillo@34 173 even if the server announces that it is able to cope with it.
meillo@34 174 Default is true.
meillo@0 175
meillo@34 176 You do not want to set this to false unless the mail setup on the
meillo@34 177 remote server side is really broken.
meillo@34 178 Keywords: wingate.
meillo@0 179
meillo@0 180
meillo@0 181 .TP
meillo@316 182 \fBauth_name\fR = \fIstring\fR
meillo@0 183
meillo@316 184 Set the authentication type for ESMTP AUTH authentication.
meillo@316 185 Currently only `cram-md5' and `login' are supported.
meillo@0 186
meillo@0 187 .TP
meillo@316 188 \fBauth_login\fR = \fIstring\fR
meillo@0 189
meillo@316 190 Your account name for ESMTP AUTH authentication.
meillo@0 191
meillo@0 192 .TP
meillo@316 193 \fBauth_secret\fR = \fIstring\fR
meillo@0 194
meillo@316 195 Your secret for ESMTP AUTH authentication.
meillo@0 196
meillo@0 197 .TP
meillo@316 198 \fBwrapper\fR = \fIcommand\fR
meillo@0 199
meillo@316 200 If set, instead of opening a connection to a remote server,
meillo@316 201 \fIcommand\fR will be called and all traffic will be piped to its stdin and from its stdout.
meillo@316 202 Purpose is to tunnel ip traffic, eg. for ssl.
meillo@316 203
meillo@316 204 Example for SMTP over SSL tunneling:
meillo@316 205 .nf
meillo@316 206 wrapper="/usr/bin/openssl s_client \-quiet \-connect mail.gmx.net:465 2>/dev/null"
meillo@316 207 .fi
meillo@316 208
meillo@316 209 SMTP over SSL is supported since masqmail-0.1.8.
meillo@316 210 It is marked obsolete by the IETF but is still in use.
meillo@316 211
meillo@316 212
meillo@316 213 Example for encryption with STARTTLS (RFC-3207):
meillo@316 214 .nf
meillo@316 215 # don't forget the instant_helo, otherwise it won't work
meillo@316 216 instant_helo=true
meillo@316 217 wrapper="/usr/bin/openssl s_client \-quiet \-starttls smtp \-connect mail.gmx.net:25 2>/dev/null"
meillo@316 218 .fi
meillo@316 219
meillo@316 220 This is supported since masqmail-0.2.28.
meillo@316 221 STARTTLS supersedes SMTP over SSL.
meillo@316 222
meillo@316 223 Note for openssl:
meillo@316 224 Ensure that stderr is redirected.
meillo@316 225 Do *not* use \-crlf in the wrapper command, because masqmail does already insert CRLF.
meillo@316 226 However, you might want to specify \-crlf if you want to test your wrapper command
meillo@316 227 interactively on the command line.
meillo@316 228
meillo@316 229
meillo@316 230 .SH PIPE CONFIGURATION
meillo@0 231
meillo@0 232 .TP
meillo@316 233 \fBpipe\fR = \fIcommand\fR
meillo@0 234
meillo@316 235 \fIcommand\fR will be called and the message will be piped to its stdin.
meillo@316 236 Purpose is to use gateways to uucp, fax, sms or whatever else.
meillo@316 237
meillo@316 238 You can use variables to give as arguments to the command,
meillo@316 239 these are the same as for the mda in the main configuration, see \fBmasqmail.conf(5)\fR.
meillo@316 240
meillo@316 241 .TP
meillo@316 242 \fBpipe_fromline = \fIboolean\fR
meillo@316 243
meillo@316 244 Only if `pipe' is used.
meillo@316 245 A from line will be prepended to the output stream whenever a pipe command is called.
meillo@316 246 Default is false.
meillo@316 247
meillo@316 248 .TP
meillo@316 249 \fBpipe_fromhack = \fIboolean\fR
meillo@316 250
meillo@316 251 Only if `pipe' is used.
meillo@316 252 Each line beginning with `From ' is replaced with `>From ' whenever a pipe command is called.
meillo@316 253 You probably want this if you have set \fBpipe_fromline\fR above.
meillo@316 254 Default is false.
meillo@316 255
meillo@316 256
meillo@316 257 .SH ADDRESS REWRITE RULES
meillo@0 258
meillo@0 259 .TP
meillo@34 260 \fBset_h_from_domain\fR = \fIstring\fR
meillo@0 261
meillo@34 262 Replace the domain part in `From:' headers with this value.
meillo@34 263 This may be useful if you use a private, outside unknown address on your local LAN
meillo@141 264 and want this to be replaced by the domain of the address of your email address on the internet.
meillo@34 265 Note that this is different to \fBset_return_path_domain\fR, see below.
meillo@0 266
meillo@0 267 .TP
meillo@138 268 \fBset_h_reply_to_domain\fR = \fIstring\fR
meillo@138 269
meillo@138 270 Same as \fBset_h_from_domain\fP, but for the `Reply-To' header.
meillo@138 271
meillo@138 272 .TP
meillo@34 273 \fBset_return_path_domain\fR = \fIstring\fR
meillo@0 274
meillo@34 275 Sets the domain part of the envelope from address.
meillo@34 276 Some hosts check whether this is the same as the net the connection is coming from.
meillo@34 277 If not, they reject the mail because they suspect spamming.
meillo@34 278 It should be a valid address, because some mail servers also check that.
meillo@34 279 You can also use this to set it to your usual address on the internet
meillo@34 280 and put a local address only known on your LAN in the configuration of your mailer.
meillo@34 281 Only the domain part will be changed, the local part remains unchanged.
meillo@34 282 Use \fBmap_return_path_addresses\fR for rewriting local parts.
meillo@0 283
meillo@0 284 .TP
meillo@34 285 \fBmap_h_from_addresses\fR = \fIlist\fR
meillo@0 286
meillo@34 287 This is similar to \fBset_h_from_domain\fR, but more flexible.
meillo@34 288 Set this to a list which maps local parts to a full RFC 822 compliant email address,
meillo@34 289 the local parts (the keys) are separated from the addresses (the values) by colons (`:').
meillo@0 290
meillo@0 291 Example:
meillo@223 292 .nf
meillo@0 293 map_h_from_addresses = "john: John Smith <jsmith@mail.academic.edu>; charlie: Charlie Miller <cmiller@mx.commercial.com>"
meillo@223 294 .fi
meillo@0 295
meillo@0 296 You can use patterns, eg. * as keys.
meillo@34 297
meillo@0 298 .TP
meillo@34 299 \fBmap_h_reply_to_addresses\fR = \fIlist\fR
meillo@0 300
meillo@34 301 Same as \fBmap_h_from_addresses\fR, but for the `Reply-To:' header.
meillo@0 302
meillo@0 303 .TP
meillo@34 304 \fBmap_h_mail_followup_to_addresses\fR = \fIlist\fR
meillo@0 305
meillo@34 306 Same as \fBmap_h_from_addresses\fR, but for the `Mail-Followup-To:' header.
meillo@34 307 Useful when replying to mailing lists.
meillo@0 308
meillo@0 309 .TP
meillo@34 310 \fBmap_return_path_addresses\fR = \fIlist\fR
meillo@0 311
meillo@34 312 This is similar to \fBset_return_path_domain\fR, but more flexible.
meillo@34 313 Set this to a list which maps local parts to a full RFC 821 compliant email address,
meillo@34 314 the local parts (the keys) are separated from the addresses (the values) by colons (`:').
meillo@34 315 Note that this option takes RFC 821 addresses while \fBmap_h_from_addresses\fR takes RFC 822 addresses.
meillo@34 316 The most important difference is that RFC 821 addresses have no full name.
meillo@0 317
meillo@0 318 Example:
meillo@223 319 .nf
meillo@0 320 map_return_path_addresses = "john: <jsmith@mail.academic.edu>; charlie: <cmiller@mx.commercial.com>"
meillo@223 321 .fi
meillo@0 322
meillo@0 323 You can use patterns, eg. * as keys.
meillo@34 324
meillo@0 325 .TP
meillo@34 326 \fBexpand_h_sender_address\fR = \fIboolean\fR
meillo@0 327
meillo@34 328 This sets the domain of the sender address as given by the Sender: header
meillo@34 329 to the same address as in the envelope return path address
meillo@34 330 (which can be set by either \fBset_return_path_domain\fR or \fBmap_return_path_addresses\fR).
meillo@34 331 This is for mail clients (eg. Microsoft Outlook) which use this address as the sender address.
meillo@34 332 Though they should use the From: address, see RFC 821.
meillo@34 333 If \fBfetchmail(1)\fR encounters an unqualified Sender: address,
meillo@34 334 it will be expanded to the domain of the pop server, which is almost never correct.
meillo@34 335 Default is true.
meillo@0 336
meillo@0 337 .TP
meillo@34 338 \fBexpand_h_sender_domain\fR = \fIboolean\fR
meillo@0 339
meillo@34 340 Like \fBexpand_h_sender_address\fR, but sets the domain only.
meillo@34 341 Deprecated, will be removed in a later version.
meillo@0 342
meillo@34 343
meillo@0 344 .SH AUTHOR
meillo@0 345
meillo@34 346 Masqmail was written by Oliver Kurth.
meillo@34 347 It is now maintained by Markus Schnalke <meillo@marmaro.de>.
meillo@0 348
meillo@95 349 You will find the newest version of masqmail at \fBhttp://marmaro.de/prog/masqmail/\fR.
meillo@26 350 There is also a mailing list, you will find information about it at masqmail's main site.
meillo@0 351
meillo@34 352
meillo@0 353 .SH BUGS
meillo@0 354
meillo@34 355 Please report bugs to the mailing list.
meillo@0 356
meillo@0 357 .SH SEE ALSO
meillo@0 358
meillo@192 359 \fBmasqmail(8)\fR, \fBmasqmail.conf(5)\fR