Index: openacs-4/packages/acs-core-docs/www/install-qmail.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-qmail.adp,v diff -u -N -r1.2 -r1.3 --- openacs-4/packages/acs-core-docs/www/install-qmail.adp 7 Aug 2017 23:47:51 -0000 1.2 +++ openacs-4/packages/acs-core-docs/www/install-qmail.adp 8 Nov 2017 09:42:11 -0000 1.3 @@ -10,141 +10,30 @@ rightLink="analog-install" rightLabel="Next">

-Install qmail (OPTIONAL)

Qmail is a Mail Transfer Agent. It handles incoming and outgoing -mail. Install qmail if you want your OpenACS server to send and -receive mail, and you don't want to use an alternate MTA.

Red Hat 9: all djb tools (qmail, daemontools, ucspi) will fail -to compile in Red Hat 9 because of changes to glibc (patches)

    -
  1. -

    -Install ucspi. This program handles -incoming tcp connections. Download ucspi and install it.

    -[root root]# cd /usr/local/src
    -[root src]# wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz
    -[root src]# tar xzf ucspi-tcp-0.88.tar.gzcd /usr/local/src 
    -wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz
    -tar xzf ucspi-tcp-0.88.tar.gz 
    -

    Red Hat 9 only

    wget http://moni.csi.hu/pub/glibc-2.3.1/ucspi-tcp-0.88.errno.patch
    -cd ucspi-tcp-0.88
    -patch -p1 <../ucspi-tcp-0.88.errno.patch
    -cd ..

    All platforms continue:

    -[root src]# cd ucspi-tcp-0.88
    -[root ucspi-tcp-0.88]# make
    -( cat warn-auto.sh; \
    -echo 'main="$1"; shift'; \(many lines omitted)
    -./compile instcheck.c
    -./load instcheck hier.o auto_home.o unix.a byte.a
    -[root ucspi-tcp-0.88]# make setup check
    -./install
    -./instcheck
    -[root ucspi-tcp-0.88]#
    -
    -cd ucspi-tcp-0.88 
    -make 
    -make setup check
    -

    Verify that ucspi-tcp was installed successfully by running the -tcpserver program which is part of ucspi-tcp:

    -[root ucspi-tcp-0.88]# tcpserver
    -tcpserver: usage: tcpserver [ -1UXpPhHrRoOdDqQv ] [ -c limit ] [ -x rules.cdb ] [ -B banner ] [ -g gid ] [ -u uid
    -] [ -b backlog ] [ -l localname ] [ -t timeout ] host port program
    -[root ucspi-tcp-0.88]#
    -

    - (I'm not sure if this next step is -100% necessary, but when I skip it I get problems. If you get the -error 553 sorry, that domain isn't -in my list of allowed rcpthosts (#5.7.1) then you need to do -this.) AOLserver sends outgoing mail via the ns_sendmail command, -which pipes a command to the sendmail executable. Or, in our case, -the qmail replacement wrapper for the sendmail executable. In some -cases, though, the outgoing mail requset is apparently sent through -tcp/ip, so that it comes to qmail from 127.0.0.1 (a special IP -address that means the local machine - the "loopback" -interface). Unless this mail is addressed to the same machine, -qmail thinks that it's an attempt to relay mail, and rejects -it. So these two commands set up an exception so that any mail sent -from 127.0.0.1 is allowed to send outgoing mail.

    -[root ucspi-tcp-0.88]# cp /tmp/openacs-5.9.0/packages/acs-core-docs/www/files/tcp.smtp.txt /etc/tcp.smtp
    -[root ucspi-tcp-0.88]# tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtpcp /tmp/openacs-5.9.0/packages/acs-core-docs/www/files/tcp.smtp.txt /etc/tcp.smtp 
    -tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp 
    -
    -
  2. -

    -Install Qmail.  -

    -Download qmail, set up the -standard supporting users and build the binaries:

    -[root root]# cd /usr/local/src
    -[root src]# wget http://www.qmail.org/netqmail-1.04.tar.gz
    -[root src]# tar xzf netqmail-1.04.tar.gz
    ---15:04:11--  http://www.qmail.org/netqmail-1.04.tar.gz
    -           => `netqmail-1.04.tar.gz'
    -Resolving www.qmail.org... done.
    -Connecting to www.qmail.org[192.203.178.37]:80... connected.
    -HTTP request sent, awaiting response... 200 OK
    -Length: 242,310 [application/x-gunzip]
    -
    -88% [===============================>     ] 214,620       22.93K/s ETA 00:01
    -
    -15:04:21 (24.04 KB/s) - `netqmail-1.04.tar.gz' saved [242310/242310]
    -
    -[root src]# mkdir /var/qmail
    -[root src]# groupadd nofiles
    -[root src]# useradd -g nofiles -d /var/qmail/alias alias
    -[root src]# useradd -g nofiles -d /var/qmail qmaild
    -[root src]# useradd -g nofiles -d /var/qmail qmaill
    -[root src]# useradd -g nofiles -d /var/qmail qmailp
    -[root src]# groupadd qmail
    -[root src]# useradd -g qmail -d /var/qmail qmailq
    -[root src]# useradd -g qmail -d /var/qmail qmailr
    -[root src]# useradd -g qmail -d /var/qmail qmails
    -[root src]# cd netqmail-1.04
    -[root netqmail-1.04]# ./collate.sh
    -
    -You should see 7 lines of text below.  If you see anything
    -else, then something might be wrong.
    -[1] Extracting qmail-1.03...
    -[2] Patching qmail-1.03 into netqmail-1.04.  Look for errors below:
    -     20
    -[4] The previous line should say 20 if you used GNU patch.
    -[5] Renaming qmail-1.03 to netqmail-1.04...
    -[6] Continue installing qmail using the instructions found at:
    -[7] http://www.lifewithqmail.org/lwq.html#installation
    -[root netqmail-1.04]# cd netqmail-1.04
    -[root netqmail-1.04]# make setup check
    -( cat warn-auto.sh; \
    -echo CC=\'`head -1 conf-cc`\'; \(many lines omitted)
    -./install
    -./instcheck
    -cd /usr/local/src 
    -wget http://www.qmail.org/netqmail-1.04.tar.gz
    -tar xzf netqmail-1.04.tar.gz
    -mkdir /var/qmail 
    -groupadd nofiles 
    -useradd -g nofiles -d /var/qmail/alias alias 
    -useradd -g nofiles -d /var/qmail qmaild 
    -useradd -g nofiles -d /var/qmail qmaill 
    -useradd -g nofiles -d /var/qmail qmailp 
    -groupadd qmail 
    -useradd -g qmail -d /var/qmail qmailq 
    -useradd -g qmail -d /var/qmail qmailr 
    -useradd -g qmail -d /var/qmail qmails
    -cd netqmail-1.04
    -./collate.sh
    -cd netqmail-1.04
    -make setup check
    -

    Replace sendmail with qmail's wrapper.

    +Install qmail (OPTIONAL)

Qmail is a secure, reliable, efficient, simple Mail Transfer +Agent. It handles incoming and outgoing mail. Install qmail if you +want your OpenACS server to send and receive mail, and you +don't want to use an alternate MTA.

    +
  1. +Install qmail.  QMail is available +as standard Debian/Ubuntu package, rpms for Fedora/Redhat/CenTOS +are available from QMail wiki +page +

  2. +

    Replace sendmail with qmail's wrapper.

     [root qmail-1.03]# rm -f /usr/bin/sendmail /usr/sbin/sendmail
     [root qmail-1.03]# ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail
     [root qmail-1.03]#
    -rm -f /usr/bin/sendmail /usr/sbin/sendmail
    -ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail
    +rm -f /usr/bin/sendmail /usr/sbin/sendmail
    +ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail
     

    Configure qmail - specifically, run the config script to set up files in /var/qmail/control specifying the computer's identity and which addresses it should accept mail for. This command will automatically set up qmail correctly if you have correctly set a valid host nome. If not, you'll want to read /var/qmail/doc/INSTALL.ctl to find out how to configure qmail.

    -[root qmail-1.03]# ./config-fast yourserver.test
    +[root qmail-1.03]# ./config-fast yourserver.test
     
     Your fully qualified host name is yourserver.test.
     Putting yourserver.test into control/me...
    @@ -155,8 +44,8 @@
     Now qmail will refuse to accept SMTP messages except to yourserver.test.
     Make sure to change rcpthosts if you add hosts to locals or virtualdomains!
     [root qmail-1.03]#
    -./config-fast yourserver.test
    -
    +./config-fast yourserver.test
    +
     

    All incoming mail that isn't for a specific user is handled by the alias user. This includes all root mail. These commands prepare the alias user to @@ -166,28 +55,28 @@ [root alias]# /var/qmail/bin/maildirmake ~alias/Maildir/ [root alias]# chown -R alias.nofiles /var/qmail/alias/Maildir [root alias]# -cd ~alias; touch .qmail-postmaster .qmail-mailer-daemon .qmail-root +cd ~alias; touch .qmail-postmaster .qmail-mailer-daemon .qmail-root chmod 644 ~alias/.qmail* /var/qmail/bin/maildirmake ~alias/Maildir/ -chown -R alias.nofiles /var/qmail/alias/Maildir -

    Configure qmail to use the Maildir delivery format (instead of +chown -R alias.nofiles /var/qmail/alias/Maildir +

    Configure qmail to use the Maildir delivery format (instead of mbox), and install a version of the qmail startup script modified to use Maildir.

     [root alias]# echo "./Maildir" > /var/qmail/bin/.qmail
     [root alias]# cp /tmp/openacs-5.9.0/packages/acs-core-docs/www/files/qmail.rc.txt /var/qmail/rc
     [root alias]# chmod 755 /var/qmail/rc
     [root alias]# 
    -echo "./Maildir" > /var/qmail/bin/.qmail 
    +echo "./Maildir" > /var/qmail/bin/.qmail 
     cp /tmp/openacs-5.9.0/packages/acs-core-docs/www/files/qmail.rc.txt /var/qmail/rc 
     chmod 755 /var/qmail/rc 
    -
    +
     

    Set up the skeleton directory so that new users will be configured for qmail.

     [root root]# /var/qmail/bin/maildirmake /etc/skel/Maildir
     [root root]# echo "./Maildir/" > /etc/skel/.qmail
     [root root]# 
    -/var/qmail/bin/maildirmake /etc/skel/Maildir
    -echo "./Maildir/" > /etc/skel/.qmail
    +/var/qmail/bin/maildirmake /etc/skel/Maildir
    +echo "./Maildir/" > /etc/skel/.qmail
     

    As recommended, we will run qmail with daemontools control files. Create daemontools control directories, set up a daemontools control script, copy the supervise control files, and set @@ -210,7 +99,7 @@ [root root]# chmod 755 /var/qmail/supervise/qmail-smtpd/run [root root]# chmod 755 /var/qmail/supervise/qmail-smtpd/log/run [root root]# ln -s /var/qmail/supervise/qmail-send /var/qmail/supervise/qmail-smtpd /service -[root root]# ln -s /var/qmail/supervise/qmail-send /var/qmail/supervise/qmail-smtpd /servicemkdir -p /var/qmail/supervise/qmail-send/log +[root root]# ln -s /var/qmail/supervise/qmail-send /var/qmail/supervise/qmail-smtpd /servicemkdir -p /var/qmail/supervise/qmail-send/log mkdir -p /var/qmail/supervise/qmail-smtpd/log mkdir /var/log/qmail chown qmaill /var/log/qmail @@ -226,7 +115,7 @@ chmod 755 /var/qmail/supervise/qmail-smtpd/run chmod 755 /var/qmail/supervise/qmail-smtpd/log/run ln -s /var/qmail/supervise/qmail-send /var/qmail/supervise/qmail-smtpd /service - +

    Wait ten seconds or so, and then verify that that the four qmail processes are running. If uptimes don't rise above 1 second, this may indicate broken scripts that are continuously restarting.