Серверная настройка · 8 min read · Dec 30, 2025
Идеальный сервер - Ubuntu 14.04 (Apache2, PHP, MySQL, PureFTPD, BIND, Dovecot, ISPConfig 3) - Страница 6
21 Установка SquirrelMail
Чтобы установить веб-клиент SquirrelMail, выполните
apt-get install squirrelmailЗатем настройте SquirrelMail:
squirrelmail-configureМы должны сообщить SquirrelMail, что мы используем Dovecot-IMAP/-POP3:
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. Установить предопределенные настройки для конкретных IMAP серверов
C Включить цвет
S Сохранить данные
Q Выйти
Command >> <– D
SquirrelMail Configuration : Read: config.php
Пока мы строили SquirrelMail, мы обнаружили некоторые
предпочтения, которые работают лучше с некоторыми
серверами, которые не работают так хорошо с другими. Если вы
выберете ваш IMAP сервер, эта опция установит
некоторые предопределенные настройки для этого сервера.
Пожалуйста, обратите внимание, что вам все равно нужно
пройтись по всем настройкам и убедиться, что
все правильно. Это не меняет все. Есть
только несколько настроек, которые это изменит.
Пожалуйста, выберите ваш IMAP сервер:
bincimap = Binc IMAP сервер
courier = Courier IMAP сервер
cyrus = Cyrus IMAP сервер
dovecot = Dovecot Secure IMAP сервер
exchange = Microsoft Exchange IMAP сервер
hmailserver = hMailServer
macosx = Mac OS X Mailserver
mercury32 = Mercury/32
uw = IMAP сервер Университета Вашингтона
gmail = IMAP доступ к аккаунтам Google mail (Gmail)
quit = Не менять ничего
Command >> <– dovecot
SquirrelMail Configuration : Read: config.php
Пока мы строили SquirrelMail, мы обнаружили некоторые
предпочтения, которые работают лучше с некоторыми
серверами, которые не работают так хорошо с другими. Если вы
выберете ваш IMAP сервер, эта опция установит
некоторые предопределенные настройки для этого сервера.
Пожалуйста, обратите внимание, что вам все равно нужно
пройтись по всем настройкам и убедиться, что
все правильно. Это не меняет все. Есть
только несколько настроек, которые это изменит.
Пожалуйста, выберите ваш IMAP сервер:
bincimap = Binc IMAP сервер
courier = Courier IMAP сервер
cyrus = Cyrus IMAP сервер
dovecot = Dovecot Secure IMAP сервер
exchange = Microsoft Exchange IMAP сервер
hmailserver = hMailServer
macosx = Mac OS X Mailserver
mercury32 = Mercury/32
uw = IMAP сервер Университета Вашингтона
gmail = IMAP доступ к аккаунтам Google mail (Gmail)
quit = Не менять ничего
Command >> dovecot
imap_server_type = dovecot
default_folder_prefix =
trash_folder = Корзина
sent_folder = Отправленные
draft_folder = Черновики
show_prefix_option = false
default_sub_of_inbox = false
show_contain_subfolders_option = false
optional_delimiter = detect
delete_folder = false
Нажмите любую клавишу, чтобы продолжить… <– нажмите клавишу
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. Установить предопределенные настройки для конкретных IMAP серверов
C Включить цвет
S Сохранить данные
Q Выйти
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. Установить предопределенные настройки для конкретных IMAP серверов
C Включить цвет
S Сохранить данные
Q Выйти
Command >> <– Q
Теперь мы настроим SquirrelMail так, чтобы вы могли использовать его с ваших веб-сайтов (созданных через ISPConfig) с помощью алиасов /squirrelmail или /webmail. Так что, если ваш веб-сайт www.example.com, вы сможете получить доступ к SquirrelMail, используя www.example.com/squirrelmail или www.example.com/webmail.
Конфигурация Apache для SquirrelMail находится в файле /etc/squirrelmail/apache.conf, но этот файл не загружается Apache, потому что он не находится в каталоге /etc/apache2/conf-available/. Поэтому мы создаем символическую ссылку с именем squirrelmail.conf в каталоге /etc/apache2/conf-available/, которая указывает на /etc/squirrelmail/apache.conf, и затем перезагружаем Apache:
cd /etc/apache2/conf-available/
ln -s ../../squirrelmail/apache.conf squirrelmail.conf
service apache2 reloadТеперь откройте /etc/apache2/conf.d/squirrelmail.conf…
vi /etc/apache2/conf-available/squirrelmail.conf… и добавьте следующие строки в контейнер
| [...] |
Создайте каталог /var/lib/squirrelmail/tmp…
mkdir /var/lib/squirrelmail/tmp… и сделайте его владельцем пользователя www-data:
chown www-data /var/lib/squirrelmail/tmpДалее нам нужно включить squirrelmail с apache2.
a2enconf squirrelmailСнова перезагрузите Apache:
service apache2 reloadВот и все - /etc/apache2/conf-available/squirrelmail.conf определяет алиас с именем /squirrelmail, который указывает на каталог установки SquirrelMail /usr/share/squirrelmail.
Теперь вы можете получить доступ к SquirrelMail с вашего веб-сайта следующим образом:
http://192.168.2.251/squirrelmail
http://www.example.com/squirrelmailВы также можете получить доступ к нему из панели управления ISPConfig vhost (после установки ISPConfig, см. следующий раздел) следующим образом (это не требует никакой конфигурации в ISPConfig):
http://server1.example.com:8080/squirrelmailЕсли вы хотите использовать алиас /webmail вместо /squirrelmail, просто откройте /etc/apache2/conf-available/squirrelmail.conf…
vi /etc/apache2/conf-available/squirrelmail.conf… и добавьте строку Alias /webmail /usr/share/squirrelmail:
| Alias /squirrelmail /usr/share/squirrelmail Alias /webmail /usr/share/squirrelmail [...] |
Затем перезагрузите Apache:
service apache2 reloadТеперь вы можете получить доступ к Squirrelmail следующим образом:
http:// 192.168.2.251 /webmail
http://www.example.com/webmail
http://server1.example.com:8080/webmail (после установки ISPConfig, см. следующий раздел)

