# HG changeset patch # User meillo@marmaro.de # Date 1275162673 -7200 # Node ID f6a6f55b7b9e8475b0dc989bbbcb2cb9ca7fe222 # Parent 185ba6c0e6f09a40af9d37e4bef65c995b34cc89 added old manual from the old website it is dated May/July 2000 diff -r 185ba6c0e6f0 -r f6a6f55b7b9e docs/old-manual/README --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/old-manual/README Sat May 29 21:51:13 2010 +0200 @@ -0,0 +1,10 @@ +This is the old manual by oku, dated May/July 2000. At this time the +development must just have started with the 0.1 versions. + +Many things are still the same as then, but there are things that +changed. Please keep this in mind when you read the manual. + +Start reading at manual.html. + + +meillo diff -r 185ba6c0e6f0 -r f6a6f55b7b9e docs/old-manual/alias.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/old-manual/alias.html Sat May 29 21:51:13 2010 +0200 @@ -0,0 +1,84 @@ + + + + + + + + + +
+
+
The alias file consists of lines of the form: ++local_part: item1, item2, ... ++ + Items can be surrounded by quotes '"'. If within the quotes other +quotes are needed for an address they can be escaped with a leading +backslash '\'. + +A leading '\' indicates that this address shall not be further +expanded. + +A leading pipe symbol '|' indicates that the item shall be treated +as a pipe command. The content of the message will then be sent to the +standard input of a command. The command will run under the user id +and group id masqmail is running as. If quotes are needed, the pipe +symbol must appear within the quotes. + +Loops will be detected, the offending address will be ignored. + +Aliases will be expanded at delivery time. This means that +if there is a message still in the queue and you change any alias +which matches one of the recipient addresses, the change will have +effect next time a delivery is attemped. + +There is no need to restart masqmail or run any command when the +alias file has been changed. + | ||||
+ + + Oliver Kurth + Last modified: Tue May 30 15:19:57 CEST 2000 + + This page was created using Genpage - Version: 1.0.6 + + + |
+
The configuration consists of lines of the form + +val = expression + +Where val is a variable name and expression a string, +which can be quoted with '"'. If the expression is on multiple lines +or contains characters other than letters, digits or the charcaters +'.', '-', '_', '/', it must be quoted. Unfortunately, you +cannot use quotes inside quotes. (Will be implemented in a later +version.) + +Each val has a type, which can be boolean, numeric, string +or list. A boolean variable can be set with one of the values 'on', +'yes', and 'true' or 'off', 'no' and 'false'. List items are separated +with ';'. For some values patterns (like '*','?') can be used. The +spaces before and after the '=' are optional. + +Most lists (exceptions: local_hosts, local_nets and +listen_addresses) accept files. These will be recognized by a leading +slash '/'. The contents of these files will be included at the +position of the file name, there can be items or other files before +and after the file entry. The format of the files is different +though, within these files each entry is on another line. (And not +separated by semicolons). This makes it easy to include large lists +which are common in different configuration files, so they do not have +to appear in every configuration file. + +Blank lines and lines starting with '#' are ignored. + +Main Configuration+ +run_as_user, Type: boolean, default: false + +If this is set, masqmail runs with the user id of the user who +invoked it and never changes it. This is for debugging purposes +only. If the user is not root, masqmail will not be able to +listen on a port < 1000 and will not be able to deliver local mail +to others than the user. + +use_syslog, Type: boolean, default: false + +If this is set, masqmail uses syslogd for logging. It uses facility +MAIL. You still have to set log_dir for debug files. + +debug_level, Type: numeric, default: 0 + +Set the debug level. Valid values are 0 to 6, increasing it further +makes no difference. Be careful if you set this as high as 5 or higher, +the logs may very soon fill your hard drive. + +mail_dir, Type: string, default: none + +The directory where local mail is stored, usually /var/spool/mail. + +spool_dir, Type: string, default: none + +The directory where masqmail stores its spool files (and later also +other stuff). It must have a subdirectory +input. Masqmail needs read and write permissions for this +directory. I suggest to use /var/spool/masqmail. + +log_dir, Type: string, default: none + +The directory where masqmail puts its log files, these are +masqmail.log and debug.log. Masqmail needs write +permission. + +host_name, Type: string, default: none + +This is used in different places: Masqmail identifies itself in the +greeting banner on incoming connections and in the HELO/EHLO command +for outgoing connections with this name, it is used in the Received: +header and to qualify the sender of a locally originating message. + +It is not used to find whether an address is local. Use +local_hosts for that. + +local_hosts, Type: list, default: none + +A semicolon ';' separated list of hostnames which are considered +local. Normally you set it to "localhost;foo;foo.bar.com" if your host +has the fully qualified domain name 'foo.bar.com'. + +local_nets, Type: list, default: none + +A semicolon ';' separated list of hostnames which are on the +'local' net. Delivery to these hosts is attempted immediately. You can +use patterns with '*', eg. "*.bar.com". + +listen_addresses, Type: list, default: none + +A semicolon ';' separated list of interfaces on which connections +will be accepted. An interface ist defined by a hostname, optionally +followed by a colon ':' and a number for the port. If this is left out, +port 25 will be used. + +You can set this to "localhost:25;foo:25" if your hostname is 'foo'. + +do_queue, Type: boolean, default: false + +If this is set, mail will not be delivered immediately when +accepted. Same as calling masqmail with the -odq option. + +connect_route.<name>, Type: string, default: none + +Replace <name> with a name to identify a connection. Set this +to a filename for the special route configuration for that +connection. You will use that name to call masqmail with the -qo option +every time a connection to your ISP is set up. + +Example: Your ISP has the name FastNet. Then you write the +following line in the main configuration: + +connect_route.FastNet = "/etc/masqmail/fastnet.route"+ + /etc/masqmail/fastnet.route is the route configuration file, see +below. As soon as a link to FastNet has been set up, you call masqmail +-qoFastNet. Masqmail will then read the specified file and send the +mails. + +local_net_route, Type: string, default: none + +This is similar to connect_route.<name> but for the +local net. Recipient addresses that are in local_nets will be +routed using this route configuration. Main purpose is to define a +mail server with mail_host in your local network. In simple +environments this can be left unset. If unset, a default route +configuration will be used. + +alias_file + +Set this to the location of your alias file. If unset, no aliasing +will be done. + +online_detect, Type: string, default: none + +Defines the method MasqMail uses to detect whether there is +currently an online connection. It can have the values file +or mserver. + +When it is set to file, MasqMail first checks for the +existence of online_file (see below) and if it exists, it reads +it. The content of the file should be the name of the current +connection as defined with connect_route.<name> (without +a trailing newline character). + +When it is set to mserver, MasqMail connects to the +masqdialer server using the value of mserver_iface and asks it +whether a connection exists and for the name, which should be the name +of the current connection as defined with +connect_route.<name>. + +The online status is checked either when masqmail receives a mail +with an address outside your LAN or when called with the -qo option +(without arguments). + +online_file, Type: string, default: none + +This is the name of the file checked for when MasqMail determines +whether it is online. The file should only exist when there is +currently a connection. Create it in your ip-up script with eg. + ++echo -n <name> > /tmp/connect_route +chmod 0644 /tmp/connect_route ++ + Do not forget to delete it in your ip-down script. + +mserver_iface, Type: string, default: none + +The interface the masqdialer server is listening to. Usually this +will be "localhost:224" if mserver is running on the same host as +masqmail. But using this option, you can also let masqmail run on +another host by setting mserver_iface to another hostname, +eg. "foo:224". + +get.<name>, Type: string, default: none + +Replace <name> with a name to identify a get +configuration. Set this to a filename for the get +configuration. These files will be used to retrieve mail when called +with the -g option. + +Route Configuration+ +mail_host, Type: string, default: none + +This is preferably the mail server of your ISP. All outgoing +messages will be sent to this host which will distribute them to their +destinations. If you do not set this mails will be sent +directly. Because the mail server is probably 'near' to you, mail +transfer will be much faster if you use it. + +do_correct_helo, Type: boolean, default: false + +If this is set, masqmail tries to look up your host name as it +appears on the internet and sends this in the HELO/EHLO command. Some +servers are so picky that they want this. Which is really +crazy. It just does not make any sense to lie about ones own identity, +because it can always be looked up by the server. Nobody should +believe in the name given by HELO/EHLO anyway. If this is not +set, host_name will be used. + +allowed_mail_locals, Type: list, default: none(all) + +This is a semicolon ';' separated list of local parts which will be +allowed to send mail through this connection. If unset and +not_allowed_mail_locals is also unset, all users are +allowed. + +not_allowed_mail_locals, Type: list, default: none + +This is a semicolon ';' separated list of local parts which will be +not allowed to send mail through this connection. Local +parts in this list will not be allowed to use this route even if they +are part of allowed_mail_locals (see above). + +allowed_rcpt_domains, Type: list, default: none(all) + +A list of recipient domains where mail will be sent to. This is for +example useful if you use this route configuration when connected to +another LAN via ppp. Patterns containing '?' and '*' can be used. + +not_allowed_rcpt_domains, Type: list, default: none + +A list of recipient domains where mail will not be sent +to. This is for example useful if you send mail directly (mail_host +ist not set) and you know of hosts that will not accept mail from you +because they use a dialup list (eg. maps.vix.com/dul/). If any domain +matches both allowed_rcpt_domains and +not_allowed_rcpt_domains, mail will not be sent to +this domain. Patterns containing '?' and '*' can be used. + +set_h_from_domain, Type: string, default: none + +Replace the domain part in 'From:' headers with this value. This +may be useful if you use a private, outside unknown address on your +local LAN and want this to be replaced by the domain of the address of +your email addrsss on the internet. Note that this is different to +set_return_path_domain, see below. + +set_h_reply_to_domain, Type: string, default: none + +Same as set_h_from_domain, but for the 'Reply-To' header. + +set_return_path_domain, Type: string, default: none + +Sets the domain part of the envelope from address. Some hosts check +whether this is the same as the net the connection is coming from. If +not, they reject the mail because they suspect spamming. It should be +a valid address, because some mail servers also check +that. You can also use this to set it to your usual address on the +internet and put a local address only known on your LAN in the +configuration of your mailer. Only the domain part will +be changed, the local part remains unchanged. Use +map_return_path_addresses for rewriting local parts. + +map_h_from_addresses, Type: list, default: none + +This is similar to set_h_from_domain, but more flexible. Set +this to a list which maps local parts to a full RFC 822 compliant +email address, the local parts (the keys) are separated from +the addresses (the values) by colons (':'). + +Example: + ++map_h_from_addresses = +"john: John Smith <jsmith@mail.academic.edu>; +charlie: Charlie Miller <cmiller@mx.commercial.com>" ++ +map_h_reply_to_addresses, Type: list, default: none + + Same as map_h_from_addresses, but for the 'Reply-To:' header. + +map_return_path_addresses, Type: list, default: none + +This is similar to set_return_path_domain, but more +flexible. Set this to a list which maps local parts to a full RFC 821 +compliant email address, the local parts (the keys) are +separated from the addresses (the values) by colons +(':'). Note that this option takes RFC 821 addresses +while map_h_from_addresses takes RFC 822 addresses. The +most important difference is that RFC 821 addresses have no full +name. + +Example: ++map_return_path_addresses = +"john: <jsmith@mail.academic.edu>; +charlie: <cmiller@mx.commercial.com>" ++ +expand_h_sender_domain, Type: boolean, default: true + + This sets the domain of the sender address as given by the Sender: +header to the same domain as in the envelope return path address +(which can be set by either set_return_path_domain or +map_return_path_addresses). This is for mail clients +(eg. Microsoft Outlook) which use this address as the sender +address. Though they should use the From: address, see RFC +821. If fetchmail encounters an unqualified Sender: +address, it will be expanded to the domain of the pop server, which is +almost never correct. + +auth_name, Type: string, default: none + +Set the authentication type for ESMTP AUTH authentification. +Currently only 'cram-md5' is supported. + +auth_login, Type: string, default: none + +Your account name for ESMTP AUTH authentification. + +auth_secret, Type: string, default: none + +Your secret for ESMTP AUTH authentification. + +pop_login, Type: string, default: none + +If your Mail server requires SMTP-after-POP, set this to a +get configuration. If you login to the POP server +before you send, this is not necessary. See the get configuration for more information. + + | ||||
+ + + Oliver Kurth + Last modified: Tue May 30 15:19:56 CEST 2000 + + This page was created using Genpage - Version: 1.0.6 + + + |
masqmail+An offline Mail Transfer Agent+ + +Synopsis+ +/usr/sbin/masqmail [-C file] [-odq] [-bd] [-qinterval]+ +/usr/sbin/masqmail [-odq] [-bs] + +/usr/sbin/masqmail [-bp] + +/usr/sbin/masqmail [-q] + +/usr/sbin/masqmail [-qo [name]] + +/usr/sbin/masqmail [-odq] [-g [name]] + +/usr/sbin/masqmail [-odq] [-go [name]] + +/usr/sbin/masqmail [-t] [-oi] [-f address] [--] address... + +/usr/sbin/mailq + + + + + Description+ +MasqMail is a mail server designed for hosts that do +not have a permanent internet connection eg. a home network or a +single host at home. It has special support for connections to +different ISPs. It replaces sendmail or other MTAs such as qmail or +exim. It can also act as a pop3 client. + + + +Options+ +Since masqmail is intended to replace sendmail, it uses the same +command line options, but not all are implemented. There are also two +additional options, which are unique to masqmail (-qo connection and -g) + + + +-- +Not a 'real' option, it means that all following arguments are to +be understood as arguments and not as options even if they begin with a +leading dash '-'. Mutt is known to call sendmail with this option. + + + +-bd +Run as daemon, accepting connections, usually on port 25 if not +configured differently. This is usually used in the startup script at system boot and +together with the -q option (see below). + + + +-bi +Old sendmail rebuilds its alias database when invoked with this +option. Masqmail ignores it. Masqmail reads directly from the file +given with alias_file in the config file. + + + +-bp +Show the messages in the queue. Same as calling masqmail as +'mailq'. + + + +-bs +Accept SMTP commands from stdin. Some mailers (eg pine) use this +option as an interface. It can also be used to call masqmail from +inetd. + + + +-B arg +arg is usually 8BITMIME. Some mailers use this +to indicate that the message contains characters > 127. Masqmail is +8-bit clean and ignores this, so you do not have to recompile elm, +which is very painful ;-). Note though that this violates some +conventions: masqmail does not convert 8 bit messages to any +MIME format if it encounters a mail server which does not advertise +its 8BITMIME capability, masqmail does not advertise this itself. This +is the same practice as that of exim (but different to +sendmail). + + +-bV +Show version information. + + + + +-C filename +Use another configuration than /etc/masqmail/masqmail.conf. Useful for +debugging purposes. If not invoked by a privileged user, masqmail will drop all privileges. + + + + +-d number + +Set the debug level. This takes precedence before the value of +debug_level in the configuration file. Read the warning in the +description of the latter. + + + + + +-f [address] + +Set the return path address to address. Only root, the +user mail and anyoune in group trusted is allowed to do that. + + + + +-F [string] + +Set the full sender name (in the From: header) +to string. + + + + +-g [name] + +Get mail (using pop3 or apop), using the configurations given +with get.name in the main configuration. Without name, +all get configurations will be used. See also masqmail.get + + + + +-go [interval] [name] + +Can be followed by a connection name. Use this option in your +script which starts as soon as a link to the internet has been set up +(usually ip-up). When masqmail is called with this option, the +specified get configuration(s) is(are) read and mail will be +retrieved from servers on the internet. +The name is defined +in the configuration (see online_gets.name). + +If called with an interval option (recognized by a digit +as the first characater), masqmail starts as a daemon and tries to +get mail in these intervals. It checks for the online status first. +Example: masqmail -go 5m will retrieve mail +all five minutes. + +If called without name the online status is determined with +the configured method (see online_detect in config.html). + + + + + +-i +Same as -oi, see below. + + + +-Mrm list +Remove given messages from the queue. Only allowed for privileged users. + + + +-oem +If the -oi ist not also given, always return with a non zero +return code. Maybe someone tells me what this is good for... + + + +-odb +Deliver in background. Masqmail always does this, which +makes this option pretty much useless. + + + +-odq +Do not attempt to deliver immediately. Any messages will be queued +until the next queue running process picks them up and delivers +them. You get the same effect by setting the do_queue option in +/etc/masqmail/masqmail.conf. + + + +-oi +A dot as a single character in a line does not terminate +the message. + + + +-q [interval] +If not given with an argument, run a queue process, ie. try to +deliver all messages in the queue. Masqmail sends only to those +addresses that are on the local net, not to those that are +outside. Use -qo for those. ++If you have configured inetd to start masqmail, you can use this +option in a cron job which starts in regular time intervals, to mimic +the same effect as starting masqmail with -bd -q30m. + +An argument may be a time interval ie. a numerical value followed +by one of the letters. s,m,h,d,w which are interpreted as seconds, +minutes, hours, days or weeks respectively. Example: -q30m. Masqmail +starts as a daemon and a queue runner process will be started +automatically once in this time interval. This is usually used +together with -bd (see above). + + + + + +-qo [name] + +Can be followed by a connection name. Use this option in your +script which starts as soon as a link to the internet has been set up +(usually ip-up). When masqmail is called with this option, the +specified route configuration is read and the queued mail with +destinations on the internet will be sent. The name is defined +in the configuration (see online_routes.name). + +If called without name the online status is determined with +the configured method (see online_detect in config.html) + + + + + +-t +Read recipients from headers. Delete 'Bcc:' headers. If any +arguments are given, these are interpreted as recipient addresses and +the message will not be sent to these. + + + +-v +Log also to stdout. Currently, some log messages are +marked as 'write to stdout' and additionally, all messages with +priority 'LOG_ALERT' and 'LOG_WARNING' will be written to stdout +if this option is given. It is disabled in daemon mode. + + + + + +Environment for pipes and mdas+ + +For security reasons, before any pipe command from an alias +expansion or an mda is called, the environment variables will be +completely discarded and newly set up. These are: +SENDER, RETURN_PATH - the return path. +SENDER_DOMAIN - the domain part of the return path. +SENDER_LOCAL - the local part of the return path. +RECEIVED_HOST - the host the message was received from (unless local). +LOCAL_PART, USER, LOGNAME - the local part of the (original) recipient. +MESSAGE_ID - the unique message id. This is not necessarily identical with the Message ID as given in the Message ID: header. +QUALIFY_DOMAIN - the domain which will be appended to unqualified addresses. + + + + +Files+ +/etc/masqmail/masqmail.conf is the main configuration +for masqmail. Depending on the settings in this file, you will also +have other configuration files in /etc/masqmail/. +/etc/aliases is the alias file, if not set differently +in /etc/masqmail/masqmail.conf. +/var/spool/masqmail/ is the spool directory where masqmail +stores its spooled messages and the uniq pop ids. +/var/spool/mail/ is the directory where locally delivered mail will be put, if not configured differently in masqmail.conf. +/var/log/masqmail/ is the directory where masqmail stores +its log mesages. This can also be somewhere else if configured +differently by your sysadmin or the package mantainer. + + + +Conforming to+ +RFC 821, 822, 1869, 1870, 2197, 2554 (SMTP) +RFC 1725, 1939 (POP3) +RFC 1321 (MD5) +RFC 2195 (CRAM-MD5) + + + +Author+ +masqmail was written by Oliver Kurth
+ You will find the newest version of +masqmail at http://masqmail.cx/masqmail/ or search for it +in freshmeat (http://www.freshmeat.net). There is also a mailing list, +you will find information about it at masqmails main site. + + + +Bugs+ +You should report them to the mailing list. + + + +See also+ ++masqmail.conf, masqmail.route, masqmail.get, masqmail.aliases + + + + +Comments+ +This man page was written using xml2man by the same author. + + + + |
masqmail.aliases+masqmail alias file format+ + +Description+ +This man page describes the format of the masqmail alias file. Its usual location is /etc/aliases. + + + +File Format+ +The alias file consists of lines of the form: + +local_part: item1, item2, ... + + +Items can be surrounded by quotes '"'. If within the quotes other +quotes are needed for an address they can be escaped with a leading +backslash '\'. + +A leading '\' indicates that this address shall not be further +expanded. + +A leading pipe symbol '|' indicates that the item shall be treated +as a pipe command. The content of the message will then be sent to the +standard input of a command. The command will run under the user id +and group id masqmail is running as. If quotes are needed, the pipe +symbol must appear within the quotes. + +Loops will be detected, the offending address will be ignored. + +Aliases will be expanded at delivery time. This means that +if there is a message still in the queue and you change any alias +which matches one of the recipient addresses, the change will have +effect next time a delivery is attemped. + +There is no need to restart masqmail or run any command when the +alias file has been changed. + + + +Author+ +masqmail was written by Oliver Kurth
+ You will find the newest version of +masqmail at http://masqmail.cx/masqmail/ or search for it +in freshmeat (http://www.freshmeat.net). There is also a mailing list, +you will find information about it at masqmails main site. + + + +Bugs+ +You should report them to the mailing list. + + + +See also+ ++masqmail.conf, masqmail, + + + + +Comments+ +This man page was written using xml2man by the same author. + + + + |
masqmail.conf+masqmail configuration file+ + +Description+ +This man page describes the syntax of the main configuration file +of masqmail. Its usual location is /etc/masqmail/masqmail.conf + +The configuration consists of lines of the form + +val = expression + +Where val is a variable name and expression a string, +which can be quoted with '"'. If the expression is on multiple lines +or contains characters other than letters, digits or the characters +'.', '-', '_', '/', it must be quoted. You can use quotes inside quotes +by escaping them with a backslash. + +Each val has a type, which can be boolean, numeric, string +or list. A boolean variable can be set with one of the values 'on', +'yes', and 'true' or 'off', 'no' and 'false'. List items are separated +with ';'. For some values patterns (like '*','?') can be used. The +spaces before and after the '=' are optional. + +Most lists (exceptions: local_hosts, +local_nets, listen_addresses, online_routes and online_gets) accept +files. These will be recognized by a leading slash '/'. The contents +of these files will be included at the position of the file name, +there can be items or other files before and after the file entry. The +format of the files is different though, within these files each entry +is on another line. (And not separated by semicolons). This makes it +easy to include large lists which are common in different +configuration files, so they do not have to appear in every +configuration file. + +Blank lines and lines starting with '#' are ignored. + + + + +Options+ + +run_as_user = boolean + +If this is set, masqmail runs with the user id of the user who +invoked it and never changes it. This is for debugging purposes +only. If the user is not root, masqmail will not be able to +listen on a port < 1024 and will not be able to deliver local mail +to others than the user. + + + + +use_syslog = boolean + +If this is set, masqmail uses syslogd for logging. It uses facility +MAIL. You still have to set log_dir for debug files. + + + + +debug_level = n + +Set the debug level. Valid values are 0 to 6, increasing it further +makes no difference. Be careful if you set this as high as 5 or higher, +the logs may very soon fill your hard drive. + + + + +mail_dir = file + +The directory where local mail is stored, +usually /var/spool/mail or /var/mail. + + + + +spool_dir = file + +The directory where masqmail stores its spool files (and later also +other stuff). It must have a subdirectory input. +Masqmail needs read and write permissions for this +directory. I suggest to use /var/spool/masqmail. + + + + +host_name = string + +This is used in different places: Masqmail identifies itself in the +greeting banner on incoming connections and in the HELO/EHLO command +for outgoing connections with this name, it is used in the Received: +header and to qualify the sender of a locally originating message. + +If the string begins with a slash '/', it it assumed that it is a +filename, and the first line of this file will be used. Usually this will +be '/etc/mailname' to make masqmail conform to Debian policies. + +It is not used to find whether an address is local. +Use local_hosts for that. + + + + +remote_port = n + +The remote port number to be used. This defaults to port 25. +This option is deprecated. Use host_name in the route +configuration instead. See masqmail.route. + + + + +local_hosts = list + +A semicolon ';' separated list of hostnames which are considered +local. Normally you set it to "localhost;foo;foo.bar.com" if your host +has the fully qualified domain name 'foo.bar.com'. + + + + +local_nets = list + +A semicolon ';' separated list of hostnames which are on the +'local' net. Delivery to these hosts is attempted immediately. You can +use patterns with '*', eg. "*.bar.com". + + + + +local_addresses = list + +A semicolon ';' separated list of fully qualified email-addresses +which are considered local although their domain name part is not in +the list of local_hosts. +For example: There are two people working at your +LAN: person1@yourdomain and person2@yourdomain. But there are +other persons @yourdomain which are NOT local. So you can not put +yourdomain to the list of local_hosts. If person1 now wants +to write to person2@yourdomain and this mail should not leave the LAN +then you can put +local_addresses = "person1@yourdomain;person2@yourdomain" +to your masqmail.conf. + + + + +not_local_addresses = list + +A semicolon ';' separated list of fully qualified email-addresses +which are considered not local although their domain name part is in +the list of local_hosts. +This ist the opposite of the previous case. The majority of addresses +of a specific domain are local. But some users are not. With this +option you can easily exclude these users. +Example: +local_hosts = "localhost;myhost;mydomain.net" +not_local_addresses = "eric@mydomain.net" + + + + +listen_addresses = list + +A semicolon ';' separated list of interfaces on which connections +will be accepted. An interface ist defined by a hostname, optionally +followed by a colon ':' and a number for the port. If this is left out, +port 25 will be used. +You can set this to "localhost:25;foo:25" if your hostname is 'foo'. +Note that the names are resolved to IP addreses. If your host has +different names which resolve to the same IP, use only one of them, +otherwise you will get an error message. + + + + + +do_save_envelope_to = boolean + +If this is set to true, a possibly existing Envelope-to: header in an +incoming mail which is received via either pop3 or smtp will be saved as +an X-Orig-Envelope-to: header. +This is useful if you retrieve mail from a pop3 server with either masqmail +or fetchmail, and the server supports Envelope-to: headers, and you want to make use +of those with a mail filtering tool, eg. procmail. It cannot be preserved because +masqmail sets such a header by itself. +Default is false. + + + + +do_relay = boolean + +If this is set to false, mail with a return path that is not local and a +destination that is also not local will not be accepted via smtp and a 550 +reply will be given. Default is true. +Note that this will not protect you from spammers using open relays, but from +users unable to set their address in their mail clients. + + + + +do_queue = boolean + +If this is set, mail will not be delivered immediately when +accepted. Same as calling masqmail with the -odq option. + + + + +online_routes.name = list + + +Replace name with a name to identify a connection. Set this +to a filename (or a list of filenames) for the special route configuration for that +connection. You will use that name to call masqmail with the + -qo option every time a connection to your ISP is set +up. + +Example: Your ISP has the name FastNet. Then you write the +following line in the main configuration: + +online_routes.FastNet = "/etc/masqmail/fastnet.route" + +/etc/masqmail/fastnet.route is the route configuration +file, see masqmail.route. As soon as a link to FastNet has been set up, you +call masqmail -qo FastNet. Masqmail will then +read the specified file and send the mails. + + + + + +connect_route.name = list + +Old name for online_routes. + + + + + +local_net_route = file + +This is similar to online_routes.name but for the +local net. Recipient addresses that are in local_nets will be +routed using this route configuration. Main purpose is to define a +mail server with mail_host in your local network. In simple +environments this can be left unset. If unset, a default route +configuration will be used. + + + + +alias_file = file + +Set this to the location of your alias file. If unset, no aliasing +will be done. + + + + +alias_local_caseless = boolean + +If this is set, local parts in the alias file will be matched +disregarding upper/lower case. + + + + +pipe_fromline = boolean + +If this is set, a from line will be prepended to the output stream whenever +a pipe command is called after an alias expansion. Default is false. + + + + +pipe_fromhack = boolean + +If this is set, each line beginning with 'From ' is replaced with '>From ' whenever +a pipe command is called after an alias expansion. You probably want this if you have +set pipe_fromline above. Default is false. + + + + +mbox_default = string + +The default local delivery method. Can be one of mbox, mda or +maildir (the latter only if maildir support is enabled at compile +time). Default is mbox. You can override this for each user by using +the mbox_users, mda_users or maildir_users options +(see below). + + + + + +mbox_users = list + +A list of users which wish delivery to an mbox style mail folder. + + + + +mda_users = list + +A list of users which wish local delivery to an mda. You have to +set mda (see below) as well. + + + + +maildir_users = list + +A list of users which wish delivery to a qmail style maildir. The +path to maildir is ~/Maildir/. The maildir will be created if it +does not exist. + + + + +mda = expand string + +If you want local delivery to be transferred to an mda (Mail +Delivery Agent), set this to a command. The argument will be expanded +on delivery time, you can use variables beginning with a '$' sign, +optionally enclosed in curly braces. Variables you can use are: +uid - the unique message id. This is not necessarily identical with +the Message ID as given in the Message ID: header. +received_host - the host the mail was received from +ident - the ident, this is either the ident delivered by the ident +protocol or the user id of the sender if the message was received locally. +return_path_local - the local part of the return path (sender). +return_path_domain - the domain part of the return path (sender). +return_path - the complete return path (sender). +rcpt_local - the local part of the recipient. +rcpt_domain - the domain part of the recipient. +rcpt - the complete recipient address. +Example: mda="/usr/bin/procmail -Y -d ${rcpt_local}" +For the mda, as for pipe commands, a few environment variables will +be set as well. See masqmail. To use environment variables for the mda, +the '$' sign has to be escaped with a backslash, otherwise they will +be tried to be expanded with the internal variables. + + + + + +mda_fromline = boolean + +If this is set, a from line will be prepended to the output stream whenever +a message is delivered to an mda. Default is false. + + + + +mda_fromhack = boolean + +If this is set, each line beginning with 'From ' is replaced with '>From ' whenever +a message is delivered to an mda. You probably want this if you have +set mda_fromline above. Default is false. + + + + +online_detect = string + +Defines the method MasqMail uses to detect whether there is +currently an online connection. It can have the +values file, pipe or mserver. + +When it is set to file, MasqMail first checks for the +existence of online_file (see below) and if it exists, it reads +it. The content of the file should be the name of the current +connection as defined with connect_route.name (without +a trailing newline character). + +When it is set to pipe, MasqMail calls the executable given by +the online_pipe option (see below) and reads the current online +status from its standard output. + +When it is set to mserver, MasqMail connects to the +masqdialer server using the value of mserver_iface and asks it +whether a connection exists and for the name, which should be the name +of the current connection as defined with connect_route.name. + +No matter how MasqMail detects the online status, only messages +that are accepted at online time will be delivered using the +connection. The spool still has to be emptied with masqmail -qo +connection. + + + + +online_file = file + +This is the name of the file checked for when MasqMail determines +whether it is online. The file should only exist when there is +currently a connection. Create it in your ip-up script with eg. + +echo -n chmod 0644 /tmp/connect_route + +Do not forget to delete it in your ip-down script. + + + + +online_pipe = file + +This is the name of the executable which will be called to determine +the online status. This executable should just print the name oif the current +connection to the standard output and return a zero status code. masqmail assumes +it is offline if the script returns with a non zero status. Simple example: + +#!/bin/sh + +[ -e /tmp/connect_route ] || exit 1 +cat /tmp/connect_route +exit 0 + +Of course, instead of the example above you could as well use file as +the online detection method, but you can do something more sophisticated. + + + + +mserver_iface = interface + +The interface the masqdialer server is listening to. Usually this +will be "localhost:224" if mserver is running on the same host as +masqmail. But using this option, you can also let masqmail run on +another host by setting mserver_iface to another hostname, +eg. "foo:224". + + + + +get.name = file + +Replace name with a name to identify a get +configuration. Set this to a filename for the get configuration. These +files will be used to retrieve mail when called with the -g option. + + + + +online_gets.name = list + +Replace name with a name to identify an online +configuration. Set this to a filename (or a list of filenames) for the get configuration. These +files will be used to retrieve mail when called with the -go option. + + + + +ident_trusted_nets = list + +list is a list of networks of the form a.b.c.d/e +(eg. 192.168.1.0/24), from which the ident given by the ident protocol +will be trusted, so a user can delete his mail from the queue if the +ident is identical to his login name. + + + + +errmsg_file = file + +Set this to a template which will be used to generate delivery failure +reports. Variable parts within the template begin with a dollar sign and +are identical to those which can be used as arguments for the mda command, +see mda above. Additional information can be included with +@failed_rcpts, @msg_headers and @msg_body, these must be at the +beginning of a line and will be replaced with the list of the failed recipients, +the message headers and the message body of the failed message. +Default is /usr/share/masqmail/tpl/failmsg.tpl. + + + + +warnmsg_file = file + +Set this to a template which will be used to generate delivery warning +reports. It uses the same mechanisms for variables as errmsg_file, +see above. + +Default is /usr/share/masqmail/tpl/warnmsg.tpl. + + + + +warn_intervals = list + +Set this to a list of time intervals, at which delivery warnings (starting +with the receiving time of the message) shall be generated. +A warning will only be generated just after an attempt to deliver the +mail and if that attempt failed temporarily. So a warning may be generated after +a longer time, if there was no attempt before. +Default is "1h;4h;8h;1d;2d;3d" + + + + +max_defer_time = time + +This is the maximum time, in which a temporarily failed mail will be kept +in the spool. When this time is exceeded, it will be handled as a delivery failure, +and the message will be bounced. +The excedence of this time will only be noticed if the message was actually +tried to be delivered. If, for example, the message can only be delivered when +online, but you have not been online for that time, no bounce will be generated. +Default is 4d (4 days) + + + + +log_user = name + +Replace name with a valid local or remote mail address. +If this option is not empty, then a copy of every mail, +that passes trough the masqmail system will also be sent to the +given mail address. +For example you can feed your mails into a program like hypermail for +archiving purpose by placing an appropriate pipe command in masqmail.alias + + + + + +Author+ +masqmail was written by Oliver Kurth
+ You will find the newest version of +masqmail at http://masqmail.cx/masqmail/ or search for it +in freshmeat (http://www.freshmeat.net). There is also a mailing list, +you will find information about it at masqmails main site. + + + +Bugs+ +You should report them to the mailing list. + + + +See also+ ++masqmail, masqmail.route, masqmail.get + + + + + +Comments+ +This man page was written using xml2man by the same +author. + + + + |
masqmail.get+masqmail get configuration file+ + +Description+This man page describes the options available for the +masqmail get configuration. + + + + +Options+ + + +protocol = string + +The protocol with which you retrieve your mail. Currently only +'pop3' and 'apop' are supported. There is no default. + + + + +server = string + +The server you get your mail from. + + + + +resolve_list = list + +Specify the method how the domain of the server is resolved. Possible values are +dns_mx, dns_a, byname. For 'dns_mx', the domain is assumed to be an MX +pointer to a list of host names, these will be tried each in order +(lowest preference value first, equal preference values in random +order). For 'dns_a', the domain is assumed to be an A pointer. For +'byname', the library function gethostbyname (3) will be used. +The default is "dns_a;byname". It does not make much sense here to use 'dns_mx'. + + + + +user = string + +Your login name. + + + + +pass = string + +Your password. + + + + +address = address + +The address where the retrieved mail should be sent to. It can be +any address, but you probably want to set this to a local address on +your LAN. + + + + +return_path = address + +If set, masqmail sets the return path to this address. Bounces +generated during further delivery will be sent to this address. If +unset, masqmail looks for the Return-Path: header in the mail, if +this does not exist it uses the From: address and if this fails, +postmaster will be used. + +It is in most cases not useful to set this to the same address as +the 'address' option as this may generate multiple bounces. +postmaster is recommended. + + + + +do_keep = boolean + +If you want to keep your mail on the server after you retrieved it, +set this to true. It is recommended that you also set do_uidl, +otherwise you will get the mail again each time you connect to the +server. Masqmail does not check any headers before it retrieves mail, +which may mark it as already fetched. Note that this behaviour is +different to that of fetchmail. The default is false. + + + + +do_uidl = boolean + +If set, MasqMail keeps a list of unique IDs of mails already +fetched, so that they will not be retrieved again. Default is false. + + + + +do_uidl_dele = boolean + +If set, and do_uidl is also set, MasqMail sends a delete (DELE) +command to the server for each message uid in the uid listing at the +beginning of the session. This prevents mail to be left on the server if +masqmail gets interrupted during a session before it can send the QUIT +command to the server. Default is false. + + + + + +max_size = numeric + +If set to a value > 0, only messages smaller than this in bytes will be +retrieved. The default is 0. + + + + +max_count = numeric + +If set to a value > 0, only max_count messages will be retrieved. +The default is 0. + + + + +wrapper = command + +If set, instead of opening a connection to a remote server, command will +be called and all traffic will be piped to its +stdin and from its stdout. Purpose is to tunnel ip traffic, eg. for ssl. +Example for ssl tunneling: +wrapper="/usr/bin/openssl s_client -quiet -connect pop.gmx.net:995 2>/dev/null" + + + + + +Author+ +masqmail was written by Oliver Kurth
+ You will find the newest version of +masqmail at http://masqmail.cx/masqmail/ or search for it +in freshmeat (http://www.freshmeat.net). There is also a mailing list, +you will find information about it at masqmails main site. + + + +Bugs+ +You should report them to the mailing list. + + + +See also+ ++masqmail, masqmail.route, masqmail.conf + + + + +Comments+ +This man page was written using xml2man by the same +author. + + + + |
masqmail.route+masqmail route configuration file+ + +Description+ +This man page describes the syntax of the route configuration files +of masqmail. Their usual locations are in /etc/masqmail/. + + + +Options+ + + +protocol = string + +string can be one of 'smtp' or 'pipe', default is +'smtp'. If set to 'smtp', mail will be sent with the SMTP protocol to +its destination. If set to 'pipe', you also have to set 'pipe' +to a command, the message will then be piped to a program. See option 'pipe' below. + + + + +mail_host = string + +This is preferably the mail server of your ISP. All outgoing +messages will be sent to this host which will distribute them to their +destinations. If you do not set this mails will be sent +directly. Because the mail server is probably 'near' to you, mail +transfer will be much faster if you use it. +You can optionally give a port number following the host name +and a colon, eg mail_host="mail.foo.com:25". + + + + +resolve_list = list + +Specify the method how the domain of the server is resolved. Possible values are +dns_mx, dns_a, byname. For 'dns_mx', the domain is assumed to be an MX +pointer to a list of host names, these will be tried each in order +(lowest preference value first, equal preference values in random +order). For 'dns_a', the domain is assumed to be an A pointer. For +'byname', the library function gethostbyname (3) will be used. +The default is "dns_mx;dns_a;byname". + + + + +connect_error_fail = boolean + +If this is set, a connection error will cause a mail delivery to +fail, ie. it will be bounced. If it is unset, it will just be defered. +Default is false. The reason for this is that masqmail is designed +for non permanent internet connections, where such errors may occur +quite often, and a bounce would be annoying. +For the default local_net route is is set to true. + + + + +helo_name = string + +Set the name given with the HELO/EHLO command. If this is not +set, host_name from masqmail.conf will be used, if +the do_correct_helo option (see below) is unset. + + + + +do_correct_helo = boolean + +If this is set, masqmail tries to look up your host name as it +appears on the internet and sends this in the HELO/EHLO command. Some +servers are so picky that they want this. Which is really +crazy. It just does not make any sense to lie about ones own identity, +because it can always be looked up by the server. Nobody should +believe in the name given by HELO/EHLO anyway. If this is not +set, host_name from masqmail.conf or as given with +the helo_name (see above) will be used. + + + + +do_pipelining = boolean + +If this is set to false, masqmail will not use ESMTP PIPELINING, even +if the server announces that it is able to cope with it. Default is true. +You do not want to set this to false unless the mail setup on the +remote server side is really broken. Keywords: wingate. + + + + +allowed_mail_locals = list + +This is a semicolon ';' separated list of local parts which will be +allowed to send mail through this connection. If unset +and not_allowed_mail_locals is also unset, all users are +allowed. + + + + +not_allowed_mail_locals = list + +This is a semicolon ';' separated list of local parts which will be +not allowed to send mail through this connection. Local +parts in this list will not be allowed to use this route even if they +are part of allowed_mail_locals (see above). + + + + +allowed_return_paths = list + +This is a semicolon ';' separated list of addresses. Messages which +have one one of these addresses as the return path will be used using +this route (if not also in not_allowed_return_paths or an item +in not_allowed_mail_locals matches). +Patterns containing '?' and '*' can be used. The special item "<>" matches +the null sender address (eg. failure notices or delivery notifications). + + + + +not_allowed_return_paths = list + +This is a semicolon ';' separated list of addresses. Messages which +have one one of these addresses as the return path will not be used using +this route (even if also in allowed_return_paths or an item +in allowed_mail_locals matches). +Patterns containing '?' and '*' can be used. The special item "<>" matches +the null sender address (eg. failure notices or delivery notifications). + + + + +allowed_rcpt_domains = list + +A list of recipient domains where mail will be sent to. This is for +example useful if you use this route configuration when connected to +another LAN via ppp. Patterns containing '?' and '*' can be used. + + + + +not_allowed_rcpt_domains = list + +A list of recipient domains where mail will not be sent +to. This is for example useful if you send mail directly (mail_host is +not set) and you know of hosts that will not accept mail from you +because they use a dialup list (eg. http://maps.vix.com/dul/. If any domain +matches both allowed_rcpt_domains and not_allowed_rcpt_domains, +mail will not be sent to this domain. Patterns containing '?' and '*' can be used. + + + + +set_h_from_domain = string + +Replace the domain part in 'From:' headers with this value. This +may be useful if you use a private, outside unknown address on your +local LAN and want this to be replaced by the domain of the address of +your email addrsss on the internet. Note that this is different to +set_return_path_domain, see below. + + + + +set_return_path_domain = string + +Sets the domain part of the envelope from address. Some hosts check +whether this is the same as the net the connection is coming from. If +not, they reject the mail because they suspect spamming. It should be +a valid address, because some mail servers also check +that. You can also use this to set it to your usual address on the +internet and put a local address only known on your LAN in the +configuration of your mailer. Only the domain part will +be changed, the local part remains unchanged. Use +map_return_path_addresses for rewriting local parts. + + + + +map_h_from_addresses = list + +This is similar to set_h_from_domain, but more flexible. Set +this to a list which maps local parts to a full RFC 822 compliant +email address, the local parts (the keys) are separated from +the addresses (the values) by colons (':'). + +Example: + +map_h_from_addresses = "john: John Smith You can use patterns, eg. * as keys. + + + + +map_h_reply_to_addresses = list + +Same as map_h_from_addresses, but for the 'Reply-To:' header. + + + + +map_h_mail_followup_to_addresses = list + +Same as map_h_from_addresses, but for the 'Mail-Followup-To:' +header. Useful when replying to mailing lists. + + + + +map_return_path_addresses = list + +This is similar to set_return_path_domain, but more +flexible. Set this to a list which maps local parts to a full RFC 821 +compliant email address, the local parts (the keys) are +separated from the addresses (the values) by colons +(':'). Note that this option takes RFC 821 addresses +while map_h_from_addresses takes RFC 822 addresses. The +most important difference is that RFC 821 addresses have no full +name. + +Example: +
+map_return_path_addresses =
+"john: You can use patterns, eg. * as keys. + + + + +expand_h_sender_address = boolean + +This sets the domain of the sender address as given by the Sender: +header to the same address as in the envelope return path address +(which can be set by either set_return_path_domain or map_return_path_addresses). +This is for mail clients (eg. Microsoft Outlook) which use this address as the sender +address. Though they should use the From: address, see RFC +821. If fetchmail encounters an unqualified Sender: +address, it will be expanded to the domain of the pop server, which is +almost never correct. Default is true. + + + + +expand_h_sender_domain = boolean + +Like expand_h_sender_address, but sets the domain only. +Deprecated, will be removed in a later version. + + + + +last_route = boolean + +If this is set, a mail which would have been delivered using this +route, but has failed temporarily, will not be tried to be delivered +using the next route. +If you have set up a special route with filters using the lists +'allowed_rcpt_domains', 'allowed_return_paths', and +'allowed_mail_locals' or their complements (not_), and the mail +passing these rules should be delivered using this route only, you +should set this to 'true'. Otherwise the mail would be passed to the +next route (if any), unless that route has rules which prevent +that. +Default is false. + + + + +auth_name = string + +Set the authentication type for ESMTP AUTH authentification. +Currently only 'cram-md5' and 'login' are supported. + + + + +auth_login = string + +Your account name for ESMTP AUTH authentification. + + + + +auth_secret = string + +Your secret for ESMTP AUTH authentification. + + + + +pop3_login = file + +If your Mail server requires SMTP-after-POP, set this to a +get configuration (see masqmail.get). +If you login to the POP server +before you send, this is not necessary. + + + + +wrapper = command + +If set, instead of opening a connection to a remote server, command will +be called and all traffic will be piped to its +stdin and from its stdout. Purpose is to tunnel ip traffic, eg. for ssl. +Example for ssl tunneling: +wrapper="/usr/bin/openssl s_client -quiet -connect pop.gmx.net:995 2>/dev/null" + + + + +pipe = command + +If set, and protocol is set to 'pipe', command will be +called and the message will be piped to its stdin. Purpose is to use +gateways to uucp, fax, sms or whatever else. +You can use variables to give as arguments to the command, these +are the same as for the mda in the main configuration, see masqmail.conf. + + + + +pipe_fromline = boolean + +If this is set, and protocol is set to 'pipe', a from line will be prepended to the output stream whenever +a pipe command is called. Default is false. + + + + +pipe_fromhack = boolean + +If this is set, and protocol is set to 'pipe', each line beginning with 'From ' +is replaced with '>From ' whenever a pipe command is called. You probably want this if you have +set pipe_fromline above. Default is false. + + + + + +Author+ +masqmail was written by Oliver Kurth
+ You will find the newest version of +masqmail at http://masqmail.cx/masqmail/ or search for it +in freshmeat (http://www.freshmeat.net). There is also a mailing list, +you will find information about it at masqmails main site. + + + +Bugs+ +You should report them to the mailing list. + + + +See also+ ++masqmail, masqmail.conf, masqmail.get + + + + +Comments+ +This man page was written using xml2man by the same +author. + + + + |
+
General Questions+
Setup+
Header Rewriting+ + +Delivering Online+
Bugs+
1.0: When do I need MasqMail?+ +You do not need it. But it makes sending mails via a + dialup connection a lot easier. + +It is useful if you dial to the internet from time to time via a + modem and connect to different providers, each one with a different + configuration. Other MTAs are not flexible enough if you have to send + mails via different mail servers for each provider. With MasqMail you + can configure a different one for each provider and even set your + return addresses differently. + +It is also useful if you have a LAN with a gateway which is + connected to the internet via a modem because you can rewrite your + address depending on whether the recipients are inside or + outside your LAN. So responses and delivery failures on your + LAN will be sent to you without leaving it, while those outside will + be delivered to your address outside. (But it does not yet send + delivery failures itself yet.) + +MasqMail is also often used on notebooks. + +1.1: When do I not need MasqMail?+ +The use of MasqMail is strongly discouraged if you have a + permanent connection to the internet without a firewall. First because + it does not have the ability to block relaying (it relays every mail) + and second because there are no capabilities to protect against + SPAM. You will not take advantages of its features anyway. + +1.2: Can I retrieve mail with MasqMail?+ +Yes, for version >= 0.1.0 you can retrieve mail via the POP3 and + APOP protocol from single drop mailboxes (in case you do not know + about single/mutidrop, you probaby use single drop mailboxes). + +You can also use fetchmail or other pop/imap clients to feed + it. + +1.3: Is there a mailing list for MasqMail?+ +Yes, there is! See here. + +2.0: After starting masmail, I get the following + message: "could not gain root privileges. Is the setuid bit set?"+ +Set the set-user-id-bit with chmod u+s /usr/sbin/masqmail. + +2.1: After starting masmail, I get the following + message: "bind: (terminating): Address already in use"+ +This means that there is already a process listening on a port, + usually 25. You either have another MTA running in background + (sendmail, exim, etc...) or another instance of masqmail. + +It may also mean that the ports you configured MM to listen to + (with 'listen_addresses') are on the same IP address, eg. you may have + set your hostname to 127.0.0.1 and try to listen on localhost and your + host name. In this case either set your hostname to another IP address + or delete one of the conflicting entries. + +3.0: My friends told me that they do not see my full + name in their inbox, although it is configured in my mail + client.+ +You probably used the map_h_from_addresses feature in the + route configuration and forgot to set your real name. The syntax + is: + ++map_h_from_addresses = "charlie:Charlie Miller <cmiller@foo.com>"; ++ + Do not forget the Charlie Miller. + +4.0: With connection method file, I get the + following message in the log file: "Could not open /tmp/connect_route: + Permission denied".+ +In your ip-up script, you have to set read permission to the user
+ masqmail runs as. After you write the file with the connection name,
+ set read permission to all with chmod ugo+r file.
+
+ Check whether the name in the file is really identical to name you + gave to the route configuration (case sensitive!). Maybe there is a + linefeed after the name in the file. Write it with echo -n. + +5.0: I found a bug.+ +Make sure you are using the newest version, in case of doubt search + it in freshmeat. If you do, tell + me. See + also the section bugs on the main page. + +5.1: I think I found a bug, but I am not sure + whether I configured MasqMail incorrectly.+ +Don't care. Tell me. Or write to the mailing + list. + + | |||
+ + + Oliver Kurth + Last modified: Tue May 30 15:19:56 CEST 2000 + + This page was created using Genpage - Version: 1.0.6 + + + |
+
You need a user and a group for masqmail to run, I suggest user +'mail' and group 'trusted'. Say: + ++groupadd -g 42 trusted +useradd -u 42 -g 42 -d / -s /bin/sh -c "Mail Transfer Agent" mail ++ + If you use other names than mail and trusted use the options +described below for configure. The 42 is just a suggestion, you can +use any number you like, but preferably one < 100. It does not have +to be the same for the user 'mail' and the group 'trusted'. + +Compliling is a matter of the usual procedure: + +In the source directory, after unpacking do:+ + +./configure +make +make install ++ + Optionally, after you have called make, you can make some tests in +the tests directory. Read the README in that directory for +instructions. + +Additional options for configure:+ ++--with-user=USER sets the user as which MasqMail will run. Default is +mail. USER has to exist before you 'make install'. + +--with-group=GROUP sets the group as which MasqMail will run. Default +is trusted. GROUP has to exist before you 'make install'. + +--with-logdir=LOGDIR sets the directory where MasqMail stores its log +files. It will be created if it does not exist. Default is /var/masqmail/. + +--with-spooldir=SPOOLDIR sets the directory where MasqMail stores its +spool files. It will be created if it does not exist. Default is +/var/spool/masqmail/. + +--enable-auth enables ESMTP AUTH support (disabled by default) + +--disable-pop3 disables pop3 support (enabled by default) + + +After make install+ ++You can also use these instructions to omit 'make install' if you do +not want to use it. + +Check that 'make install' worked correctly. The following command: + +ls -ld /usr/sbin/masqmail /var/masqmail/ /var/spool/masqmail /var/spool/masqmail/input + +should give output similar to + + +-rwsr-xr-x 1 root root 86955 Oct 14 14:27 /usr/sbin/masqmail +drwxr-xr-x 2 mail trusted 1024 Oct 14 14:29 /var/masqmail/ +drwxr-xr-x 3 mail trusted 1024 Oct 14 14:27 /var/spool/masqmail +drwxr-xr-x 2 mail trusted 1024 Oct 14 18:32 /var/spool/masqmail/input +drwxr-xr-x 2 mail trusted 1024 Oct 14 18:32 /var/spool/masqmail/popuidl ++ + +(important is the set-user-id bit for /usr/sbin/masqmail and the +ownership of all items). + + +Edit the configuration files. You can use the files from the +examples directory as a template. Copy masqmail.conf to +/etc/maqmail.conf, the others to the location given in +masqmail.conf. + +If you already have an MTA (eg. sendmail) installed, move that to +another location: + +mv /usr/sbin/sendmail /usr/sbin/sendmail.orig+ + Then make a link to the new MTA: + ++ln -s /usr/sbin/masqmail /usr/sbin/sendmail ++ + Now every mailer that used to call sendmail will now call +masqmail. You can now kill your old sendmail if it is running and +start masqmail. Usually this is done with the startup scripts. For +SuSE this would be (as root): + ++/sbin/init.d/sendmail stop +/sbin/init.d/sendmail start ++ + or shorter: + ++/sbin/init.d/sendmail restart+ + You can also start it with: + ++/usr/sbin/sendmail -bd -q30m+ + You can also let it be called from inetd (with the -bs option), but +this is untested. + +Configuring for online delivery+ +Now you have to set up the online configuration. The trick is to +tell your ip-up script the connection name. You could use the IP +number of the far side of the ppp link, but this is a pain and may +change each time. But you can give it an additional argument via pppd +with ipparam. Somewhere in your dial up script you have a line similar +to: + ++/usr/sbin/pppd /dev/ttyS1 connect "/usr/sbin/chat -t 90 -f +${CHATFILE}" -d -d -d user user@somewhere file ${OPTIONS} ++ + Just add 'ipparam FastNet' in the command line for pppd if your ISP +has the name FastNet. The ip-up script will then get 'FastNet' as a +sixth parameter. In your ip-up script you can then call masqmail with + ++/usr/sbin/masqmail -qo $6 ++ + instead of 'sendmail -q', if you had that in the script +before. Masqmail will then read the route configuration specified for +the connection name 'FastNet' and deliver the mail destined to the +internet. See the configuration manual on how +to write a route configuration or use one of the examples as a +template. I do not know how do configure that for an ISDN adapter, +but I am sure you will find something similar in the man +pages. + +If you want mail that is received by masqmail from your local +net to be delivered immediately using the route configuration, you +have two possibilities: + + +
See the route documentation for more. + | |||
+ + + Oliver Kurth + Last modified: Tue May 30 15:19:56 CEST 2000 + + This page was created using Genpage - Version: 1.0.6 + + + |
+
+ Frequently Asked Questions + + Command line options + Configuration + Routes + Alias File Format + Mail Get Configuration + | ||
+ + + Oliver Kurth + Last modified: Fri, 28 Jul 2000 09:13:20 +0200 + + + |
+
Since masqmail is intended to replace sendmail, it uses the same +command line options, but not all are implemented. There are also two +additional options, which are unique to masqmail (-qo +<connection> and -g) + +-- option:+ + Not a 'real' option, it means that all following arguments are to +be understood as arguments and not as options even if they begin with a +leading dash '-'. Mutt is known to call sendmail with this option. + +-bd option (daemon):+ + Run as daemon, accepting connections, usually on port 25 if not +configured differently. This is usually used in the startup script and +together with the -q option (see below). + +-bi option:+ + Old sendmail rebuilds its alias database when invoked with this +option. Masqmail ignores it. Masqmail reads directly from the file +given with alias_file in the config file. + +-bp option:+ + Show the messages in the queue. Same as calling masqmail as +'mailq'. + +-bs option:+ + Accept SMTP commands from stdin. Some mailers (eg pine) use this +option as an interface. It can also be used to call masqmail from +inetd, according to Tomislav Filipcic this works. + +-B<arg>option:+ + arg is usually 8BITMIME. Some mailers use this to indicate that the +message contains characters > 127. Masqmail is 8-bit clean and +ignores this, so you do not have to recompile elm, which is very +painful ;-). Note though that this violates some conventions: masqmail +does not convert 8 bit messages to any MIME format if it +encounters a mail server which does not advertise its 8BITMIME capability, +masqmail does not advertise this itself. This is the same practice as +that of exim (but different to sendmail). + +This may change in the future, but do not rely on it. + +-C<filename>option:+ + Use another configuration than /etc/masqmail.conf. Useful for +debugging purposes. + +-d <number> option:+ + Set the debug level. This takes precedence before the value of +debug_level in the configuration file. Read the warning in the +description of the latter. + +-g option:+ + Get mail, using the configurations given with +get.<name> in the main configuration. + +-i option:+ + Same as -oi, see below. + +-oem option:+ + If the -oi ist not also given, always return with a non zero +return code. Maybe someone tells me what this is good for... + +-odb option:+ + Deliver in background. Masqmail always does this. + +-odq option:+ + Do not attempt to deliver immediately. Any messages will be queued +until the next queue running process picks them up and delivers +them. You get the same effect by setting the do_queue option in +/etc/masqmail.conf. + +-oi option:+ + A dot as a single character in a line does not terminate +the message. + +-q option:+ + If not given with an argument, run a queue process, ie. try to +deliver all messages in the queue. Masqmail sends only to those +addresses that are on the local net, not to those that are +outside. Use -qo <connection> for those. + +If you have configured inetd to start masqmail, you can use this +option in a cron job which starts in regular time intervals, to mimic +the same effect as starting masqmail with -bd -q30m. + +An argument may be a time interval ie. a numerical value followed +by one of the letters. s,m,h,d,w which are interpreted as seconds, +minutes, hours, days or weeks respectively. Example: -q30m. Masqmail +starts as a daemon and a queue runner process will be started +automatically once in this time interval. This is usually used +together with -bd (see above). + +-qo<name> option:+ + Can be followed by a connection name. Use this option in your +script which starts as soon as a link to the internet has been set up +(usually ip-up). When masqmail is called with this option, the +specified route configuration is read and the queued mail with +destinations on the internet will be sent. The name is defined +in the configuration (see connect_route.<name>). + +If called without <name>, the online status is determined with +the configured method (see online_detect in config.html) + +-t option:+ + Read recipients from headers. Delete 'Bcc:' headers. If any +arguments are given, these are interpreted as recipient addresses and +the message will not be sent to these. + | ||||
+ + + Oliver Kurth + Last modified: Tue May 30 15:19:56 CEST 2000 + + This page was created using Genpage - Version: 1.0.6 + + + |