Идеальный сервер - CentOS 5.5 x86_64 [ISPConfig 3]

Звезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активна
 

CentOSВ этом материале показано, как подготовить CentOS 5.5 x86_64 сервер для установки ISPConfig 3, и как установить саму ISPConfig 3. ISPConfig 3, веб-хостинг панель управления, которая позволяет настроить следующие услуги через веб-браузер: веб-сервер Apache, Postfix почтовый сервер, MySQL, BIND, PureFTPd, SpamAssassin, ClamAV, и многое другое.

Требования

Для установки такой системы необходимо следующее:

  • Скачать два CentOS 5.5 DVD-дисков или восемь CentOS 5.5 компакт-диски
  • Быстрое подключение к Интернету.

Предварительные замечания

В данной статье я использую имя хоста server1.example.com с IP-адреса 192.168.1.101 и шлюз 192.168.1.1. Эти параметры могут отличаться у Вас, поэтому Вам придется заменить их в случае необходимости.

Установка базовой системы

Загрузка с вашего первого CentOS 5.5 CD (CD 1) или первой CentOS 5.5 DVD. Enter для подтверждения загрузки:

Установка CentOS 5.5

Это может занять много времени, пропустим его, чтобы мы не показывать этот тест здесь:

Установка CentOS 5.5

Появляется экран приветствия программы установки CentOS. Нажмем Next:

Установка CentOS 5.5

Выберите ваш язык:

Установка CentOS 5.5

Выберите раскладку клавиатуры:

Установка CentOS 5.5

Я устанавливаю CentOS 5.5 на свежую систему, так что я ответить Да на вопрос Хотели бы Вы, инициализировать этот диск, удалив все данные?

Установка CentOS 5.5

Теперь мы должны выбрать схемы для нашей установки. Для простоты я выбираю:

{xtypo_quote}Удалить разделы Linux на выбранных дисках и создать разбиение по умолчанию.{/xtypo_quote}

Установка CentOS 5.5

Ответьте на следующие вопросы (Вы уверены, что хотите это сделать?) - Да:

Установка CentOS 5.5

По умолчанию для настройки сетевых интерфейсов используется DHCP, но мы устанавливаем сервер, поэтому статические IP-адреса не плохая идея ...Нажмите на "Изменить" кнопке в правом верхнем углу.

Установка CentOS 5.5

Во всплывающем окне снимите флажок dynamic IP configuration (DHCP) и Enable IPv6 support и присвоить вашей сетевой карты статический IP-адрес (в этом руководстве я использую IP-адрес 192.168.1.101 для демонстрационных целей) и подходящей маски например, 255.255.255.0:

Установка CentOS 5.5

Установить имя вручную, например, server1.example.com и введите шлюз (например, 192.168.1.1) и до двух DNS-серверов (например, 192.168.1.1 и 8.8.8.8):

Установка CentOS 5.5

Выберите свой часовой пояс:

Установка CentOS 5.5

Дайте пароль для root:

Установка CentOS 5.5


Теперь выберите программного обеспечения которое мы хотим установить. Выберите только сервера, Packages from CentOS Extras не выбирать. Настройку списка программ выполним сейчас, и нажмем далее:

Установка CentOS 5.5

Теперь мы должны выбрать группы пакетов которые хотим установить:

Приложения

Программирование

Серверы

Базовая система

Редакторы Библиотеки для разработки Сервер DNS Средства администрирования
Текстовые средства Интернет Средства разработки Сервер электронной почты Основа
База данных MySQL Системные средства
Средства настройки сервера
Веб-сервер
FTP сервер

Установка CentOS 5.5

Установщик проверяет зависимости от выбранных пакетов. Нажмите на далее , чтобы начать установку:

Установка CentOS 5.5

Наконец, установка завершена, и Вы можете извлечь Ваш диск из компьютера и перезагрузить его:

Установка CentOS 5.5

После перезагрузки, вы увидите этот экран. Выберите настройка брандмауэра и нажмите Запустить утилиту:

Установка CentOS 5.5

Так как я устанавливаю ISPConfig 3 в этом материале, который поставляется с собственным брандмауэром, поэтому я и отключаю его по умолчанию в CentOS. Конечно, вы можете оставить его и настроить его под свои нужды, но тогда вы не должны использовать любой другой брандмауэр после этого.

