Установка сервера · 6 min read · Feb 12, 2026
Идеальный сервер - Fedora 15 x86_64 [ISPConfig 3] - Страница 4
11 Установите Courier-IMAP, Courier-Authlib и Maildrop
К сожалению, нет rpm-пакетов для Courier-IMAP, Courier-Authlib и Maildrop, поэтому нам придется собрать их самостоятельно.
Сначала удалите Dovecot (Fedora 15 поставляется с 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.8.1/courier-imap-4.8.1.tar.bz2/download
wget https://sourceforge.net/projects/courier/files/maildrop/2.5.4/maildrop-2.5.4.tar.bz2/download
(Вы можете задаться вопросом, почему я не загружаю последнюю версию courier-imap - 4.9.3 на момент написания - а использую более старую - 4.8.1. Это потому, что 4.9.3 не удалось собрать на моей системе, в то время как 4.8.1 работает отлично.)
Теперь (все еще в $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 520
-rw-r–r– 1 root root 123448 May 25 18:06 courier-authlib-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 265144 May 25 18:06 courier-authlib-debuginfo-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 34876 May 25 18:06 courier-authlib-devel-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 17448 May 25 18:06 courier-authlib-ldap-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 13808 May 25 18:06 courier-authlib-mysql-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 13020 May 25 18:06 courier-authlib-pgsql-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 8276 May 25 18:06 courier-authlib-pipe-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 34108 May 25 18:06 courier-authlib-userdb-0.63.0-1.fc15.x86_64.rpm
[falko@server1 downloads]$
Выберите те, которые хотите установить, и установите их так:
sudo rpm -ivh /root/rpmbuild/RPMS/x86_64/courier-authlib-0.63.0-1.fc15.x86_64.rpm /root/rpmbuild/RPMS/x86_64/courier-authlib-mysql-0.63.0-1.fc15.x86_64.rpm /root/rpmbuild/RPMS/x86_64/courier-authlib-devel-0.63.0-1.fc15.x86_64.rpmТеперь мы возвращаемся в наш каталог загрузок:
cd $HOME/downloadsЗапустите следующие команды, чтобы создать необходимые каталоги/изменить права доступа к каталогам (иначе процесс сборки для Courier-Imap завершится неудачей):
sudo mkdir /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.8.1.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 1708
-rw-rw-r– 1 falko falko 596432 May 25 18:33 courier-imap-4.8.1-2.15.x86_64.rpm
-rw-rw-r– 1 falko falko 1149328 May 25 18:33 courier-imap-debuginfo-4.8.1-2.15.x86_64.rpm
[falko@server1 x86_64]$
Вы можете установить courier-imap так:
sudo rpm -ivh courier-imap-4.8.1-2.15.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 1628
-rw-r–r– 1 root root 123448 May 25 18:06 courier-authlib-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 265144 May 25 18:06 courier-authlib-debuginfo-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 34876 May 25 18:06 courier-authlib-devel-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 17448 May 25 18:06 courier-authlib-ldap-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 13808 May 25 18:06 courier-authlib-mysql-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 13020 May 25 18:06 courier-authlib-pgsql-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 8276 May 25 18:06 courier-authlib-pipe-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 34108 May 25 18:06 courier-authlib-userdb-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 278520 May 25 18:50 maildrop-2.5.4-1.15.x86_64.rpm
-rw-r–r– 1 root root 685672 May 25 18:50 maildrop-debuginfo-2.5.4-1.15.x86_64.rpm
-rw-r–r– 1 root root 99924 May 25 18:50 maildrop-devel-2.5.4-1.15.x86_64.rpm
-rw-r–r– 1 root root 63968 May 25 18:50 maildrop-man-2.5.4-1.15.x86_64.rpm
[falko@server1 downloads]$
Теперь вы можете установить maildrop так:
sudo rpm -ivh /root/rpmbuild/RPMS/x86_64/maildrop-2.5.4-1.15.x86_64.rpmПосле того как вы скомпилировали и установили все необходимые пакеты, вы можете снова стать root, введя
exit12 Установите Postfix
Postfix можно установить следующим образом:
yum install postfixЗатем отключите Sendmail и запустите Postfix и MySQL:
chkconfig –levels 235 mysqld on
/etc/init.d/mysqld start
chkconfig sendmail off
chkconfig –levels 235 postfix on
/etc/init.d/sendmail stop
/etc/init.d/postfix start
13 Установите Getmail
Getmail можно установить следующим образом:
yum install getmail14 Установите пароли MySQL и настройте phpMyAdmin
Установите пароли для учетной записи root MySQL:
mysql_secure_installation [root@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!
Для того чтобы войти в 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 ~]#
Теперь мы настраиваем phpMyAdmin. Мы изменяем конфигурацию Apache, чтобы phpMyAdmin разрешал подключения не только с localhost (закомментировав блок
vi /etc/httpd/conf.d/phpMyAdmin.conf| # phpMyAdmin - Веб-браузер MySQL на основе php # По умолчанию разрешает только localhost # Но разрешение phpMyAdmin для всех, кроме localhost, следует считать # опасным, если не защищено должным образом с помощью SSL Alias /phpMyAdmin /usr/share/phpMyAdmin Alias /phpmyadmin /usr/share/phpMyAdmin # |
Затем мы создаем системные ссылки для запуска 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.