Difference between revisions of "Qmail rocks"

From Noah.org
Jump to navigationJump to search
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
[[Category:Engineering]]
 
[[Category:Engineering]]
[[Category:qmail]]
+
[[Category:mail]]
 
== Qmail Rocks on Ubuntu ==
 
== Qmail Rocks on Ubuntu ==
  
Line 38: Line 38:
 
Be sure to edit the few shell script variables at the top of this script. This assumes that you have Apache installed under /var/www/usr/local/apache2. If Apache is somewhere else then you will need to modify the CONFIGURATION OPTIONS section of the script.
 
Be sure to edit the few shell script variables at the top of this script. This assumes that you have Apache installed under /var/www/usr/local/apache2. If Apache is somewhere else then you will need to modify the CONFIGURATION OPTIONS section of the script.
  
<pre>
+
<include svncat src="file:///home/svn/src/shell/qmail_rocks_install/qmail_rocks_install.sh" />
#!/bin/sh
 
FQDN="mail.example.com"
 
CGI_BIN_PATH=/var/www/usr/local/apache2/cgi-bin
 
HTDOC_PATH=/var/www/usr/local/apache2/htdocs
 
 
 
echo "######################################################################"
 
echo "# Update Ubuntu packages"
 
echo "######################################################################"
 
apt-get install build-essential sed flex bison autoconf
 
apt-get install libssl-dev
 
apt-get install openssl
 
apt-get install openssh-server
 
apt-get install csh
 
apt-get install mysql-server libmysqlclient15-dev
 
 
 
echo "######################################################################"
 
echo "# Download qmailrocks"
 
echo "######################################################################"
 
mkdir /downloads
 
cd /downloads
 
wget http://www.qmailrocks.org/downloads/qmailrocks.tar.gz
 
tar zxvf qmailrocks.tar.gz
 
/downloads/qmailrocks/scripts/install/qmr_install_linux-s1.script
 
/downloads/qmailrocks/scripts/util/qmail_big_patches.script
 
 
 
echo "######################################################################"
 
echo "# qmail"
 
echo "######################################################################"
 
cd /usr/src/qmail/qmail-1.03
 
make man && make setup check
 
./config-fast $FQDN
 
make cert
 
chown -R vpopmail:qmail /var/qmail/control/clientcert.pem /var/qmail/control/servercert.pem
 
 
 
echo "######################################################################"
 
echo "# TCP tools"
 
echo "######################################################################"
 
cd /usr/src/qmail/ucspi-tcp-0.88/
 
patch < /downloads/qmailrocks/patches/ucspi-tcp-0.88.errno.patch
 
make && make setup check
 
 
 
echo "######################################################################"
 
echo "# Daemon tools"
 
echo "######################################################################"
 
cd /package/admin/daemontools-0.76/src
 
patch < /downloads/qmailrocks/patches/daemontools-0.76.errno.patch
 
cd /package/admin/daemontools-0.76
 
package/install
 
 
 
echo "######################################################################"
 
echo "# HACK: Update modes and links "
 
echo "# I'm not sure why this is not happening automatically."
 
echo "######################################################################"
 
chmod 755 /var/log/qmail
 
mkdir -p /var/log/qmail/smtpd
 
ln -s /var/qmail/bin/sendmail /usr/lib/sendmail
 
ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail
 
 
 
echo "######################################################################"
 
echo "# EZmlm"
 
echo "######################################################################"
 
cd /downloads/qmailrocks/
 
tar zxvf ezmlm-0.53-idx-0.41.tar.gz
 
cd ezmlm-0.53-idx-0.41
 
make && make setup
 
 
 
echo "######################################################################"
 
echo "# Autoresponder"
 
echo "######################################################################"
 
cd /downloads/qmailrocks
 
tar zxvf autorespond-2.0.5.tar.gz
 
cd autorespond-2.0.5
 
make && make install
 
 
 
echo "######################################################################"
 
echo "# VPOPMail"
 
echo "######################################################################"
 
cd /downloads/qmailrocks
 
tar zxvf vpopmail-5.4.13.tar.gz
 
cd vpopmail-5.4.13
 
./configure --enable-logging=p
 
make && make install-strip
 
 
 
echo "######################################################################"
 