SELinux является расширенным обеспечением CentOS, который дает расширенную безопасность. На мой взгляд, вам не нужно его настроить безопасную систему, и это обычно вызывает больше проблем, чем преимуществ. Поэтому я могу отключить его, тоже (это необходимо, если вы хотите установить ISPConfig позже). Продолжим нажав OK:

Установка CentOS 5.5

Затем остановим установочный агента, выбрав Выход:

Установка CentOS 5.5

Затем войдем в систему как root и перезапустим систему, для применения изменений:

  • reboot

Теперь переходим к конфигурации ...


Далее отредактируем /etc/hosts. Выглядеть будет следующим образом:

# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1               localhost.localdomain localhost
192.168.1.102           server1.example.com server1
::1             localhost6.localdomain6 localhost6

Настройка дополнительных IP-адресов

(Этот раздел является абсолютно обязательным. Это просто показывает, как добавить дополнительные адреса IP для сетевой интерфейс eth0, если вам нужно больше, чем один IP-адрес. Если у вас все в порядке с одного адреса IP, вы можете пропустить этот раздел.)

Предположим, наш сетевой интерфейс eth0. Тогда существует файл /etc/sysconfig/network-scripts/ifcfg-eth0 который содержит настройки для eth0. Мы можем использовать это в качестве образца для нашей новой виртуальной сетевой интерфейс eth0:0 :

  • cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0:0

Теперь мы хотим использовать IP-адрес 192.168.1.102 на виртуальный интерфейс eth0:0. Поэтому мы открываем файл /etc/sysconfig/network-scripts/ifcfg-eth0:0 и изменим его следующим образом:

  • nano /etc/sysconfig/network-scripts/ifcfg-eth0:0
# Intel Corporation 82545EM Gigabit Ethernet Controller (Copper)
DEVICE=eth0:0
BOOTPROTO=static
BROADCAST=192.168.0.255
IPADDR=192.168.0.101
NETMASK=255.255.255.0
NETWORK=192.168.0.0
ONBOOT=yes

Затем мы должны перезапустить сеть:

  • /etc/init.d/network restart

Вы также можете настроить /etc/hosts после добавления новых адресов IP, хотя это и не нужно. Теперь запустите:

  • ifconfig

Теперь вы должны увидеть Ваш новый IP-адрес в выводе:

