masqmail

annotate INSTALL @ 204:5745edd5b769

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