echo "# Vqadmin"
 
echo "######################################################################"
 
cd /downloads/qmailrocks
 
tar zxvf vqadmin-2.3.6.tar.gz
 
cd vqadmin-2.3.6
 
./configure --enable-cgibindir=$CGI_BIN_PATH --enable-htmldir=$HTDOC_PATH
 
make && make install-strip
 
echo "###################################"
 
echo "# ADD THE FOLLOWING TO HTTPD.CONF #"
 
echo "# See Part 6 of Qmail Rocks      #"
 
echo "###################################"
 
echo 'AllowOverride All'
 
echo '<Directory "/path/to/your/cgi-bin/vqadmin">'
 
echo 'deny from all'
 
echo 'Options ExecCGI'
 
echo 'AllowOverride AuthConfig'
 
echo 'Order deny,allow'
 
echo '</Directory>'
 
echo
 
 
 
echo "######################################################################"
 
echo "# Maildrop"
 
echo "######################################################################"
 
cd /downloads/qmailrocks
 
tar zxvf maildrop-1.6.3.tar.gz
 
cd maildrop-1.6.3
 
./configure --prefix=/usr/local --exec-prefix=/usr/local --enable-maildrop-uid=root --enable-maildrop-gid=vchkpw --enable-maildirquota
 
make && make install-strip && make install-man
 
 
 
echo "######################################################################"
 
echo "# Qmailadmin"
 
echo "######################################################################"
 
cd /downloads/qmailrocks
 
tar zxvf qmailadmin-1.2.9.tar.gz
 
cd qmailadmin-1.2.9
 
./configure --enable-cgibindir=$CGI_BIN_PATH --enable-htmldir=$HTDOC_PATH
 
make && make install-strip
 
 
 
echo "######################################################################"
 
echo "# Part 9, Finalizing the qmail installation"
 
echo "######################################################################"
 
/downloads/qmailrocks/scripts/finalize/linux/finalize_linux.script
 
sed -i -e "s/mail.example.com/${FQDN}/g" /var/qmail/supervise/qmail-pop3d/run
 
sed -i -e "s/mail.example.com/${FQDN}/g" /var/qmail/supervise/qmail-smtpd/run
 
qmailctl stop
 
echo '127.:allow,RELAYCLIENT=""' >> /etc/tcp.smtp
 
qmailctl cdb
 
echo root > /var/qmail/alias/.qmail-root
 
echo root > /var/qmail/alias/.qmail-postmaster
 
echo root > /var/qmail/alias/.qmail-mailer-daemon
 
ln -s /var/qmail/alias/.qmail-root /var/qmail/alias/.qmail-anonymous
 
chmod 644 /var/qmail/alias/.qmail*
 
</pre>
 

Latest revision as of 12:05, 16 August 2008

Qmail Rocks on Ubuntu

A stock Ubuntu server install will need a few additional packages to support Qmail Rocks.

apt-get -q -y install build-essential sed flex bison autoconf
apt-get -q -y install libssl-dev
apt-get -q -y install openssl
apt-get -q -y install openssh-server
apt-get -q -y install csh
apt-get -q -y install expect
apt-get -q -y install libgdbm-dev
apt-get -q -y install libltdl3 libltdl3-dev
apt-get -q -y install mysql-server libmysqlclient15-dev # For Vpopmail MYSQL support

Virtual Hosts

When you run config-fast you set your main STMP host. If you need other virtual hosts then you must edit your rcpthosts file.

# ./config-fast mail.example.com
Your fully qualified host name is mail.example.com.
Putting mail.example.com into control/me...
Putting example.com into control/defaultdomain...
Putting example.com into control/plusdomain...
Putting mail.example.com into control/locals...
Putting mail.example.com into control/rcpthosts...
Now qmail will refuse to accept SMTP messages except to mail.example.com.
Make sure to change rcpthosts if you add hosts to locals or virtualdomains!

Install qmail rocks script

Be sure to edit the few shell script variables at the top of this script. This assumes that you have Apache installed under /var/www/usr/local/apache2. If Apache is somewhere else then you will need to modify the CONFIGURATION OPTIONS section of the script.

<include svncat src="file:///home/svn/src/shell/qmail_rocks_install/qmail_rocks_install.sh" />