[root@server1 ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:FD:78:BE
          inet addr:192.168.1.101  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fefd:78be/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:130 errors:0 dropped:0 overruns:0 frame:0
          TX packets:137 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:12592 (12.2 KiB)  TX bytes:31876 (31.1 KiB)
          Base address:0x1070 Memory:ec820000-ec840000

eth0:0    Link encap:Ethernet  HWaddr 00:0C:29:FD:78:BE
          inet addr:192.168.1.102  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Base address:0x1070 Memory:ec820000-ec840000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:560 (560.0 b)  TX bytes:560 (560.0 b)

[root@server1 ~]#

Теперь вы должны увидеть ваш новый IP-адрес в выходной:

Отключим брандмауэр и SELinux

Так как я устанавливаю ISPConfig 3 в этом материале, который поставляется с собственным брандмауэром, поэтому я и отключаю его по умолчанию в CentOS. Конечно, вы можете оставить его и настроить его под свои нужды, но тогда вы не должны использовать любой другой брандмауэр после этого.

SELinux является расширенным обеспечением CentOS, который дает расширенную безопасность. На мой взгляд, вам не нужно его настроить безопасную систему, и это обычно вызывает больше проблем, чем преимуществ. Поэтому я могу отключить его, тоже (это необходимо, если вы хотите установить ISPConfig позже).

Выполним:

  • system-config-securitylevel

Установим Security Level и SELinux как выключен и нажмите OK:

Установка CentOS 5.5

Затем перезапустим систему, для применения изменений:

  • reboot

Установим некоторые программы

Сначала импортируем GPG ключи для программных пакетов:

  • rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*

Включить contrib и centosplus хранилище:

  • nano /etc/yum.repos.d/CentOS-Base.repo

Изменить строки как показано ниже:

[base]
[...]
exclude=postfix
[...]
[update]
[...]
exclude=postfix
[...]
[centosplus]
[...]
enabled=1
includepkgs=postfix
[...]
[contrib]
[...]
enabled=1
[...]

Обновим наши существующие пакеты в системе:

  • nano /etc/yum.repos.d/CentOS-Base.repo

Теперь мы установим некоторые пакеты программного обеспечения, которые необходимы в дальнейшем:

  • yum groupinstall 'Development Tools'
  • yum groupinstall 'Development Libraries'

Квота

Чтобы установить квоту, мы запускаем эту команду:

  • yum install quota

Изменить /etc/fstab и добавьте , usrquota, grpquota к разделу ( /dev/VolGroup00/LogVol00):

/dev/VolGroup00/LogVol00 /                       ext3    defaults,usrquota,grpquota        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
/dev/VolGroup00/LogVol01 swap                    swap    defaults        0 0

Выполним:

  • touch /aquota.user /aquota.group
  • chmod 600 /aquota.*
  • mount -o remount /
  • quotacheck -avugm
  • quotaon -avug

запустим квоту.

Установим Apache, MySQL, phpMyAdmin

Сначала мы разрешим RPMforge хранилище в нашей системе CentOS, так как многие пакеты, которые мы собираемся установить не доступны ходе этого в официальном CentOS 5.5 хранилище:

  • rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
  • cd /tmp
  • wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm
  • rpm -ivh rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm

(Если выше ссылка уже не работает, вы можете найти текущую версию rpmforge-release здесь:http://packages.sw.be/rpmforge-release/)

Затем мы можем установить необходимые пакеты с одной командой:

  • rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
  • yum install ntp httpd mysql-server php php-mysql php-mbstring php-mcrypt phpmyadmin

Установим Dovecot

В пакете Dovecot CentOS хранилища, не поддерживает MySQL. Поэтому мы должны удалить существующие Dovecot и установить другой пакет Dovecot (от ATrpms), которая поставляется с поддержкой MySQL:

  • yum remove dovecot
  • rpm -ivh http://dl.atrpms.net/all/dovecot-1.2.14-1_112.el5.x86_64.rpm
  • rpm -ivh http://dl.atrpms.net/all/dovecot-sieve-0.1.17-5.el5.x86_64.rpm
  • rm -fr /usr/lib/dovecot/
  • ln -s /usr/lib64/dovecot/ /usr/lib/dovecot

Теперь мы создаем запуска системы с Dovecot:

  • chkconfig --levels 235 dovecot on
  • /etc/init.d/dovecot start

Установите Postfix с поддержкой MySQL

"Нормальных" Postfix пакет из репозитория CentOS не имеет MySQL, но пакет Postfix из CentOS Plus хранилища имеет. Поэтому мы удаляем Postfix и установить его снова, на этот раз от CentOS Plus хранилища и добавим их в автозагрузку системы:

  • yum remove postfix
  • yum install postfix
  • chkconfig --levels 235 mysqld on
  • /etc/init.d/mysqld start
  • chkconfig --levels 235 sendmail off
  • chkconfig --levels 235 postfix on
  • /etc/init.d/sendmail stop
  • /etc/init.d/postfix start

Установите GetMail

  • yum install getmail

Установка MySQL пароля и настройка PhpMyAdmin

Установите пароль для учетной записи корень MySQL:

  • mysql_secure_installation
[root@server1 tmp]# 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):
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] - ENTER
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] - ENTER
 ... 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] - ENTER
 ... 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] - ENTER
 - 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] - ENTER
 ... 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!


[root@server1 tmp]#

Теперь мы настроим PhpMyAdmin. Мы изменение конфигурации Apache, чтобы PhpMyAdmin позволяет связей не только с локального хоста (путем комментирования строки):

  • nano /etc/httpd/conf.d/phpmyadmin.conf
#
#  Web application to manage MySQL
#

#
#  Order Deny,Allow
#  Deny from all
#  Allow from 127.0.0.1
#

Alias /phpmyadmin /usr/share/phpmyadmin
Alias /phpMyAdmin /usr/share/phpmyadmin
Alias /mysqladmin /usr/share/phpmyadmin

Далее изменяем аутентификацию в PhpMyAdmin из формы с HTTP:

  • nano /usr/share/phpmyadmin/config.inc.php
[...]
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'http';
[...]

