Slackware Install Instructions
OpenGroupware install instructions for Slackware 10.0
Written by Jason Greene and Russell Petree
The following instruction should be complete for the installation of OpenGroupware.org on Slackware.
Slackware 10.0 was used to make these instructions.
Build your Slackware box and insure you have all the recommended packages plus "gcc-objc" installed.
De-select or uninstall the Berkeley DB packages
db3-3.1.17-i486-4.tgz
db3-3.3.11-i486-4.tgz
Leave db4.4.2.52-i486-2.tgz installed
Do not install Apache, PHP, mod_ssl or MySQL Slackware Packages.
(We will install these from source.)
Assumptions:
$> = root is logged in
#> = user is logged in
# = Remmed out to provide information.
Create all necessary Users and Groups
Download all of the following source packages
Extract all source tar-balls
Install Kerberos
Install Cyrus-SASL
Install OpenLDAP
Install MySQL (not used with OGo)
Configure Apache and Install PHP
Create Openssl keys
Install mod_ssl
Install Apache
Install mod_gzip
Pre-configure mod_ngobjweb Makefile
Install OGo
Additional things to do
Finish-up PostgreSQL
Create an OpenGroupware startup script
Create PostgreSQL Startup script
Start Apache
Start Apache, PostgreSQL and OpenGroupware on startup
That completes the install of OpenGroupware
The Following will be a work in progress of additional apps used with OGo.
Build Qmail
Sending Mail with Qmail and OGo
Make the qmail schema available to ldap
Modify the ldap configuration
The following instruction should be complete for the installation of OpenGroupware.org on Slackware.
Slackware 10.0 was used to make these instructions.
Build your Slackware box and insure you have all the recommended packages plus "gcc-objc" installed.
De-select or uninstall the Berkeley DB packages
db3-3.1.17-i486-4.tgz
db3-3.3.11-i486-4.tgz
Leave db4.4.2.52-i486-2.tgz installed
Do not install Apache, PHP, mod_ssl or MySQL Slackware Packages.
(We will install these from source.)
Assumptions:
$> = root is logged in
#> = user is logged in
# = Remmed out to provide information.
Create all necessary Users and Groups
|
#### Do the Following
#> su - $> groupadd mysql $> useradd -g mysql mysql $> useradd -g console postgres -s /bin/bash -d /home/postgres $> groupadd ogo $> useradd ogo -g ogo -s /bin/false -d /home/ogo ### Create user Qmail groups $> groupadd vmail $> groupadd qmail $> groupadd nofiles ### Create user Qmail accounts $> useradd -g vmail vmail -s /bin/bash -d /var/qmail $> 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 $> useradd -g qmail -s /bin/false -d /var/qmail qmailq $> useradd -g qmail -s /bin/false -d /var/qmail qmailr $> useradd -g qmail -s /bin/false -d /var/qmail qmails #### Create LDAP user $> useradd -g daemon -s /bin/false -d /home/openldap-data ldap |
Download all of the following source packages
|
#### Do the Following
$> mkdir /usr/src/ogo/zips -p $> cd /usr/src/ogo/zips #### Get apache $> wget http://apache.bestwebcover.com/httpd/apache_1.3.31.tar.gz #### Get mod_gzip $> wget http://aleron.dl.sourceforge.net/sourceforge/mod-gzip/mod_gzip-1.3.26.1a.tgz #### Get mod_ssl $> wget http://www.modssl.org/source/mod_ssl-2.8.19-1.3.31.tar.gz #### Get mod_ngobjweb $> wget http://www.opengroupware.org/sources/old-cvs-sources/opengroupware.org-mod_ngobjweb-latest.tar.gz #### Get PHP $> wget http://static.php.net/www.php.net/distributions/php-4.3.8.tar.bz2 #### Get LDAP $> wget http://www.openldap.org/software/download/OpenLDAP/openldap-stable.tgz #### Get PostgreSQL $> wget ftp://ftp8.us.postgresql.org/postgresql/source/v7.4.3/postgresql-7.4.3.tar.bz2 #### Get Mysql $> wget http://mysql.mirrors.pair.com/Downloads/MySQL-4.0/mysql-4.0.20.tar.gz #### Get Cyrus-SASL $> wget ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-sasl-2.1.19.tar.gz #### Get Kerberos $> wget http://web.mit.edu/kerberos/www/dist/krb5/1.3/krb5-1.3.4.tar #### Get Opengroupware source $> wget http://www.opengroupware.org/sources/old-cvs-sources/sources-all-latest.tar.bz2 ### Get Qmail $> wget http://www.qmail.org/netqmail-1.05.tar.gz ### Get TCP Server $> wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz ### Get Qmail patch for LDAP $> wget http://www.qmail-ldap.org/qmail/qmail-ldap-1.03-20040801.patch.gz ### Get patch for tcpserver $> wget http://www.qmail.org/moni.csi.hu/pub/glibc-2.3.1/ucspi-tcp-0.88.errno.patch ### Get Man pages for tcpserver $> wget http://smarden.org/pape/djb/manpages/ucspi-tcp-0.88-man.tar.gz ### Get courier IMAP $> wget http://www.courier-mta.org/beta/imap/courier-imap-3.0.7.20040902.tar.bz2 ### Get checkpassword $> wget http://cr.yp.to/checkpwd/checkpassword-0.90.tar.gz |
Extract all source tar-balls
|
#### Do the Following
$> cd /usr/src/ogo $> tar xf zips/krb5-1.3.4.tar $> tar xzf krb5-1.3.4.tar.gz $> rm krb5-1.3.4.tar.gz $> ln -s krb5-1.3.4 krb $> tar xfz zips/cyrus-sasl-2.1.19.tar.gz $> ln -s cyrus-sasl-2.1.19 sasl $> tar xfz zips/openldap-stable.tgz $> ln -s openldap-2.2.13 openldap $> tar xjf zips/postgresql-7.4.3.tar.bz2 $> ln -s postgresql-7.4.3 postgres $> tar xzf zips/mysql-4.0.20.tar.gz $> ln -s mysql-4.0.20 mysql $> tar xjf zips/php-4.3.8.tar.bz2 $> ln -s php-4.3.8 php $> tar xfz zips/apache_1.3.31.tar.gz $> ln -s apache_1.3.31 apache $> tar xfz zips/mod_ssl-2.8.19-1.3.31.tar.gz $> ln -s mod_ssl-2.8.19-1.3.31 mod_ssl $> tar xfz zips/mod_gzip-1.3.26.1a.tgz $> ln -s mod_gzip-1.3.26.1a mod_gzip $> tar zxf zips/opengroupware.org-mod_ngobjweb-latest.tar.gz $> ln -s opengroupware.org-mod_ngobjweb mod_ngobjweb $> tar xjf zips/sources-all-latest.tar.bz2 $> tar zxf zips/netqmail-1.05.tar.gz $> ln -s netqmail-1.05 qmail $> cd /usr/src/ogo/qmail $> tar zxf qmail-1.03.tar.gz $> cd /usr/src/ogo $> tar zxf zips/ucspi-tcp-0.88.tar.gz $> ln -s ucspi-tcp-0.88 tcpserver $> gunzip zips/qmail-ldap-1.03-20040801.patch.gz $> cp zips/qmail-ldap-1.03-20040801.patch /usr/src/ogo/ $> cp zips/ucspi-tcp-0.88.errno.patch /usr/src/ogo/ $> tar zxf zips/ucspi-tcp-0.88-man.tar.gz $> cd ucspi-tcp-0.88-man $> gzip *.1 ; cp *.1.gz /usr/share/man/man1/ $> cd /usr/src/ogo $> tar xjf zips/courier-imap-3.0.7.20040902.tar.bz2 $> ln -s courier-imap-3.0.7.20040902 imap $> tar xzf zips/checkpassword-0.90.tar.gz ln -s checkpassword-0.90 checkpassword |
Install Kerberos
|
####Add the computers FQDN to /etc/hosts before the "localhost" entry"
#### if you are using DHCP. #### Otherwise you may receive an error complaining about the FQDN. $> cd /usr/src/ogo/krb/src $> mkdir /etc/krb $> make distclean $> ./configure \ CFLAGS="-g -O2 -D_REENTRANT" \ --prefix=/usr \ --enable-shared \ --localstatedir=/etc \ --without-tcl \ --with-krb4 \ --sysconfdir=/etc/krb $> make $> make check $> make install #### If you changed the /etc/hosts file and changed #### the localhosts setting now #### is the time to change it back. |
Install Cyrus-SASL
|
#### Do the Following
$> mkdir /etc/sasl $> cd /usr/src/ogo/sasl $> ./configure \ CPPFLAGS="-I/usr/include/db4" \ --sysconfdir=/etc/sasl \ --enable-static \ --enable-login \ --without-des \ --without-rc4 \ --enable-gssapi \ --disable-krb4 \ --prefix=/usr $> make $> make install $> ldconfig |
Install OpenLDAP
|
#### Do the Following
$> mkdir /etc/openldap $> cd /usr/src/ogo/openldap $> CPPFLAGS=-I/usr/include/db4 \ ./configure \ --sysconfdir=/etc \ --prefix=/usr \ --enable-bdb \ --with-cyrus-sasl $> make depend $> make $> make test $> make install ### Create the LDAP starup file ### Put the following in /etc/rc.d/rc.ldap #!/bin/sh PID=/usr/var/run/slapd.pid SLAPD=/usr/libexec/slapd case "$1" in 'start') echo "Starting ldap.." $SLAPD -4 -h "ldap:/// ldaps:///" ;; 'stop') echo "Stopping ldap" kill -s 9 `cat $PID` ;; *) echo "usage $0 start|stop" esac |
|
#### Do the Following
$> mkdir /etc/postgresql $> cd /usr/src/ogo/postgres $> ./configure \ --with-openssl \ --sysconfdir=/etc/postgresql\ --prefix=/usr $> gmake $> gmake install |
Install MySQL (not used with OGo)
|
#### Do the Following
$> cd /usr/src/ogo/mysql $> ./configure --prefix=/usr/local/mysql \ --localstatedir=/usr/local/mysql/data \ --disable-maintainer-mode \ --with-mysqld-user=mysql \ --enable-large-files \ --without-comment \ --without-debug \ --without-docs \ --without-bench $> make $> make install $> ./scripts/mysql_install_db $> chown -R root:mysql /usr/local/mysql $> chown -R mysql:mysql /usr/local/mysql/data $> echo "/usr/local/mysql/lib/mysql" >> /etc/ld.so.conf $> ldconfig -v | grep libmysqlclient |
Configure Apache and Install PHP
|
#### Do the following.
$> cd /usr/src/ogo/apache $> ./configure $> cd /usr/src/ogo/php $> make clean $> ./configure \ --enable-sigchild \ --enable-calendar \ --with-mysql=/usr/local/mysql \ --with-apache=/usr/src/ogo/apache \ --with-pgsql \ --with-ldap \ --with-jpeg \ --with-zlib \ --with-png \ --with-gd $> make $> make install |
Create Openssl keys
|
#### Do the Following
$> mkdir /etc/ssl.https $> cd /etc/ssl.https $> openssl genrsa -des3 -out ca.key.secure 1024 $> openssl rsa -noout -text -in ca.key.secure $> openssl rsa -in ca.key.secure -out ca.key $> openssl req -new -x509 -days 1095 -key ca.key -out ca.crt $> openssl x509 -noout -text -in ca.crt $> openssl genrsa -des3 -out server.key.secure 1024 $> openssl rsa -noout -text -in server.key.secure $> openssl rsa -in server.key.secure -out server.key $> openssl req -new -key server.key -out server.csr $> openssl req -noout -text -in server.csr $> /usr/src/ogo/mod_ssl/pkg.contrib/sign.sh server.csr |
Install mod_ssl
|
#### Do the Following
$> cd /usr/src/ogo/mod_ssl $> ./configure \ --with-apache=/usr/src/ogo/apache \ --prefix=/usr/local/apache \ |
Install Apache
|
#### Do the Following
$> cd /usr/src/ogo/apache $> # SSL_BASE=/usr/src/ogo/openssl -<-<-< Use this only if you install OpenSSL from source ./configure \ --prefix=/usr/local/apache \ --activate-module=src/modules/php4/libphp4.a \ --enable-module=mod-gzip \ --enable-module=ssl \ --enable-shared=ssl \ --sysconfdir=/etc \ --enable-module=so \ --enable-rule=EAPI $> make $> make install $> ln -s /usr/local/apache/bin/apxs /usr/bin/apxs #### Insure php type support is on in httpd.conf #### Change the following section. Add index.php # <IfModule mod_dir.c> # DirectoryIndex index.php index.html # </IfModule> #### Go to the line or search for AddType application/x-tar .tgz' #### Add the following without the "#" symbol # AddType application/x-httpd-php .php # AddType application/x-httpd-php .php3 # AddType application/x-httpd-php .htm # AddType application/x-httpd-php .html #### Add the following lines to /etc/httpd.conf # LoadModule ngobjweb_module libexec/ngobjwebssl_1.3.31.so # AddModule ngobjweb_module.c #### Add the following lines to /etc/httpd.conf in the Virtual Host declaration # <VirtualHost _default_:443> # <LocationMatch "^/OpenGroupware/*"> # SetHandler ngobjweb-adaptor # SetAppPort 20000 # </LocationMatch> # Alias /OpenGroupware.woa/WebServerResources/ \ # /opt/OGo/WebServerResources/ # SSLCertificateFile /etc/ssl.https/server.crt # SSLCertificateKeyFile /etc/ssl.https/server.key #### Put the following in /etc/rc.d/rc.local to start apache on startup # /usr/local/apache/bin/apachectl startssl |
Install mod_gzip
|
#### Do the Following
#### You may need to edit the Makefile to specify the location #### of apxs. Change "APXS?=" to "APXS?=/usr/local/apache/bin/apxs" $> cd /usr/src/ogo/mod_gzip $> make $> make install #### Edit /etc/hpptd.conf and remove rem for mod_gzip in the LoadModules #### and AddModules sections. |
Pre-configure mod_ngobjweb Makefile
|
#### Do the Following
$>cd /usr/src/ogo/mod_ngobjweb #### Edit GNUmakefile and change the following lines # APACHE = /usr # APXS = $(APACHE)/sbin/apxs # HTTPD = $(APACHE)/sbin/httpd #### To this... # APACHE = /usr/local/apache # APXS = $(APACHE)/bin/apxs # HTTPD = $(APACHE)/bin/httpd #### Un_rem this line ... # APACHE_SSL = $(shell ./apversion.sh -iseapi ${HTTPD}) #### Rem out the next line ... # APACHE_SSL = #### Add this to line 56 at the end of CFLAGS # "-I/usr/local/apache/include" #### Without the QUOTES #### We will make and make install during the OGo build process |
Install OGo
|
#### Do the Following
$> cd /usr/src/ogo/sources-all #### GNUstep Make $> cd /usr/src/ogo/sources-all/ThirdParty/gnustep-make ./configure --prefix=/opt/OGo \ --without-system-root \ --with-network-root=/opt/OGo \ --with-local-root=/opt/OGo \ --with-user-root=/opt/OGo \ --with-library-combo=gnu-fd-nil $> make -s install $> source /opt/OGo/Makefiles/GNUstep.sh #### GNUstep Objective-C Runtime #### NOTE: Not having the Slackware package gcc-objc installed #### will give you and error. #### You must install the gcc-objc Slackware package $> cd /usr/src/ogo/sources-all/ThirdParty/gnustep-objc $> make -s debug=yes install $> source /opt/OGo/Makefiles/GNUstep.sh #### libFoundation $> cd /usr/src/ogo/sources-all/ThirdParty/libFoundation $> ./configure --with-gnustep $> make -s debug=yes install $> source /opt/OGo/Makefiles/GNUstep.sh #### libxml $> cd /usr/src/ogo/sources-all/ThirdParty/libxml2 $> ./cfg-gnustep.sh $> make -s install $> source /opt/OGo/Makefiles/GNUstep.sh #### libical $> cd /usr/src/ogo/sources-all/ThirdParty/libical $> ./cfg-gnustep.sh $> make -s install $>source /opt/OGo/Makefiles/GNUstep.sh #### SpiderMonkey $> cd /usr/src/ogo/sources-all/ThirdParty/js-1.5 $> make -s instal $> source /opt/OGo/Makefiles/GNUstep.sh #### SKYRiX XML $> cd /usr/src/ogo/sources-all/SOPE/skyrix-xml $> make -s debug=yes install $> source /opt/OGo/Makefiles/GNUstep.sh #### SKYRiX Core Libraries $> cd /usr/src/ogo/sources-all/SOPE/skyrix-core $> make -s debug=yes install #### Use the following if you receive an error about not being able to find ssl. #### Typical if you installed OpenSSL from source # make ssl=no -s debug=yes install #### #### $> source /opt/OGo/Makefiles/GNUstep.sh #### SKYRiX Object Publishing Environment $> cd /usr/src/ogo/sources-all/SOPE/skyrix-sope $> make -s debug=yes install $> source /opt/OGo/Makefiles/GNUstep.sh #### GNUstep Database Library $> cd /usr/src/ogo/sources-all/ThirdParty/gnustep-db/GDLAccess $> make -s debug=yes install $> source /opt/OGo/Makefiles/GNUstep.sh #### PostgreSQL 7.2 Adaptor $> cd /usr/src/ogo/sources-all/ThirdParty/gnustep-db/PostgreSQL72 $> make -s debug=yes install $> source /opt/OGo/Makefiles/GNUstep.sh #### OGo Business Logic $> cd /usr/src/ogo/sources-all/Logic $> make -s debug=yes install $> Defaults write NSGlobalDomain NGBundlePath \ "$GNUSTEP_USER_ROOT/Library/OpenGroupware.org" $> source /opt/OGo/Makefiles/GNUstep.sh #### OGo Database Objects $> cd /usr/src/ogo/sources-all/Database/OGoModel $> make -s debug=yes install $> source /opt/OGo/Makefiles/GNUstep.sh #### OGo Document API $> cd /usr/src/ogo/sources-all/DocumentAPI $> make -s debug=yes install $> source /opt/OGo/Makefiles/GNUstep.sh #### OGo Web-Interface $> cd /usr/src/ogo/sources-all/WebUI $> make -s debug=yes install $> cd /usr/src/ogo/sources-all/WebUI/Resources $> make install $> source /opt/OGo/Makefiles/GNUstep.sh $> cd /usr/src/ogo/sources-all/Themes/WebServerResources $> make install $> source /opt/OGo/Makefiles/GNUstep.sh $> cd /usr/src/ogo/mod_ngobjweb $> PATH=/usr/local/apache/bin:$PATH make $> PATH=/usr/local/apache/bin:$PATH make install $> ln -s ngobjwebssl_1.3.31.so /usr/local/apache/libexec/ngobjwebssl_1.3.31.so $> cd /usr/src/ogo/sources-all/WebUI/OpenGroupware.org $> ./OpenGroupware.woa/ix86/linux-gnu/gnu-fd-nil/OpenGroupware \ -WOPort '"*:20000"' #### Kill the OGo process you just stared $> crtl + c |
Additional things to do
|
####Do the Following
$> cd /opt/OGo/WOApps/OpenGroupware.woa/WebServerResources $> ln -s /opt/OGo/WebServerResources/English.lproj English.lproj $> mkdir /home/siteadm/attachments/ -p $> mkdir /home/siteadm/sky/ -p $> mkdir /home/siteadm/attachments/ -p |
Finish-up PostgreSQL
|
#### Do the Following
$> mkdir -p /home/postgres/data $> chown -R postgres /home/postgres $> su - postgres #> /usr/local/pgsql/bin/initdb -D /home/postgres/data #> /usr/local/pgsql/bin/postmaster -D /home/postgres/data > /tmp/logfile 2>&1 & #> /usr/local/pgsql/bin/createdb OGo #> /usr/local/pgsql/bin/createuser -A -D OGo #> cd /usr/src/ogo/sources-all/Database/PostgreSQL #> /usr/local/pgsql/bin/psql OGo OGo Welcome to psql 7.3.3, the PostgreSQL interactive terminal. Type: \copyright for distribution terms \h for help with SQL commands \? for help on internal slash commands \g or terminate with semicolon to execute query \q to quit OGo=> \i pg-build-schema.psql ####[output cut] OGo=> \q #> exit $> source /opt/OGo/Makefiles/GNUstep.sh $> Defaults write NSGlobalDomain LSConnectionDictionary '{databaseName = OGo; hostName = localhost; password = ""; port = 5432; userName = OGo}' # on one line $> Defaults read NSGlobalDomain LSConnectionDictionary $> mkdir /opt/OGo/documents $> chown OGo /opt/OGo/documents #### You can start postgresql manually with the following. $> su - postgres #> /usr/bin/postmaster -i -D /home/postgres/data > /tmp/logfile 2>&1 & #### We will have to start PostgreSQL with sudo- more on that later |
Create an OpenGroupware startup script
|
#### Download the following to /etc/rc.d/
rc.ogo rc.ogo2 ###### $> chown ogo.ogo /etc/rc.d/rc.ogo2 $> chmod u+x /etc/rc.d/rc.ogo* |
Create PostgreSQL Startup script
|
#### Put the following in /etc/rc.d/rc.postgres
#!/bin/sh case "$1" in 'start') sudo -u postgres /usr/bin/pg_ctl start \ -o -i -D /home/postgres/data ;; 'stop') sudo -u postgres /usr/bin/pg_ctl stop -o -i -D /home/postgres/data ;; br> *) echo "usage $0 start|stop" esac #### $> chmod u+x /etc/rc.d/rc.postgresql |
Start Apache
|
#### Put the Following in /etc/rc.d/rc.httpd
#!/bin/sh /usr/local/apache/bin/apachectl startssl #### $> chmod u+x /etc/rc.d/rc.httpd |
Start Apache, PostgreSQL and OpenGroupware on startup
|
#### Put the following lines in /etc/rc.d/rc.local
# Start PostgreSQL echo "Starting PostgreSQL" echo "" /etc/rc.d/rc.postgresql start echo "" echo "PostgreSQL started" echo "" # Start Apache echo "Starting Apache" echo "" /etc/rc.d/rc.httpd echo "" echo "Apache started" echo "" # Start OGo echo "Starting OGo" echo "" /etc/rc.d/rc.ogo echo "" echo "OGo started" echo "" |
That completes the install of OpenGroupware
The Following will be a work in progress of additional apps used with OGo.
Build Qmail
|
### Do the following
### Patch Qmail
$> cd /usr/src/ogo/qmail/qmail-1.03 $> patch -p1 < /usr/src/ogo/qmail-ldap-1.03-20040801.patch ### Build Qmail $> cd /usr/src/ogo/qmail/qmail-1.03 $> SHADOWLIBS=-lcrypt make $> make setup check $> ./config ### Patch and Build checkpassword (use only if not using LDAP) $> cd /usr/src/ogo/checkpassword $> sed 's/extern int errno;/#include $> mv error.h2 error.h $> make $> make setup check ### Patch tcpserver $> cd /usr/src/ogo/tcpserver $> patch -p1 < /usr/src/ogo/ucspi-tcp-0.88.errno.patch ### Build tcpserver $> cd /usr/src/ogo/tcpserver $> make $> make setup check ### Create control file to close the qmila open-relay $> touch /etc/tcp.smtp $> echo '127.0.0.1:allow,RELAYCLIENT=""' > /etc/tcp.smtp $> echo ":allow" >> /etc/tcp.smtp $> tcprules /etc/tcp.smtp.cdb /tmp/tcp.smtp.tmp < /etc/tcp.smtp tcprulescheck /etc/tcp.smtp.cdb ### Configure QMAIL ### We recommend creating all of these fils in /var/qmail and editing ### them to macth your system configuration. Please see the documention ### at life-with qmail.org and qmail.org ### We will update these directions as time allows and as we confirm them. # defaultdelivery # ldaplocaldelivery # ldapuid # rcpthosts # defaultdomain # ldaplogin # locals # signatures # defaulthost # ldapmessagestore # virtualdomains # helohost # ldapobjectclass # virtualhosts # ldapbasedn # ldappassword # me # ldapgid # ldapserver # plusdomain ### Cteate qmail startup file ### put the following in /etc/rc.d/rc.qmaild ### Edit the user/group that tcpserver starts smtp as ### this is the line to edit /etc/tcp.smtp.cdb -u 1002 -g 103 0 smtp \ ### Change 1002 and 103 to reflect your user and group UID and GID #!/bin/sh # case "$1" in 'start') echo -n "Starting: " echo -n "smtp, " /usr/local/bin/tcpserver -x \ /etc/tcp.smtp.cdb -u 1002 -g 103 0 smtp \ /var/qmail/bin/qmail-smtpd & echo -n "pop3, " /usr/lib/courier-imap/libexec/pop3d.rc start echo -n "imap, " /usr/lib/courier-imap/libexec/imapd.rc start echo -n "sqwm-auth, " /usr/local/share/sqwebmail/libexec/sqwebmaild.rc start echo "mail-relay." env - PATH="/var/qmail/bin:$PATH" \ qmail-start ./Maildir/ splogger qmail & ;; 'stop') echo -n "Stopping: " echo -n "pop3, " /usr/lib/courier-imap/libexec/pop3d.rc stop echo -n "imap, " /usr/lib/courier-imap/libexec/imapd.rc stop ### Take this out if you are not running SQwebmail echo -n "sqwm-auth, " /usr/local/share/sqwebmail/libexec/sqwebmaild.rc stop echo -n "splogger, " killall splogger echo -n "qmail-send, " killall qmail-send echo "qmail-smtpd " kill -s 9 `ps ax | grep qmail-smtpd | awk '{ print $1 }'` ;; *) echo "usage: $0 start|stop" esac #### Change permision on the rc.qmaild $> chmod u+x /etc/rc.d/rc.qmaild |
Sending Mail with Qmail and OGo
|
#### Create a sym link
ln -s /var/qmail/bin/sendmail /usr/lib/sendmail |
Make the qmail schema available to ldap
|
## Make the qmail schema available to the ldap server cp /usr/src/ogo/qmail/qmail-1.03/qmail.schema /etc/openldap/schema/ |
Modify the ldap configuration
|
#### Put the following in: /etc/openldap/slapd.conf
#!/bin/sh /usr/libexec/slapd -4 #### Suggested schemas include /etc/openldap/schema/core.schema include /etc/openldap/schema/cosine.schema include /etc/openldap/schema/inetorgperson.schema include /etc/openldap/schema/nis.schema include /etc/openldap/schema/qmail.schema ## Basic configuration options pidfile /usr/var/run/slapd.pid argsfile /usr/var/run/slapd.args allow bind_v2 database bdb directory /home/openldap-data ## You must now decide on the base DN (distinguished name) for your ldap server. ## There are a good number of Internet articles discussing different approaches. ## If you are unsure, here are a few examples: #### dc=foobar,dc=com #### o=mydn,c=US suffix "dc=foobar,dc=com" rootdn "cn=manager,dc=foobar,dc=com" rootpw secret ## You need to change that password. ## It is also suggested that you restrict access via "access" statments ## Creating indexes using "index" statements and slapindex are also recommended ## Securing and maintaining your ldap server are beyond the scope of this HOW-TO |
Hi there,
In the configure for krb5 there is an option "--localstatedir=/etc", IMHO this should be "--localstatedir=/var"
But I've been known to be wrong before ;)
Peter