Установка сервера · 6 min read · Nov 09, 2025
Идеальный сервер - CentOS 6.0 x86_64 [ISPConfig 3] - Страница 4
10 Установите Courier-IMAP, Courier-Authlib и Maildrop
К сожалению, нет rpm-пакетов для Courier-IMAP, Courier-Authlib и Maildrop, поэтому нам нужно собрать их самостоятельно.
Сначала удалите Dovecot (CentOS 6.0 поставляется с Dovecot 2.x; к сожалению, ISPConfig 3 поддерживает Dovecot 1.2.x, но не 2.x):
yum remove dovecot dovecot-mysqlЗатем установите необходимые пакеты, которые нам нужны для сборки rpm-пакетов Courier:
yum install rpm-build gcc mysql-devel openssl-devel cyrus-sasl-devel pkgconfig zlib-devel pcre-devel openldap-devel postgresql-devel expect libtool-ltdl-devel openldap-servers libtool gdbm-devel pam-devel gamin-devel libidn-devel RPM-пакеты не должны собираться от имени root; courier-imap даже откажется компилироваться, если обнаружит, что компиляция выполняется от имени пользователя root. Поэтому мы создаем обычную учетную запись пользователя сейчас (falko в этом примере) и задаем ему пароль:
useradd -m -s /bin/bash falko
passwd falko
Нам понадобится команда sudo позже, чтобы пользователь falko мог компилировать и устанавливать rpm-пакеты. Но сначала мы должны разрешить falko выполнять все команды с помощью sudo:
Запустите
visudoВ открывшемся файле есть строка root ALL=(ALL) ALL. Добавьте аналогичную строку для falko сразу под этой строкой:
| [...] ## Разрешить root выполнять любые команды везде root ALL=(ALL) ALL falko ALL=(ALL) ALL [...] |
Теперь мы готовы собрать наш rpm-пакет. Сначала станьте пользователем falko:
su falkoЗатем создаем нашу среду сборки:
mkdir $HOME/rpm
mkdir $HOME/rpm/SOURCES
mkdir $HOME/rpm/SPECS
mkdir $HOME/rpm/BUILD
mkdir $HOME/rpm/BUILDROOT
mkdir $HOME/rpm/SRPMS
mkdir $HOME/rpm/RPMS
mkdir $HOME/rpm/RPMS/i386
mkdir $HOME/rpm/RPMS/x86_64
echo "%_topdir $HOME/rpm" >> $HOME/.rpmmacrosТеперь мы создаем каталог для загрузок и загружаем исходные файлы с http://www.courier-mta.org/download.php:
mkdir $HOME/downloads
cd $HOME/downloads
wget https://sourceforge.net/projects/courier/files/authlib/0.63.0/courier-authlib-0.63.0.tar.bz2/download
wget https://sourceforge.net/projects/courier/files/imap/4.9.3/courier-imap-4.9.3.tar.bz2/download
wget https://sourceforge.net/projects/courier/files/maildrop/2.5.4/maildrop-2.5.4.tar.bz2/download
Теперь (все еще в $HOME/downloads) мы можем собрать courier-authlib:
sudo rpmbuild -ta courier-authlib-0.63.0.tar.bz2После процесса сборки rpm-пакеты можно найти в /root/rpmbuild/RPMS/x86_64 (/root/rpmbuild/RPMS/i686, если вы на системе i686). Команда
sudo ls -l /root/rpmbuild/RPMS/x86_64показывает доступные rpm-пакеты:
[falko@server1 downloads]$ sudo ls -l /root/rpmbuild/RPMS/x86_64
total 516
-rw-r–r– 1 root root 124296 Jul 11 17:27 courier-authlib-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 259620 Jul 11 17:27 courier-authlib-debuginfo-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 35044 Jul 11 17:27 courier-authlib-devel-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 17416 Jul 11 17:27 courier-authlib-ldap-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 13944 Jul 11 17:27 courier-authlib-mysql-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 13112 Jul 11 17:27 courier-authlib-pgsql-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 8316 Jul 11 17:27 courier-authlib-pipe-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 34168 Jul 11 17:27 courier-authlib-userdb-0.63.0-1.el6.x86_64.rpm
[falko@server1 downloads]$
Выберите те, которые хотите установить, и установите их следующим образом:
sudo rpm -ivh /root/rpmbuild/RPMS/x86_64/courier-authlib-0.63.0-1.el6.x86_64.rpm /root/rpmbuild/RPMS/x86_64/courier-authlib-mysql-0.63.0-1.el6.x86_64.rpm /root/rpmbuild/RPMS/x86_64/courier-authlib-devel-0.63.0-1.el6.x86_64.rpmТеперь мы возвращаемся в наш каталог загрузок:
cd $HOME/downloadsЗапустите следующие команды, чтобы создать необходимые каталоги/изменить права доступа к каталогам (иначе процесс сборки для Courier-Imap завершится неудачей):
sudo mkdir -p /var/cache/ccache/tmp
sudo chmod o+rwx /var/cache/ccache/
sudo chmod 777 /var/cache/ccache/tmp
Теперь снова запустите rpmbuild, на этот раз без sudo, иначе компиляция завершится неудачей, потому что она была запущена от имени root:
rpmbuild -ta courier-imap-4.9.3.tar.bz2После процесса сборки rpm-пакеты можно найти в $HOME/rpm/RPMS/x86_64 ($HOME/rpm/RPMS/i686, если вы на системе i686):
cd $HOME/rpm/RPMS/x86_64Команда
ls -lпоказывает доступные rpm-пакеты:
[falko@server1 x86_64]$ ls -l
total 1088
-rw-r–r– 1 falko falko 333540 Jul 11 17:38 courier-imap-4.9.3-1.x86_64.rpm
-rw-r–r– 1 falko falko 776112 Jul 11 17:38 courier-imap-debuginfo-4.9.3-1.x86_64.rpm
[falko@server1 x86_64]$
Вы можете установить courier-imap следующим образом:
sudo rpm -ivh courier-imap-4.9.3-1.x86_64.rpmТеперь мы возвращаемся в наш каталог загрузок:
cd $HOME/downloadsи снова запускаем rpmbuild, на этот раз для сборки пакета maildrop:
sudo rpmbuild -ta maildrop-2.5.4.tar.bz2После процесса сборки rpm-пакеты можно найти в /root/rpmbuild/RPMS/x86_64 (/root/rpmbuild/RPMS/i686, если вы на системе i686). Команда
sudo ls -l /root/rpmbuild/RPMS/x86_64показывает доступные rpm-пакеты:
[falko@server1 downloads]$ sudo ls -l /root/rpmbuild/RPMS/x86_64
total 1660
-rw-r–r– 1 root root 124296 Jul 11 17:27 courier-authlib-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 259620 Jul 11 17:27 courier-authlib-debuginfo-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 35044 Jul 11 17:27 courier-authlib-devel-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 17416 Jul 11 17:27 courier-authlib-ldap-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 13944 Jul 11 17:27 courier-authlib-mysql-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 13112 Jul 11 17:27 courier-authlib-pgsql-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 8316 Jul 11 17:27 courier-authlib-pipe-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 34168 Jul 11 17:27 courier-authlib-userdb-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 281328 Jul 11 17:47 maildrop-2.5.4-1.x86_64.rpm
-rw-r–r– 1 root root 717476 Jul 11 17:47 maildrop-debuginfo-2.5.4-1.x86_64.rpm
-rw-r–r– 1 root root 101156 Jul 11 17:47 maildrop-devel-2.5.4-1.x86_64.rpm
-rw-r–r– 1 root root 63744 Jul 11 17:47 maildrop-man-2.5.4-1.x86_64.rpm
[falko@server1 downloads]$
Теперь вы можете установить maildrop следующим образом:
sudo rpm -ivh /root/rpmbuild/RPMS/x86_64/maildrop-2.5.4-1.x86_64.rpmПосле того как вы скомпилировали и установили все необходимые пакеты, вы можете снова стать root, набрав
exitТеперь запустите Courier-IMAP/-POP3 следующим образом:
/etc/init.d/courier-imap start 11 Установите Postfix
Postfix можно установить следующим образом:
yum install postfixЗатем отключите Sendmail и запустите Postfix и MySQL:
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
12 Установите Getmail
Для getmail нет rpm-пакета, поэтому нам нужно установить его из исходников. Это можно сделать следующим образом:
cd /tmp
wget http://pyropus.ca/software/getmail/old-versions/getmail-4.20.3.tar.gz
tar xvfz getmail-4.20.3.tar.gz
cd getmail-4.20.3
python setup.py build
python setup.py install
13 Установите пароли MySQL и настройте phpMyAdmin
Установите пароли для учетной записи root 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!
Чтобы войти в MySQL и обеспечить его безопасность, нам нужен текущий
пароль для пользователя root. Если вы только что установили MySQL и
еще не установили пароль root, пароль будет пустым, поэтому
вам просто нужно нажать Enter здесь.
Введите текущий пароль для root (нажмите Enter, если нет):
OK, успешно использован пароль, продолжаем…
Установка пароля root гарантирует, что никто не сможет войти в
учетную запись root MySQL без надлежащей авторизации.
Установить пароль root? [Y/n] <– ENTER
Новый пароль: <– вашпарольrootsql
Повторите новый пароль: <– вашпарольrootsql
Пароль успешно обновлен!
Перезагрузка таблиц привилегий..
… Успех!
По умолчанию установка MySQL имеет анонимного пользователя,
позволяющего любому войти в MySQL без необходимости создания
учетной записи для них. Это предназначено только для тестирования
и для облегчения установки. Вы должны удалить их перед тем, как
перейти в рабочую среду.
Удалить анонимных пользователей? [Y/n] <– ENTER
… Успех!
Обычно root должен иметь возможность подключаться только
с ‘localhost’. Это гарантирует, что кто-то не сможет
угадать пароль root из сети.
Запретить удаленный вход root? [Y/n] <– ENTER
… Успех!
По умолчанию MySQL поставляется с базой данных с именем
‘test’, к которой может получить доступ любой. Это также
предназначено только для тестирования и должно быть удалено
перед тем, как перейти в рабочую среду.
Удалить тестовую базу данных и доступ к ней? [Y/n] <– ENTER
- Удаление тестовой базы данных…
… Успех! - Удаление привилегий на тестовую базу данных…
… Успех!
Перезагрузка таблиц привилегий гарантирует, что все изменения,
сделанные до сих пор, вступят в силу немедленно.
Перезагрузить таблицы привилегий сейчас? [Y/n] <– ENTER
… Успех!
Очистка…
Все готово! Если вы выполнили все вышеперечисленные шаги,
ваша установка MySQL теперь должна быть безопасной.
Спасибо за использование MySQL!
[root@server1 tmp]#
Теперь мы настраиваем phpMyAdmin. Мы изменяем конфигурацию Apache, чтобы phpMyAdmin разрешал подключения не только с localhost (закомментировав блок
vi /etc/httpd/conf.d/phpmyadmin.conf| # # Веб-приложение для управления MySQL # # |
Затем мы изменяем аутентификацию в phpMyAdmin с cookie на http:
vi /usr/share/phpmyadmin/config.inc.php| [...] /* Тип аутентификации */ $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.0.100/phpmyadmin/ и войти с именем пользователя root и вашим новым паролем root MySQL.
Get new posts in your inbox
No spam. Unsubscribe anytime.