Затем мы создаем запуска системы связи для Apache и запустить ее:

  • chkconfig --levels 235 httpd on
  • /etc/init.d/httpd start

Теперь Вы можете перейти в Вашем браузере http://server1.example.com/phpmyadmin/ или http://192.168.1.101/phpmyadmin/ и войдете в систему с именем пользователя root и Вашим новый root паролем MySQL.

Установим Amavisd-new, SpamAssassin и ClamAV

Чтобы установить Amavisd-new, SpamAssassin и ClamAV, запустите следующую команду:

  • yum install amavisd-new spamassassin clamav clamd unzip bzip2 unrar perl-DBD-mysql
  • nano /etc/sysconfig/amavisd

... и добавьте строку CONFIG_FILE="/etc/amavisd/amavisd.conf":

### Uncomment this if you want to use amavis with sendmail milter interface.
### See README.milter for details.
#
#MILTER_SOCKET="local:/var/amavis/amavis-milter.sock"
#MILTER_SOCKET="10024@127.0.0.1"

### These are other defaults.
#AMAVIS_ACCOUNT="amavis"
#CONFIG_FILE="/etc/amavisd.conf"
#MILTER_FLAGS=""
CONFIG_FILE="/etc/amavisd/amavisd.conf"

Теперь мы запускаем Freshclam, AMaViSd, и Clamd ...

  • sa-update
  • chkconfig --levels 235 amavisd on
  • chkconfig --levels 235 clamd on
  • /usr/bin/freshclam
  • /etc/init.d/amavisd start
  • /etc/init.d/clamd start

Создадим необходимые каталоги:

  • mkdir /var/run/amavisd /var/spool/amavisd /var/spool/amavisd/tmp /var/spool/amavisd/dbe
  • chown amavis /var/run/amavisd /var/spool/amavisd /var/spool/amavisd/tmp /var/spool/amavisd/db
  • ln -s /var/run/clamav/clamd.sock /var/spool/amavisd/clamd.sock

Установка Apache2 с mod_php, mod_fcgi/PHP5, И suPHP

ISPConfig 3 позволяет использовать mod_php, mod_fcgi/PHP5, cgi/PHP5, и suPHP в основе сайта. Mod_fcgid не доступен в репозитории CentOS, но есть пакет для CentOS 5.x в centos.karan.org тестирования хранилище. Мы даем возможность хранилище следующим образом:

  • cd /etc/yum.repos.d/
  • wget http://centos.karan.org/kbsingh-CentOS-Extras.repo
  • nano /etc/yum.repos.d/kbsingh-CentOS-Extras.repo
[...]
[kbs-CentOS-Testing]
name=CentOS.Karan.Org-EL$releasever - Testing
gpgcheck=0
gpgkey=http://centos.karan.org/RPM-GPG-KEY-karan.org.txt
enabled=1
baseurl=http://centos.karan.org/el$releasever/extras/testing/$basearch/RPMS/

Затем мы можем установить Apache2with mod_php5, mod_fcgid, и PHP5:

  • yum install php php-devel php-gd php-imap php-ldap php-mysql php-odbc php-pear php-xml php-xmlrpc php-eaccelerator php-mbstring php-mcrypt php-mhash php-mssql php-snmp php-soap php-tidy curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-devel mod_fcgid php-cli httpd-devel

Далее мы откроем /etc/php.ini ...

  • nano /etc/php.inil

... и изменение сообщений об ошибках (так что уведомления не показаны больше) и добавить cgi.fix_pathinfo = 1 в конце файла:

[...]
[kbs-CentOS-Testing]
name=CentOS.Karan.Org-EL$releasever - Testing
gpgcheck=0
gpgkey=http://centos.karan.org/RPM-GPG-KEY-karan.org.txt
enabled=1
baseurl=http://centos.karan.org/el$releasever/extras/testing/$basearch/RPMS/

Далее установим suPHP:

  • cd /tmp
  • wget http://suphp.org/download/suphp-0.7.1.tar.gz
  • tar xvfz suphp-0.7.1.tar.gz
  • cd suphp-0.7.1/
  • ./configure --prefix=/usr --sysconfdir=/etc --with-apr=/usr/bin/apr-1-config --with-apxs=/usr/sbin/apxs --with-apache-user=apache --with-setid-mode=owner --with-php=/usr/bin/php-cgi --with-logfile=/var/log/httpd/suphp_log --enable-SUPHP_USE_USERGROUP=yes
  • make
  • make install

