The Perfect Server - OpenSUSE 11.2 x86_64 [ISPConfig 3] - Page 4

Want to support HowtoForge? Become a subscriber!
 
Submitted by falko (Contact Author) (Forums) on Thu, 2009-11-19 17:54. ::

8 Install Postfix, Courier, Saslauthd, MySQL

Run

yast2 -i postfix postfix-mysql mysql mysql-client courier-imap courier-authlib courier-authlib-mysql python cron cyrus-sasl cyrus-sasl-crammd5 cyrus-sasl-digestmd5 cyrus-sasl-gssapi cyrus-sasl-otp cyrus-sasl-plain cyrus-sasl-saslauthd libmysqlclient-devel pwgen

Start MySQL, Postfix, SASL and Courier and enable the services to be started at boot time.

chkconfig --add mysql
chkconfig --add postfix
chkconfig --add saslauthd
chkconfig --add fam
chkconfig --add courier-authdaemon
chkconfig --add courier-pop
chkconfig --add courier-imap
chkconfig --add courier-pop-ssl
chkconfig --add courier-imap-ssl
/etc/init.d/mysql start
/etc/init.d/postfix start
/etc/init.d/saslauthd start
/etc/init.d/courier-pop start
/etc/init.d/courier-imap start
/etc/init.d/courier-pop-ssl start
/etc/init.d/courier-imap-ssl start

Now I install some rpm packages which are not available from the OpenSUSE main repositories.

cd /tmp
rpm -i http://download.opensuse.org/repositories/server:/mail/openSUSE_11.2/noarch/getmail-4.13.0-1.1.noarch.rpm
rpm --force -i http://download.opensuse.org/repositories/server:/mail/openSUSE_11.2/x86_64/maildrop-2.2.0-2.9.x86_64.rpm

Warnings like warning: /var/tmp/rpm-tmp.OW27Dr: Header V3 DSA signature: NOKEY, key ID 367fe7fc can be ignored.

Next I install the pam_mysql module from source. pam_mysql is not available from the main OpenSUSE repository and the package from the build service did not work for me.

yast2 -i pam-devel pam-32bit pam-devel-32bit pam-modules-32bit

cd /tmp
wget http://heanet.dl.sourceforge.net/sourceforge/pam-mysql/pam_mysql-0.7RC1.tar.gz
tar xvfz pam_mysql-0.7RC1.tar.gz
cd pam_mysql-0.7RC1
./configure
make
make install
rm -rf /tmp/pam_mysql-0.7RC1
rm /tmp/pam_mysql-0.7RC1.tar.gz

To secure the MySQL installation, run:

mysql_secure_installation

Now you will be asked several questions:

server1:~ # mysql_secure_installation




NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!


In order to log into MySQL to secure it, we'll need the current
password for the root user.  If you've just installed MySQL, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):
<-- ENTER
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.

Set root password? [Y/n]
 <-- Y
New password: <-- yourrootsqlpassword
Re-enter new password: <-- yourrootsqlpassword
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n]
 <-- Y
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n]
 <-- Y
 ... Success!

By default, MySQL comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n]
 <-- Y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n]
 <-- Y
 ... Success!

Cleaning up...



All done!  If you've completed all of the above steps, your MySQL
installation should now be secure.

Thanks for using MySQL!


server1:~ #

Now your MySQL setup should be secured.

 

9 Amavisd-new, Spamassassin and Clamav

Install Amavisd-new, Spamassassin and Clamav antivirus. Run

yast2 -i amavisd-new clamav clamav-db zoo unzip unrar bzip2 unarj perl-DBD-mysql

Open /etc/amavisd.conf...

vi /etc/amavisd.conf

... and add the $myhostname line with your correct hostname below the $mydomain line:

[...]
$mydomain = 'example.com';   # a convenient default for other settings
$myhostname = "server1.$mydomain";
[...]

To enable the services, run:

chkconfig --add amavis
chkconfig --add clamd
/etc/init.d/amavis start
/etc/init.d/clamd start

 

10 Install the Apache 2 Webserver and PHP5

Inastall Apache2 and suphp. Run:

yast2 -i apache2 apache2-mod_fcgid

Install PHP5:

yast2 -i php5-bcmath php5-bz2 php5-calendar php5-ctype php5-curl php5-dom php5-ftp php5-gd php5-gettext php5-gmp php5-iconv php5-imap php5-ldap php5-mbstring php5-mcrypt php5-mysql php5-odbc php5-openssl php5-pcntl php5-pgsql php5-posix php5-shmop php5-snmp php5-soap php5-sockets php5-sqlite php5-sysvsem php5-tokenizer php5-wddx php5-xmlrpc php5-xsl php5-zlib php5-exif php5-fastcgi php5-pear php5-sysvmsg php5-sysvshm ImageMagick curl apache2-mod_php5