Если вы хотите определить vhost, например webmail.example.com, где ваши пользователи могут получить доступ к SquirrelMail, вам нужно будет добавить следующую конфигурацию vhost в /etc/apache2/conf-available/squirrelmail.conf:
vi /etc/apache2/conf-available/squirrelmail.conf| [...] |
Убедитесь, что вы заменили 1.2.3.4 на правильный IP-адрес вашего сервера. Конечно, должна быть DNS-запись для webmail.example.com, которая указывает на IP-адрес, который вы используете в конфигурации vhost. Также убедитесь, что vhost webmail.example.com не существует в ISPConfig (в противном случае оба vhost будут мешать друг другу!).
Теперь перезагрузите Apache…
service apache2 reload… и вы сможете получить доступ к SquirrelMail по адресу http://webmail.example.com!
22. Дополнительно: Скрипт для проверки установок.
Я представил здесь скрипт, который проверит, сделали ли вы какие-либо опечатки. Это проверит, что все необходимые установки завершены в соответствии с учебником. Скрипт выглядит следующим образом:
#!/bin/bash
###################################################################################################################################################
###################################################################################################################################################
#### #####
#### Этот скрипт создан Сриджаном Кишором для проверки полной установки учебника #######
#### #####
###################################################################################################################################################
###################################################################################################################################################
cd /tmp
###################################################################################################################################################
#### Установки, выполненные в учебнике #####
###################################################################################################################################################
echo "amavisd-new
apache2
apache2-doc
apache2-suexec
apache2-utils
apt-listchanges
arj
autoconf
automake1.9
awstats
bind9
binutils
bison
build-essential
bzip2
cabextract
clamav
clamav-daemon
clamav-docs
daemon
debhelper
dnsutils
dovecot-imapd
dovecot-mysql
dovecot-pop3d
dovecot-sieve
fail2ban
flex
geoip-database
getmail4
imagemagick
jailkit
libapache2-mod-fastcgi
libapache2-mod-fcgid
libapache2-mod-php5
libapache2-mod-python
libapache2-mod-suphp
libauthen-sasl-perl
libclass-dbi-mysql-perl
libio-socket-ssl-perl
libio-string-perl
libnet-dns-perl
libnet-ident-perl
libnet-ldap-perl
libruby
libtool
lzop
mailman
mcrypt
memcached
mysql-client
mysql-server
nomarch
ntp
ntpdate
openssl
php5
php5-cgi
php5-cli
php5-common
php5-curl
php5-fpm
php5-gd
php5-imagick
php5-imap
php5-intl
php5-mcrypt
php5-memcache
php5-memcached
php5-ming
php5-mysql
php5-ps
php5-pspell
php5-recode
php5-snmp
php5-sqlite
php5-tidy
php5-xcache
php5-xmlrpc
php5-xsl
php-auth
phpmyadmin
php-pear
postfix
postfix-doc
postfix-mysql
rkhunter
spamassassin
squirrelmail
sudo
unzip
vlogger
webalizer
zip
zoo" > tutorial_install
##################################################################################################################################################
#### Список всех пакетов, установленных вами на вашем сервере ####
##################################################################################################################################################
dpkg -l |grep ii| cut -d ' ' -f3 > server_installed
##################################################################################################################################################
#### Разница между учебником и установкой вашего сервера ####
##################################################################################################################################################
diff server_installed tutorial_install | grep ">" | cut -d ' ' -f2 > missing_packages
if [ $? -eq 0 ]
echo "Вы пропустили установку этих пакетов
` cat missing_packages` "
then
echo "Вам нужно установить эти пакеты. Чтобы установить эти пакеты, вам нужно выполнить команду apt-get install package_name"
echo " Вы можете проверить конкретную установку следующим образом:
dpkg -l | grep package_name | cut -d ' ' -f3
Если он показывает package_name, то вы можете игнорировать пакет."
else
echo "Поздравляем, вы успешно установили все пакеты"
fi
rm -rf missing_packages server_installed tutorial_installchmod +x ubuntu_package_check.sh./ubuntu_package_check.sh23. Установка ISPConfig 3
Чтобы установить ISPConfig 3 из последней выпущенной версии, выполните следующее:
cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install/Следующий шаг - запустить
php -q install.phpЭто запустит установщик ISPConfig 3. Установщик настроит все службы, такие как Postfix, Dovecot и т. д. для вас. Ручная настройка, необходимая для ISPConfig 2 (идеальные руководства по настройке), не требуется.
root@server1:/tmp/ispconfig3_install/install# php -q install.php
——————————————————————————–
_ _ _ _
| / | \ / \ / () / \
| | \ --.| |_/ / | / \/ ___ _ __ | |_ _ __ _ _/ / | |–. \ / | | / \| ’ \| | |/ ` | | | | |_// / | | _/() | | | | | | | | (| | __\ \
_/__/_| _/\/|| ||| ||, | __/
/ |
|_/
——————————————————————————–
>> Первоначальная конфигурация
Операционная система: 14.04 UNKNOWN
Следующие будут несколько вопросов для первичной конфигурации, поэтому будьте внимательны.
Значения по умолчанию находятся в [скобках] и могут быть приняты с
Введите “quit” (без кавычек), чтобы остановить установщик.
Выберите язык (en,de) [en]: <– ENTER
Режим установки (standard,expert) [standard]: <– ENTER
Полное квалифицированное имя хоста (FQDN) сервера, например server1.domain.tld [server1.example.com]: <– ENTER
Имя хоста MySQL [localhost]: <– ENTER
Имя пользователя root MySQL [root]: <– ENTER
Пароль root MySQL []: <– вашпарольrootsql
База данных MySQL для создания [dbispconfig]: <– ENTER
Кодировка MySQL [utf8]: <– ENTER
Генерация 4096-битного RSA закрытого ключа
………………………………………………………………….++
…………………++
запись нового закрытого ключа в ’smtpd.key’
—–
Вы собираетесь ввести информацию, которая будет включена
в ваш запрос сертификата.
То, что вы собираетесь ввести, называется
отличительным именем или DN.
Существует довольно много полей,
но вы можете оставить некоторые пустыми
Для некоторых полей
будет значение по умолчанию,
Если вы введите ’.’, поле
будет оставлено пустым.
—–
Название страны (2-буквенный код) [AU]: <– ENTER
Название штата или провинции (полное имя) [Some-State]: <– ENTER
Название местности (например, город) []: <– ENTER
Название организации (например, компания) [Internet Widgits Pty Ltd]: <– ENTER
Название организационного подразделения (например, секция) []: <– ENTER
Общее имя (например, FQDN сервера или ВАШЕ имя) []: <– ENTER
Адрес электронной почты []: <– ENTER
Настройка Jailkit
Настройка Dovecot
Настройка Spamassassin
Настройка Amavisd
Настройка Getmail
Настройка Pureftpd
Настройка BIND
Настройка Apache
Настройка Vlogger
Настройка vhost приложений
Настройка брандмауэра Bastille
Настройка Fail2ban
Установка ISPConfig
Порт ISPConfig [8080]: <– ENTER
Хотите ли вы безопасное (SSL) соединение с веб-интерфейсом ISPConfig (y,n) [y]: <– ENTER
Генерация RSA закрытого ключа, 4096 битный длинный модуль
……….++
……++
e равен 65537 (0x10001)
Вы собираетесь ввести информацию, которая будет включена
в ваш запрос сертификата.
То, что вы собираетесь ввести, называется
отличительным именем или DN.
Существует довольно много полей,
но вы можете оставить некоторые пустыми
Для некоторых полей
будет значение по умолчанию,
Если вы введите ’.’, поле
будет оставлено пустым.
—–
Название страны (2-буквенный код) [AU]: <– ENTER
Название штата или провинции (полное имя) [Some-State]: <– ENTER
Название местности (например, город) []: <– ENTER
Название организации (например, компания) [Internet Widgits Pty Ltd]: <– ENTER
Название организационного подразделения (например, секция) []: <– ENTER
Общее имя (например, FQDN сервера или ВАШЕ имя) []: <– ENTER
Адрес электронной почты []: <– ENTER
Пожалуйста, введите следующие ‘дополнительные’ атрибуты,
которые будут отправлены с вашим запросом на сертификат
Пароль для вызова []: <– ENTER
Необязательное название компании []: <– ENTER
запись RSA ключа
Настройка DBServer
Установка ISPConfig crontab
нет crontab для root
нет crontab для getmail
Перезапуск служб …
Вместо вызова скриптов инициализации через /etc/init.d, используйте утилиту service(8), например, service mysql restart
Поскольку скрипт, который вы пытаетесь вызвать, был преобразован в задачу Upstart, вы также можете использовать утилиты stop(8) и затем start(8), например, stop mysql ; start mysql. Утилита restart(8) также доступна.
mysql stop/waiting
mysql start/running, process 2817
Остановка Postfix Mail Transport Agent postfix
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
…готово. Запуск Postfix Mail Transport Agent postfix
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
…готово.
Остановка amavisd: amavisd-new.
Запуск amavisd: amavisd-new.
Остановка демона ClamAV clamd
…готово. Запуск демона ClamAV clamd
…готово.
Вместо вызова скриптов инициализации через /etc/init.d, используйте утилиту service(8), например, service dovecot restart
Поскольку скрипт, который вы пытаетесь вызвать, был преобразован в задачу Upstart, вы также можете использовать утилиты stop(8) и затем start(8), например, stop dovecot ; start dovecot. Утилита restart(8) также доступна.
dovecot stop/waiting
dovecot start/running, process 3962
Перезапуск веб-сервера apache2
[Пт 26 апр 00:55:00 2013] [warn] NameVirtualHost :443 has no VirtualHosts
[Пт 26 апр 00:55:00 2013] [warn] NameVirtualHost :80 has no VirtualHosts
[Пт 26 апр 00:55:01 2013] [warn] NameVirtualHost :443 has no VirtualHosts
[Пт 26 апр 00:55:01 2013] [warn] NameVirtualHost :80 has no VirtualHosts
… ожидание …готово.
Перезапуск ftp сервера: Запуск: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -A -b -u 1000 -D -H -Y 1 -E -8 UTF-8 -O clf:/var/log/pure-ftpd/transfer.log -B
Установка завершена.
root@server1:/tmp/ispconfig3_install/install# Установщик автоматически настраивает все подлежащие службы, поэтому ручная настройка не требуется. Теперь у вас также есть возможность позволить установщику создать SSL vhost для панели управления ISPConfig, чтобы ISPConfig можно было получить с помощью https:// вместо http://. Для этого просто нажмите ENTER, когда вы увидите этот вопрос: Хотите ли вы безопасное (SSL) соединение с веб-интерфейсом ISPConfig (y,n) [y]:. После этого вы можете получить доступ к ISPConfig 3 по адресу http(s)://server1.example.com:8080/ или http(s)://192.168.2.251:8080/ (http или https зависит от того, что вы выбрали во время установки). Войдите с именем пользователя admin и паролем admin (вы должны изменить пароль по умолчанию после первого входа): 

Система теперь готова к использованию. #### Руководство по ISPConfig 3 Чтобы узнать, как использовать ISPConfig 3, я настоятельно рекомендую скачать Руководство по ISPConfig 3. На более чем 300 страницах оно охватывает концепцию ISPConfig (администраторы, реселлеры, клиенты), объясняет, как установить и обновить ISPConfig 3, включает справочник для всех форм и полей форм в ISPConfig вместе с примерами допустимых вводов и предоставляет учебники для самых распространенных задач в ISPConfig 3. Оно также описывает, как сделать ваш сервер более безопасным и содержит раздел по устранению неполадок в конце. #### Приложение ISPConfig Monitor для Android С помощью приложения ISPConfig Monitor вы можете проверить статус вашего сервера и узнать, работают ли все службы, как ожидалось. Вы можете проверить TCP и UDP порты и пинговать ваши серверы. Кроме того, вы можете использовать это приложение для запроса деталей от серверов, на которых установлен ISPConfig ( *обратите внимание, что минимальная установленная версия ISPConfig 3 с поддержкой приложения ISPConfig Monitor - 3.0.3.3!); эти детали включают все, что вы знаете из модуля Монитор в панели управления ISPConfig (например, службы, почта и системные журналы, очередь почты, информация о CPU и памяти, использование диска, квота, детали ОС, журнал RKHunter и т. д.), и, конечно, поскольку ISPConfig поддерживает многосерверную работу, вы можете проверить все серверы, которые контролируются с вашего главного сервера ISPConfig. Для получения инструкций по загрузке и использованию посетите http://www.ispconfig.org/ispconfig-3/ispconfig-monitor-app-for-android/. ### Дополнительные заметки #### OpenVZ Если сервер Ubuntu, который вы только что настроили в этом учебнике, является контейнером OpenVZ (виртуальная машина), вам следует сделать это на хост-системе (я предполагаю, что ID контейнера OpenVZ равен 101 - замените его на правильный VPSID в вашей системе): VPSID=101 for CAP in CHOWN DAC_READ_SEARCH SETGID SETUID NET_BIND_SERVICE NET_ADMIN SYS_CHROOT SYS_NICE CHOWN DAC_READ_SEARCH SETGID SETUID NET_BIND_SERVICE NET_ADMIN SYS_CHROOT SYS_NICE do vzctl set $VPSID --capability ${CAP}:on --save done ### Ссылки - Ubuntu: http://www.ubuntu.com/
- ISPConfig: http://www.ispconfig.org/
Get new posts in your inbox
No spam. Unsubscribe anytime.