Затем мы добавляем suPHP модуль для нашей конфигурации Apache ...

  • nano /etc/httpd/conf.d/suphp.conf

и создать файл / и т.д. / suphp.conf следующим образом:

  • nano /etc/suphp.conf
[global]
;Path to logfile
logfile=/var/log/httpd/suphp.log
;Loglevel
loglevel=info
;User Apache is running as
webserver_user=apache
;Path all scripts have to be in
docroot=/
;Path to chroot() to before executing script
;chroot=/mychroot
; Security options
allow_file_group_writeable=true
allow_file_others_writeable=false
allow_directory_group_writeable=true
allow_directory_others_writeable=false
;Check wheter script is within DOCUMENT_ROOT
check_vhost_docroot=true
;Send minor error messages to browser
errors_to_browser=false
;PATH environment variable
env_path=/bin:/usr/bin
;Umask to set, specify in octal notation
umask=0077
; Minimum UID
min_uid=100
; Minimum GID
min_gid=100
[handlers]
;Handler for php-scripts
x-httpd-suphp="php:/usr/bin/php-cgi"
;Handler for CGI-scripts
x-suphp-cgi="execute:!self"

Наконец, мы перезагрузить Apache:

  • /etc/init.d/httpd restart

Установка PureFTPd

PureFTPd может быть установлена с помощью следующей команды:

  • yum install pure-ftpd

Затем создаем добавляем в автозагрузку PureFTPd:

  • chkconfig --levels 235 pure-ftpd on
  • /etc/init.d/pure-ftpd start

Устанавливаем изолированный DNS-сервер (BIND9)

Чтобы установить изолированной BIND9, мы сделаем это:

  • yum install bind-chroot
  • chmod 755 /var/named/
  • chmod 775 /var/named/chroot/
  • chmod 775 /var/named/chroot/var/
  • chmod 775 /var/named/chroot/var/named/
  • chmod 775 /var/named/chroot/var/run/
  • chmod 777 /var/named/chroot/var/run/named/
  • cd /var/named/chroot/var/named/
  • ln -s ../../ chroot
  • cp /usr/share/doc/bind-9.3.6/sample/var/named/named.local /var/named/chroot/var/named/named.local
  • cp /usr/share/doc/bind-9.3.6/sample/var/named/named.root /var/named/chroot/var/named/named.root
  • touch /var/named/chroot/etc/named.conf.local
  • nano /var/named/chroot/etc/named.conf
//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
options {
        listen-on port 53 { 127.0.0.1; };
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named/chroot/var/named";
        dump-file       "/var/named/chroot/var/named/data/cache_dump.db";
        statistics-file "/var/named/chroot/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/chroot/var/named/data/named_mem_stats.txt";
        allow-query     { localhost; };
        recursion yes;
};
logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};
zone "." IN {
        type hint;
        file "named.root";
};
include "/var/named/chroot/etc/named.conf.local";
  • chkconfig --levels 235 named on
  • /etc/init.d/named start

BIND будет работать в изолированной тюрьме в /var/named/chroot/var/named/. Я буду использовать ISPConfig для настройки BIND (зоны и т.д.).

Установка Vlogger и Webalizer

Vlogger и Webalizer могут быть установлены следующим образом:

  • yum install webalizer perl-DateTime-Format-HTTP perl-DateTime-Format-Builder
  • cd /tmp
  • wget http://n0rp.chemlab.org/vlogger/vlogger-1.3.tar.gz
  • tar xvfz vlogger-1.3.tar.gz
  • mv vlogger-1.3/vlogger /usr/sbin/
  • rm -rf vlogger*

Установка Jailkit

Jailkit необходима только тогда, когда вы хотите изолированной SSH пользователей. Она может быть установлена следующим образом:

  • cd /tmp
  • wget http://olivier.sessink.nl/jailkit/jailkit-2.11.tar.gz
  • tar xvfz jailkit-2.11.tar.gz
  • cd jailkit-2.11
  • ./configure
  • make
  • make install
  • cd ..
  • rm -rf jailkit-2.11*

Установка fail2ban

