Установка ISPConfig · 8 min read · Nov 07, 2025
Автоматическая установка ISPConfig 3 на Debian 11 и 12, Ubuntu 22.04 и Ubuntu 24.04

Этот учебник поможет установить вашу односерверную конфигурацию ISPConfig 3 с помощью автоинсталлятора ISPConfig. Этот инсталлятор следует старым руководствам Perfect Server, но более модульный и легкий для понимания. Если вы хотите настроить многосерверную конфигурацию с выделенными серверами для каждой службы, смотрите руководство Perfect Multiserver.
Этот гид работает для Debian 11 и 12, Ubuntu 22.04 и Ubuntu 24.04. В настоящее время он поддерживает архитектуры процессоров x86_64 (также известную как AMD64) и ARM (ARM64). Мы будем использовать имя хоста server1.example.com. Замените его при необходимости. Гид требует свежей установки и пустой базовой ОС; не пытайтесь использовать его на системе, где вы уже настроили другие службы.
Предварительные требования
- Операционная система: Debian 11 и Debian 12, Ubuntu 22.04 или Ubuntu 24.04.
- Архитектура процессора Intel или AMD 64-бит (x86_64, также известная как AMD64) или ARM (ARM64).
- Система должна иметь доступ в интернет для загрузки и установки программного обеспечения с помощью apt.
- Начинайте с чистой и пустой установки базовой ОС. Система должна быть полностью доступна из интернета; не блокируйте доступ с помощью брандмауэра, особенно не блокируйте порт 80 для выдачи сертификатов LE и порт 8080 для доступа к ISPConfig, а также порты для всех служб, которые вы используете на этой системе. Сервер также должен иметь доступ в интернет для загрузки и установки программного обеспечения во время установки и разрешения доменных имен через DNS.
1. Войдите на сервер
Войдите как root или выполните
su --loginна Debian, чтобы стать пользователем root на вашем сервере перед тем, как продолжить. ВАЖНО: Вы должны использовать ‘su –login’ или ‘su -‘, а не просто ‘su’. В противном случае Debian неправильно установит вашу переменную PATH.
На Ubuntu используйте команду:
sudo -sчтобы стать пользователем root.
2. Настройте имя хоста и хосты
Имя хоста вашего сервера должно быть поддоменом, например, “server1.example.com”. Не используйте имя домена без части поддомена, например, “example.com” в качестве имени хоста, так как это приведет к проблемам позже с вашей настройкой. Сначала вы должны проверить имя хоста в /etc/hosts и изменить его при необходимости. Строка должна выглядеть так: “IP-адрес - пробел - полное имя хоста, включая домен - пробел - часть поддомена”. Для нашего имени хоста server1.example.com файл должен выглядеть так (некоторые строки могут отличаться; они могут различаться в зависимости от хостинг-провайдера):
nano /etc/hosts127.0.0.1 localhost.localdomain localhost
# Эта строка должна быть изменена на правильное имя сервера:
127.0.1.1 server1.example.com server1
# Следующие строки желательны для хостов, поддерживающих IPv6
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allroutersЗатем отредактируйте файл /etc/hostname:
nano /etc/hostnameОн должен содержать только часть поддомена, в нашем случае:
server1Наконец, перезагрузите сервер, чтобы применить изменения:
systemctl rebootВойдите снова и проверьте, правильно ли теперь имя хоста с помощью этих команд:
hostname
hostname -fВывод должен выглядеть так:
root@server1:~$ hostname
server1
root@server1:~$ hostname -f
server1.example.comВам также нужно будет настроить DNS-запись у вашего провайдера DNS, которая указывает на ваш сервер. Должна быть запись A (и/или AAAA) для поддомена, которая указывает на ваш публичный IP.
3. Обновите систему
Чтобы обновить пакеты системы, выполните команду:
apt update && apt upgrade4. Запустите автоинсталлятор
Теперь мы можем запустить автоинсталлятор. Основная установка содержит следующие программные пакеты (плюс их зависимости, конечно): Apache2, PHP (версии 5.6 - 8.3), MariaDB, Postfix, Dovecot, Rspamd, BIND, Jailkit, Roundcube, PHPMyAdmin, Mailman, Webalizer, AWStats и GoAccess. Вы можете легко выбрать, не использовать определенные функции или установить дополнительные службы, передав аргументы инсталлятору. Смотрите главу 6 для доступных параметров командной строки.
Установите ISPConfig с веб-сервером Apache
Теперь вы можете запустить скрипт с аргументами. Например, если вы хотите нормальную установку с веб-сервером Apache и диапазоном портов для пассивного FTP + автоматических обновлений, выполните:
wget -O - https://get.ispconfig.org | sh -s -- `--use-ftp-ports=40110-40210` --unattended-upgradesСледующие шаги описаны в главе “Запуск автоинсталлятора”.
Установите ISPConfig с веб-сервером Nginx
Теперь вы можете запустить скрипт с аргументами. Например, если вы хотите нормальную установку с веб-сервером Nginx и диапазоном портов для пассивного FTP + автоматических обновлений, выполните:
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx `--use-ftp-ports=40110-40210` --unattended-upgradesЗапуск автоинсталлятора
Через некоторое время вы увидите:
WARNING! Этот скрипт перенастроит ваш полный сервер!
Он должен быть запущен на свежез установленном сервере, и вся текущая конфигурация, которую вы сделали, скорее всего, будет потеряна!
Введите 'yes', если вы действительно хотите продолжить:Ответьте “yes” и нажмите Enter. Инсталлятор теперь начнет.
Когда инсталлятор завершит работу, он покажет вам пароль администратора ISPConfig и пароль root MySQL вот так:
[INFO] Ваш пароль администратора ISPConfig: 5GvfSSSYsdfdYC
[INFO] Ваш пароль root MySQL: kkAkft82d!kafMwqxdtYsУбедитесь, что вы записали эту информацию, так как она вам понадобится позже.
5. Настройка брандмауэра
Последнее, что нужно сделать, это настроить наш брандмауэр.
Войдите в интерфейс ISPConfig и перейдите в Система -> Брандмауэр. Затем нажмите “Добавить новую запись брандмауэра”.
Для нормальной настройки это будет выглядеть так:
TCP:
20,21,22,25,80,443,40110:40210,110,143,465,587,993,995,53,8080,8081UDP:
53Необходимые порты для каждой службы:
Веб: 20, 21, 22, 80, 443 и 40110:40210 (все TCP, без UDP)
Почта: 25, 110, 143, 465, 587, 993 и 995 (все TCP, без UDP)
DNS: 53 (TCP и UDP)
Панель: 8080 и 8081 (все TCP, без UDP)
Ваш сервер теперь настроен и готов к использованию. Вы можете войти по адресу https://server1.example.com:8080
6. Расширенные параметры
Автоинсталлятор имеет различные параметры командной строки для тонкой настройки установки.
Вы можете просмотреть все аргументы с помощью:
wget -O - https://get.ispconfig.org | sh -s -- --helpВы можете, например, выбрать между веб-сервером Apache и Nginx и какие службы должны быть установлены на системе. Аргументы командной строки:
Usage: ispc3-ai.sh [] [...]
Этот скрипт автоматически устанавливает все необходимые пакеты для настройки ISPConfig 3, используя рекомендации из "Perfect Server Setup" на www.howtoforge.com.
Возможные аргументы:
--help Показать эту страницу справки.
--debug Включить подробное ведение журнала (логирует каждую команду с кодом выхода).
--channel Выберите канал для использования с ISPConfig: --channel=
"stable" - это последняя версия ISPConfig, доступная на www.ispconfig.org
"dev" - это последняя ветка разработки из репозитория ISPConfig git: https://git.ispconfig.org/ispconfig/ispconfig3/tree/develop
Канал разработки может содержать ошибки и менее протестированные функции и должен использоваться в производстве только очень опытными пользователями.
--lang Используйте язык для установки ISPConfig. Укажите с помощью --lang=en|de (в настоящее время поддерживаются только en (английский) и de (немецкий)).
--interactive Не устанавливать ISPConfig в неинтерактивном режиме.
Это необходимо, если вы хотите использовать экспертный режим, например, для установки сервера-слейва, который должен быть интегрирован в существующую многосерверную конфигурацию.
--use-nginx Использовать веб-сервер nginx вместо apache2.
--use-amavis Использовать amavis вместо rspamd для фильтрации почты.
--use-unbound Использовать unbound вместо bind9 для локального разрешения. Разрешено только если установлен --no-dns.
--use-php Использовать конкретные версии PHP, разделенные запятыми, вместо установки нескольких PHP, например, --use-php=7.4,8.0 (доступны 5.6, 7.0, 7.1, 7.2, 7.3, 7.4, 8.0, 8.1, 8.2 и 8.3).
--use-php=system отключает репозиторий sury и просто устанавливает версию PHP по умолчанию системы.
--use-php, пропуская аргумент, использует все версии.
--use-ftp-ports Этот параметр устанавливает диапазон пассивных портов для pure-ftpd. Вы должны указать диапазон портов, разделенный дефисом, например, --use-ftp-ports=40110-40210.
Если не указано, диапазон пассивных портов не будет настроен.
--use-certbot Использовать Certbot вместо acme.sh для выдачи сертификатов Let's Encrypt. Не рекомендуется, если вы не мигрируете с старого сервера, который использует Certbot.
--no-web Не использовать ISPConfig на этом сервере для управления настройками веб-сервера и не устанавливать nginx/apache или pureftpd.
Это также предотвратит установку интерфейса ISPConfig и подразумевает --no-roundcube, а также --no-pma.
--no-mail Не использовать ISPConfig на этом сервере для управления настройками почтового сервера.
Это установит postfix для отправки системных писем, но не dovecot и не настроит никакие настройки для почты ISPConfig. Это подразумевает --no-mailman.
--no-dns Не использовать ISPConfig на этом сервере для управления записями DNS. Bind будет установлен только для локального кэширования / разрешения DNS.
--no-local-dns Не устанавливать локальное кэширование / разрешение DNS через bind.
--no-firewall Не устанавливать ufw и не сообщать ISPConfig о том, чтобы не управлять настройками брандмауэра на этом сервере.
--no-roundcube Не устанавливать веб-почту roundcube.
--roundcube Установить Roundcube, даже если используется --no-mail. Необходима ручная настройка конфигурации Roundcube.
--no-pma Не устанавливать PHPMyAdmin на этом сервере.
--no-mailman Не устанавливать менеджер рассылок Mailman.
--no-quota Отключить квоты файловой системы.
--no-ntp Отключить настройку NTP.
--no-jailkit Не устанавливать jailkit.
--no-ftp Не устанавливать сервер pure-ftpd.
--monit Установить Monit и настроить его для мониторинга установленных служб. Поддерживаемые службы: Apache2, NGINX, MariaDB, pure-ftpd-mysql, php-fpm, ssh, named, Postfix, Dovecot, rspamd.
--monit-alert-email
Настроить оповещения для Monit, чтобы они отправлялись на указанный адрес электронной почты. Например, [email protected].
--ssh-port Настроить SSH-сервер для прослушивания на нестандартном порту. Номер порта должен быть между 1 и 65535 и не может использоваться другими службами. Например, --ssh-port=64.
--ssh-permit-root
Настроить SSH-сервер на разрешение или запрет входа root: --ssh-permit-root=, например, --ssh-permit-root=without-password.
--ssh-password-authentication
Настроить SSH-сервер на разрешение или запрет аутентификации по паролю: --ssh-password-authentication=, например, -ssh-password-authentication=no.
--ssh-harden Настроить SSH-сервер для более строгой конфигурации безопасности.
--unattended-upgrades
Установить UnattendedUpgrades. Вы можете добавить дополнительные аргументы для автоматической очистки и автоматических перезагрузок при необходимости: --unattended-upgrades=autoclean,reboot (или только один из них).
--i-know-what-i-am-doing
Предотвратить автоинсталлятор запрашивать подтверждение перед продолжением перенастройки сервера. Например, чтобы установить настройку “Perfect Server” с Nginx вместо Apache, используйте эту команду:
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx `--use-ftp-ports=40110-40210` --unattended-upgradesИли чтобы установить веб-сервер Nginx без почтовых и DNS-служб:
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --no-dns --no-mail `--use-ftp-ports=40110-40210` --unattended-upgrades7. Завершение
Ваша настройка теперь завершена!
Вы можете поддержать ISPConfig, купив наше руководство: https://www.ispconfig.org/documentation/
Следующие ссылки являются ценными учебниками/указателями для дальнейшей настройки:
- Настройка почты (rDNS, SPF, DKIM): https://www.howtoforge.com/how-to-install-an-email-server-with-ispconfig-on-debian-10/
- Настройка Roundcube: https://www.howtoforge.com/community/threads/tweaking-the-roundcube-settings.86387/
- Настройка автоконфигурации (автоматическая конфигурация для ваших почтовых клиентов): https://schaal-it.com/ispconfig-automail/
- Улучшение безопасности PHPMyAdmin и интерфейса Rspamd: https://www.howtoforge.com/community/threads/improving-the-security-of-phpmyadmin-and-rspamd-ui.86544/
- Репозиторий кода и трекер проблем автоинсталлятора ISPConfig: https://git.ispconfig.org/ispconfig/ispconfig-autoinstaller
Если у вас есть какие-либо вопросы, задавайте их на форуме.
8. Отладка в случае ошибки
Если что-то пойдет не так во время установки, вы можете отладить процесс, добавив флаг командной строки –debug к команде установки. Это создаст файл журнала
/tmp/ispconfig-ai/var/log/ispconfig.logТакже параметр командной строки –interactive может помочь выявить причину ошибки установки.
9. Загрузка в виде виртуальной машины
Эта настройка доступна для загрузки в виде виртуальной машины в формате ova/ovf (совместимом с VMWare и Virtualbox) для подписчиков howtoforge. Виртуальная машина основана на Debian 12 и использует Apache в качестве веб-сервера.
Данные для входа в виртуальную машину
- Пароль root: howtoforge
- Пароль пользователя “admin” ISPConfig: howtoforge
- Есть другой пользователь оболочки с именем “administrator” и паролем: howtoforge
- Пароль root MySQL: 7s8EtDL1QhorSaeHhnRh
Пожалуйста, измените все пароли при первом входе.
- IP-адрес виртуальной машины: 192.168.0.100
Get new posts in your inbox
No spam. Unsubscribe anytime.