masqmail-0.2

view INSTALL @ 158:014b9e01ce25

do *not* use the openssl option -crlf in a wrapper command see masqmail.route(5) for details
author meillo@marmaro.de
date Wed, 14 Jul 2010 21:52:20 +0200
parents 10d00e3235f2
children 949ccc02eecf
line source
1 Additional information may be available in docs/ or on the website.
2 For installing on GNU/Linux distributions read docs/INSTALL.linux.
5 Installation instructions
6 -------------------------
8 To compile masqmail you need glib 1.2 (http://www.gtk.org).
10 You need a user and a group for masqmail to run, I suggest user
11 'mail' and group 'trusted'. Say:
13 groupadd -g 42 trusted
14 useradd -u 42 -g 42 -d / -s /bin/sh -c "Mail Transfer Agent" mail
16 If you use other names than 'mail' and 'trusted' use the options
17 described below for configure. The 42 is just a suggestion, you can
18 use any number you like, but preferably one < 100. It does not have
19 to be the same for the user 'mail' and the group 'trusted'.
21 Compiling is a matter of the usual procedure. In the source directory,
22 after unpacking do:
24 ./configure
25 make
26 make install
30 Additional options for configure
31 --------------------------------
33 See the output of
35 ./configure -h
37 Here is additional, but maybe obsolete, explanation:
39 --with-user=USER sets the user as which MasqMail will run. Default is
40 'mail'. USER has to exist before you 'make install'.
42 --with-group=GROUP sets the group as which MasqMail will run. Default
43 is 'trusted'. GROUP has to exist before you 'make install'.
45 --with-logdir=LOGDIR sets the directory where MasqMail stores its log
46 files. It will be created if it does not exist. Default is /var/masqmail/.
48 --with-spooldir=SPOOLDIR sets the directory where MasqMail stores its
49 spool files. It will be created if it does not exist. Default is
50 /var/spool/masqmail/.
52 --with-confdir=CONFDIR sets the default configuration directory to
53 CONFDIR, in case you prefer another location than /etc/masqmail/.
55 --enable-auth enables ESMTP AUTH support (disabled by default)
57 --disable-pop3 disables POP3 support (enabled by default)
59 --enable-maildir enables qmail style Maildir support (disabled by default)
61 --enable-ident enables RFC 1413 support. If you have the libident
62 dynamic library installed, this will be linked, otherwise it will be
63 statically linked using the sources included in the package.
65 --disable-resolver disables resolver support. Without the resolver functions,
66 masqmail uses only gethostbyname() to resolve DNS names, and you cannot send
67 mail without a smart host. Not recommended. You save 3K at most.
69 --disable-smtp-server disables SMTP server support. You may want this if you do
70 not need masqmail to listen. In this case, you cannot use masqmail as a smart
71 host for other hosts on your LAN, you cannot use mail clients that send SMTP,
72 you cannot even use pine. In short, use of this option is discouraged unless
73 your resources are extremely limited.
75 --enable-mserver enables online detection by connecting to the mserver
76 (masqdialer system).
78 --with-libcryto instead of using the md5 and hmac functions within the package,
79 link dynamically with libcrypto. This applies only if you have POP3 or SMTP
80 AUTH enabled. Only makes sense if your resources are limited and you have
81 libcrypto installed. Untested.
83 --with-glib-static links with glib statically. This makes the binary larger
84 by around 30K (i386 architecture), but if masqmail is the only binary using
85 glib, you save some space in total, because you do not need the shared glib
86 library installed.
88 --disable-debug disables debugging; enabling it by command line or configuration
89 option has no effect. Strongly discouraged, since you miss valuable information
90 if something goes wrong. You save 6K.
92 BTW, to get 3K of space, call
93 strip --remove-section=.comment --remove-section=.note --strip-unneeded src/masqmail
94 after building.
98 after make install:
99 -------------------
101 You can also use these instructions to omit 'make install' if you do
102 not want to use it.
104 Check that 'make install' worked correctly. The following command:
106 ls -ld /usr/sbin/masqmail /etc/masqmail /var/log/masqmail/ \
107 /var/run/masqmail /var/spool/masqmail/ /var/spool/masqmail/*
109 should give output similar to
111 -rwsr-xr-x 1 root root 399356 May 10 12:34 /usr/sbin/masqmail
112 drwxr-xr-x 2 root root 4096 May 10 12:34 /etc/masqmail
113 drwxr-xr-x 2 mail trusted 4096 May 10 12:34 /var/log/masqmail
114 drwxr-xr-x 2 mail trusted 4096 May 10 12:34 /var/run/masqmail
115 drwxr-xr-x 5 mail trusted 4096 May 10 12:34 /var/spool/masqmail
116 drwxr-xr-x 2 mail trusted 4096 May 10 12:34 /var/spool/masqmail/input
117 drwxr-xr-x 2 mail trusted 4096 May 10 12:34 /var/spool/masqmail/lock
118 drwxr-xr-x 2 mail trusted 4096 May 10 12:34 /var/spool/masqmail/popuidl
120 (important is the set-user-id bit for /usr/sbin/masqmail and the
121 ownership of all items).
123 Use the example configuration files in examples/ to edit your own. The
124 main configuration file `masqmail.conf' and the *.route and *.get files
125 should go into /etc/masqmail.
127 The default destination for the executable `masqmail' is /usr/sbin.
128 Check that it has the set-uid bit set. You can set it with:
130 chmod u+s /usr/sbin/masqmail
132 If you want to replace sendmail, move your old sendmail binary to
133 another name and make a symbolic link:
135 ln -s /usr/sbin/masqmail /usr/sbin/sendmail
137 Now every mailer that used to call sendmail will now call masqmail. You
138 can now kill your old sendmail if it is running and start masqmail.
140 /sbin/init.d/sendmail restart
142 should do that. You can also start masqmail with:
144 /usr/sbin/masqmail -bd -q30m
148 Configuring for online delivery
149 -------------------------------
151 (This section covers dial-up internet connections.)
153 Now you have to set up the online configuration. The trick is to tell
154 your ip-up script the connection name. You could use the IP number of
155 the far side of the ppp link, but this is a pain and may change each
156 time. But you can give it an additional argument via pppd with ipparam.
157 Somewhere in your dial up script you have a line similar to:
159 /usr/sbin/pppd /dev/ttyS1 connect "/usr/sbin/chat -t 90 -f $CHATFILE" \
160 -d -d -d user user@somewhere file "$OPTIONS"
162 Just add 'ipparam FastNet' in the command line for pppd if your ISP has
163 the name FastNet. The ip-up script will then get 'FastNet' as a sixth
164 parameter. In your ip-up script you can then call masqmail with
166 /usr/sbin/masqmail -qo "$6"
168 instead of 'sendmail -q', if you had that in the script before.
169 Masqmail will then read the route configuration specified for the
170 connection name 'FastNet' and deliver the mail destined to the internet.
171 See the configuration manual on how to write a route configuration or
172 use one of the examples as a template.
174 I do not know how do configure that for an ISDN adapter, but I am sure
175 you will find something similar in the man pages.
177 If you want mail that is received by masqmail from your local net to be
178 delivered immediately using the route configuration, you have two
179 possibilities:
181 * if you are using the masqdialer system, you just have to set the
182 variables online_detect to pipe and online_pipe to something like
183 /usr/bin/mservdetect localhost 222
184 if mserver is running on localhost and listens on port 222. See the
185 man page to mservdetect(1).
187 * otherwise you have to add two commands in your ip-up script:
188 echo "$6" >/var/run/masqmail/masqmail-route
189 chmod 644 /var/run/masqmail/masqmail-route
190 and you have to remove the file /var/run/masqmail/masqmail-route in
191 your ip-down script:
192 rm /var/run/masqmail/masqmail-route
193 Then you have to set online_detect to file and online_file to
194 /var/run/masqmail/masqmail-route
196 See the route documentation for more.
200 Written by oku.
201 Updated by meillo.