Это необязательно, но рекомендуется, так как монитор ISPConfig отображает журнала:

  • yum install fail2ban
  • chkconfig --levels 235 fail2ban on
  • /etc/init.d/fail2ban start

Установка rkhunter

Rkhunter могут быть установлены следующим образом:

  • yum install rkhunter

Установка SquirrelMail

Чтобы установить клиент SquirrelMail веб-почты:

  • yum install squirrelmail
  • /etc/init.d/httpd restart
  • /usr/share/squirrelmail/config/conf.pl

Мы должны ответить SquirrelMail, что мы используем Dovecot:

SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Main Menu --
1.  Organization Preferences
2.  Server Settings
3.  Folder Defaults
4.  General Options
5.  Themes
6.  Address Books
7.  Message of the Day (MOTD)
8.  Plugins
9.  Database
10. Languages

D.  Set pre-defined settings for specific IMAP servers

C   Turn color off
S   Save data
Q   Quit

Command >> - D


SquirrelMail Configuration : Read: config.php
---------------------------------------------------------
While we have been building SquirrelMail, we have discovered some
preferences that work better with some servers that don't work so
well with others.  If you select your IMAP server, this option will
set some pre-defined settings for that server.

Please note that you will still need to go through and make sure
everything is correct.  This does not change everything.  There are
only a few settings that this will change.

Please select your IMAP server:
    bincimap    = Binc IMAP server
    courier     = Courier IMAP server
    cyrus       = Cyrus IMAP server
    dovecot     = Dovecot Secure IMAP server
    exchange    = Microsoft Exchange IMAP server
    hmailserver = hMailServer
    macosx      = Mac OS X Mailserver
    mercury32   = Mercury/32
    uw          = University of Washington's IMAP server

    quit        = Do not change anything
Command >> - dovecot


SquirrelMail Configuration : Read: config.php
---------------------------------------------------------
While we have been building SquirrelMail, we have discovered some
preferences that work better with some servers that don't work so
well with others.  If you select your IMAP server, this option will
set some pre-defined settings for that server.

Please note that you will still need to go through and make sure
everything is correct.  This does not change everything.  There are
only a few settings that this will change.

Please select your IMAP server:
    bincimap    = Binc IMAP server
    courier     = Courier IMAP server
    cyrus       = Cyrus IMAP server
    dovecot     = Dovecot Secure IMAP server
    exchange    = Microsoft Exchange IMAP server
    hmailserver = hMailServer
    macosx      = Mac OS X Mailserver
    mercury32   = Mercury/32
    uw          = University of Washington's IMAP server

    quit        = Do not change anything
Command >> dovecot

              imap_server_type = dovecot
         default_folder_prefix = 
                  trash_folder = Trash
                   sent_folder = Sent
                  draft_folder = Drafts
            show_prefix_option = false
          default_sub_of_inbox = false
show_contain_subfolders_option = false
            optional_delimiter = detect
                 delete_folder = false

Press any key to continue... - press a key 


SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Main Menu --
1.  Organization Preferences
2.  Server Settings
3.  Folder Defaults
4.  General Options
5.  Themes
6.  Address Books
7.  Message of the Day (MOTD)
8.  Plugins
9.  Database
10. Languages

D.  Set pre-defined settings for specific IMAP servers

C   Turn color off
S   Save data
Q   Quit

Command >> - S


SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Main Menu --
1.  Organization Preferences
2.  Server Settings
3.  Folder Defaults
4.  General Options
5.  Themes
6.  Address Books
7.  Message of the Day (MOTD)
8.  Plugins
9.  Database
10. Languages

D.  Set pre-defined settings for specific IMAP servers

C   Turn color off
S   Save data
Q   Quit

Command >> - Q

Последнее, что нам нужно сделать, это внести изменения в файл /etc/squirrelmail/config_local.php и за комментировать $default_folder_prefix переменной - если Вы не сделаете этого, вы увидите следующее сообщение об ошибке в SquirrelMail после того как Вы войдете в систему : CREATE "Sent" Reason Given: Invalid mailbox name.

  • nano /etc/squirrelmail/config_local.php

Теперь вы можете ввести в http://server1.example.com/webmail или http://192.168.1.101/webmail в вашем браузере для доступа к SquirrelMail.

Установка SquirrelMail

Установка ISPConfig 3