rpm -i http://download.opensuse.org/repositories/server:/php/openSUSE_11.2/x86_64/suphp-0.7.1-3.1.x86_64.rpm

Then run these commands to enable the Apache modules:

a2enmod suexec
a2enmod rewrite
a2enmod ssl
a2enmod actions
a2enmod suphp
a2enmod fcgid
chown root:www /usr/sbin/suexec2
chmod 4755 /usr/sbin/suexec2

And start Apache.

chkconfig --add apache2
/etc/init.d/apache2 start

Install phpMyAdmin:

rpm -i http://download.opensuse.org/repositories/server:/php:/applications/openSUSE_11.2/noarch/phpMyAdmin-3.2.3-1.1.noarch.rpm

Warnings like warning: /var/tmp/rpm-tmp.kRRPEK: Header V3 DSA signature: NOKEY, key ID ddcd7f1a can be ignored.

 

11 pure-ftpd

Install the pure-ftpd FTP daemon. Run:

yast2 -i pure-ftpd quota

chkconfig --add pure-ftpd
/etc/init.d/pure-ftpd start


Please do not use the comment function to ask for help! If you need help, please use our forum.
Comments will be published after administrator approval.
Submitted by Blazonj (not registered) on Tue, 2010-04-06 00:03.

Now I install some rpm packages which are not available from the OpenSUSE main repositories.

cd /tmp
rpm -i http://download.opensuse.org/repositories/server:/mail/openSUSE_11.2/noarch/getmail-4.13.0-1.1.noarch.rpm
rpm --force -i http://download.opensuse.org/repositories/server:/mail/openSUSE_11.2/x86_64/maildrop-2.2.0-2.9.x86_64.rpm

Warnings like warning: /var/tmp/rpm-tmp.OW27Dr: Header V3 DSA signature: NOKEY, key ID 367fe7fc can be ignored.

 

Everything went really smooth with the exception of the link in the above referenced section which is broken due to a newer version. the new link is: http://download.opensuse.org/repositories/server:/mail/openSUSE_11.2/noarch/getmail-4.16.0-1.1.noarch.rpm

 

Thanks for tutorial!

Submitted by blathori (not registered) on Wed, 2010-07-14 14:39.

Now only have this in the repositories:

http://download.opensuse.org/repositories/server:/mail/openSUSE_11.2/noarch/getmail-4.20.0-1.1.noarch.rpm

i supose is the same awever  it give me a warning:

/var/tmp/rpm-tmp.qK8ilu: Header V3 DSA signature: NOKEY, key ID 367fe7fc

but that can be ignored   ;) (seek in tutorial)

Submitted by Tom (not registered) on Tue, 2010-01-26 23:24.

Hi,

at first thanks for this guideline!

I had to make the following changes in order to get thing work:

  Error (mail.log)
  ...temporary failure. Command output: /usr/bin/maildrop: Cannot set my user or group id

  Resolution
  Change user vmail via yast:
  Set home dir to /var/vmail incl. change owner option
  Lookup uid and guid of vmail in yast and set this in ispconfig accordingly
  ----
  Error
  Jan 26 14:40:02 tbonetom postfix/smtpd[26747]: warning: no entropy for TLS key generation: disabling TLS support
  Jan 26 14:45:03 tbonetom postfix/smtpd[27153]: warning: connect to private/tlsmgr: No such file or directory
  Jan 26 14:45:03 tbonetom postfix/smtpd[27153]: warning: problem talking to server private/tlsmgr: No such file or

  Resolution
  you have to uncomment
    tlsmgr unix - - n 1000? 1 tlsmgr
  in /etc/postfix/master.cf
  Restart postfix
  ----
  Error
  authentication failure (in mail.log from smtp session)
 
  Resolution
  Do not do this from the how-to:
  ..............................................................................
  Next I install the pam_mysql module from source. pam_mysql is not available
  from the main OpenSUSE repository and the package from the build service did
  not work for me.

  yast2 -i pam-devel pam-32bit pam-devel-32bit pam-modules-32bit

  cd /tmp
  wget http://heanet.dl.sourceforge.net/sourceforge/pam-mysql/pam_mysql-0.7RC1.tar.gz
  tar xvfz pam_mysql-0.7RC1.tar.gz
  cd pam_mysql-0.7RC1
  ./configure
  make
  make install
  rm -rf /tmp/pam_mysql-0.7RC1
  rm /tmp/pam_mysql-0.7RC1.tar.gz
  ..............................................................................
 
  BUT THIS:
  rpm -i http://download.opensuse.org/repositories/home:/buschmann23/openSUSE_11.2/x86_64/pam_mysql-0.7RC1-12.1.x86_64.rpm
  respective the most recent version. The link can be found here:
  http://software.opensuse.org/search
  Search for pam_mysql and select the x86_64 version for 64bit installations