Чтобы установить ISPConfig 3 из последней выпущенной версии, сделайте следующее:

  • cd /tmp
  • wget http://downloads.sourceforge.net/ispconfig/ISPConfig-3.0.2.1.tar.gz?use_mirror=
  • tar xvfz ISPConfig-3.0.2.1.tar.gz
  • cd ispconfig3_install/install/

(Заменить ISPConfig-3.0.2.1.tar.gz с последней версии.)

Следующим шагом является запуск:

  • php -q install.php

Это приведет к запуску установки ISPConfig 3:

[root@server1 install]# php -q install.php


--------------------------------------------------------------------------------
 _____ ___________   _____              __ _
|_   _/  ___| ___ \ /  __ \            / _(_)
  | | \ `--.| |_/ / | /  \/ ___  _ __ | |_ _  __ _
  | |  `--. \  __/  | |    / _ \| '_ \|  _| |/ _` |
 _| |_/\__/ / |     | \__/\ (_) | | | | | | | (_| |
 \___/\____/\_|      \____/\___/|_| |_|_| |_|\__, |
                                              __/ |
                                             |___/
--------------------------------------------------------------------------------


>> Initial configuration

Operating System: Redhat or compatible, unknown version.

    Following will be a few questions for primary configuration so be careful.
    Default values are in [brackets] and can be accepted with .
    Tap in "quit" (without the quotes) to stop the installer.


Select language (en,de) [en]: - ENTER

Installation mode (standard,expert) [standard]: - ENTER

Full qualified hostname (FQDN) of the server, eg server1.domain.tld  [server1.example.com]: - ENTER

MySQL server hostname [localhost]: - ENTER

MySQL root username [root]: - ENTER

MySQL root password []: - Ваш SQL пароль

MySQL database to create [dbispconfig]: - ENTER

MySQL charset [utf8]: - ENTER

Generating a 2048 bit RSA private key
......+++
.................+++
writing new private key to 'smtpd.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [GB]: - ENTER
State or Province Name (full name) [Berkshire]: - ENTER
Locality Name (eg, city) [Newbury]: - ENTER
Organization Name (eg, company) [My Company Ltd]: - ENTER
Organizational Unit Name (eg, section) []: - ENTER
Common Name (eg, your name or your server's hostname) []: - ENTER
Email Address []: - ENTER
Configuring Jailkit
Configuring SASL
Configuring PAM
Configuring Dovecot
Configuring Spamassassin
Configuring Amavisd
Configuring Getmail
Configuring Pureftpd
Configuring BIND
Configuring Apache
Configuring vlogger
Configuring Apps vhost
Configuring Firewall
Installing ISPConfig
ISPConfig Port [8080]: - ENTER

Configuring DBServer
Installing Crontab
no crontab for root
no crontab for getmail
Restarting services ...
Stopping MySQL:                                            [  OK  ]
Starting MySQL:                                            [  OK  ]
Shutting down postfix:                                     [  OK  ]
Starting postfix:                                          [  OK  ]
Stopping saslauthd:                                        [FAILED]
Starting saslauthd:                                        [  OK  ]
Shutting down Mail Virus Scanner (amavisd):                [FAILED]
Starting Mail Virus Scanner (amavisd):                     [  OK  ]
Stopping Dovecot Imap:                                     [  OK  ]
If you have trouble with authentication failures,
enable auth_debug setting. See http://wiki.dovecot.org/WhyDoesItNotWork
This message goes away after the first successful login.
Starting Dovecot Imap:                                     [  OK  ]
Stopping httpd:                                            [  OK  ]
[Tue May 25 18:15:57 2010] [warn] NameVirtualHost *:80 has no VirtualHosts
Starting httpd:                                            [  OK  ]
Stopping pure-ftpd:                                        [  OK  ]
Starting pure-ftpd:                                        [  OK  ]
Installation completed.
[root@server1 install]#

Программа установки автоматически настроит все основные услуги, так что никакой ручной настройки не требуется.

После этого Вы можете получить доступ к ISPConfig 3 под http://server1.example.com:8080/ или http://192.168.1.101:8080/ Войти с именем пользователя admin и пароль admin (вы должны изменить пароль по умолчанию после первого входа):

Установка ISPConfig 3

Установка ISPConfig 3

Система готова к использованию.