Автоматизированная установка Perfect Server ISPConfig 3 на Debian 10, Debian 11, Ubuntu 20.04 и Ubuntu 22.04
На этой странице
- Предпосылки
- 1. Войти на сервер
- 2. Настройте имя хоста и хосты
- 3. Обновите систему
- 4. Запустите автоустановщик
- 5. Настройка брандмауэра
- 6. Расширенные настройки
- 7. Завершение
- 8 Загрузить как виртуальную машину
В этом учебном пособии вы узнаете, как установить собственную настройку одного сервера ISPConfig 3 с помощью автоматической программы установки ISPConfig. Этот установщик следует старым руководствам Perfect Server, но является более модульным и простым в использовании. Если вместо этого вы хотите настроить многосерверную установку с выделенными серверами для каждой службы, см. руководство Perfect Multiserver.
Это руководство работает как для Debian 10, Debian 11, Ubuntu 20.04, так и для Ubuntu 22.04. В настоящее время оно поддерживает только архитектуру ЦП x86_64 (также известную как AMD64), а ARM не поддерживается. Мы будем использовать имя хоста server1.example.com. Замените его там, где это необходимо. Для руководства требуется только что установленная и пустая базовая ОС, не пытайтесь использовать ее в системе, где вы уже настроили другие службы.
Предпосылки
- Операционная система: Debian 10, Debian 11, Ubuntu 20.04 или Ubuntu 22.04.
- 64-разрядная архитектура ЦП Intel или AMD (x86_64, также известная как AMD64). В настоящее время процессоры ARM не поддерживаются.
- Система должна иметь доступ в Интернет для загрузки и установки программного обеспечения с помощью apt.
- Начните с чистой и пустой установки базовой ОС.
1. Войдите на сервер
Войдите как root или запустите
su -
чтобы стать пользователем root на вашем сервере, прежде чем продолжить. ВАЖНО: Вы должны использовать su, и не только su, иначе ваша переменная PATH будет неправильно установлена Debian.
2. Настройте имя хоста и хосты
Имя хоста вашего сервера должно быть субдоменом, например \server1.example.com\. Не используйте доменное имя без части поддомена, такой как \example.com\, в качестве имени хоста, так как это вызовет проблемы позже с вашей настройкой. Во-первых, вы должны проверить имя хоста в /etc/hosts и изменить его при необходимости. Строка должна быть такой: \IP-адрес - пробел - полное имя хоста, включая домен - пробел - часть поддомена\. Для нашего хоста server1.example.com файл будет выглядеть так (некоторые строки могут отличаться, у разных хостинг-провайдеров они могут отличаться):
nano /etc/hosts
127.0.0.1 localhost.localdomain localhost
# This line should be changed to the correct servername:
127.0.1.1 server1.example.com server1
# The following lines are desirable for IPv6 capable hosts ::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
Вывод должен быть таким:
:~$ hostname -f
server1.example.com
Вам также нужно будет настроить DNS-запись у вашего провайдера DNS, которая указывает на ваш сервер. Должна быть запись A (и/или AAAA) для поддомена, указывающего на ваш общедоступный IP-адрес.
3. Обновите систему
Чтобы обновить системные пакеты, выполните команду:
apt update && apt upgrade
4. Запустите автоустановщик
Теперь мы можем запустить автоустановщик. Базовая установка содержит следующие программные пакеты (плюс их зависимости, конечно): Apache2, PHP (версии 5.6–8.0), MariaDB, Postfix, Dovecot, Rspamd, BIND, Jailkit, Roundcube, PHPMyAdmin, Mailman, Webalizer, AWStats и GoAccess. Вы можете легко отказаться от использования определенных функций или установки дополнительных служб, передав аргументы программе установки. Вы можете просмотреть все аргументы с помощью:
wget -O - https://get.ispconfig.org | sh -s -- --help
Теперь вы можете запустить скрипт с аргументами. Например, если вам нужна обычная установка с диапазоном портов для Passive FTP + автоматические обновления, запустите:
wget -O - https://get.ispconfig.org | sh -s -- --use-ftp-ports=40110-40210
--unattended-upgrades
Через некоторое время вы увидите:
WARNING! This script will reconfigure your complete server!
It should be run on a freshly installed server and all current configuration that you have done will most likely be lost!
Type 'yes' if you really want to continue:
Ответьте \да\ и нажмите Enter. Теперь запустится установщик.
Когда установщик завершит работу, он покажет вам пароль администратора ISPConfig и root MySQL следующим образом:
[INFO] Your ISPConfig admin password is: 5GvfSSSYsdfdYC
[INFO] Your MySQL root password is: kkAkft82d!kafMwqxdtYs
Обязательно запишите эту информацию, так как она понадобится вам позже.
5. Настройка брандмауэра
Последнее, что нужно сделать, это настроить наш брандмауэр.
Войдите в пользовательский интерфейс ISPConfig и перейдите в Система -> Брандмауэр. Затем нажмите \Добавить новую запись брандмауэра\.
Для обычной установки это будет выглядеть так:
TCP:
20,21,22,25,80,443,40110:40210,110,143,465,587,993,995,53,8080,8081
UDP:
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. Дополнительные параметры
Автоустановщик имеет различные параметры командной строки для тонкой настройки установки. Вы можете, например. выбрать между веб-сервером Apache и Nginx и какие службы должны быть установлены в системе. Аргументы командной строки:
Usage: ispc3-ai.sh [] [...] This script automatically installs all needed packages for an ISPConfig 3 setup using the guidelines from the "Perfect Server Setup" howtos on linux-console.net. Possible arguments are: --help Show this help page --debug Enable verbose logging (logs each command with the exit code) --channel Choose the channel to use for ISPConfig. --channel=<stable|dev> "stable" is the latest ISPConfig release available on www.ispconfig.org "dev" is the latest stable-branch from the ISPConfig git repository: https://git.ispconfig.org/ispconfig/ispconfig3/tree/stable-3.1 -> The dev channel might contain bugs and less-tested features and should only be used in production by very experienced users. --lang Use language for ISPConfig installation. Specify with --lang=en|de (only en (English) and de (German) supported currently). --interactive Don't install ISPConfig in non-interactive mode. This is needed if you want to use expert mode, e. g. to install a slave server that shall be integrated into an existing multiserver setup. --use-nginx Use nginx webserver instead of apache2 --use-amavis Use amavis instead of rspamd for mail filtering --use-unbound Use unbound instead of bind9 for local resolving. Only allowed if --no-dns is set. --use-php Use specific PHP versions, comma separated, instead of installing multiple PHP, e.g. --use-php=7.4,8.0 (5.6, 7.0, 7.1, 7.2, 7.3, 7.4 and 8.0 available). --use-php=system disables the sury repository and just installs the system's default PHP version. ommiting the argument (use all versions) --use-ftp-ports This option sets the passive port range for pure-ftpd. You have to specify the port range separated by hyphen, e. g. --use-ftp-ports=40110-40210. If not provided the passive port range will not be configured. --use-certbot Use Certbot instead of acme.sh for issuing Let's Encrypt certificates. Not adviced unless you are migrating from a old server that uses Certbot. --no-web Do not use ISPConfig on this server to manage webserver setting and don't install nginx/apache or pureftpd. This will also prevent installing an ISPConfig UI and implies --no-roundcube as well as --no-pma --no-mail Do not use ISPConfig on this server to manage mailserver settings. This will install postfix for sending system mails, but not dovecot and not configure any settings for ISPConfig mail. It implies --no-mailman. --no-dns Do not use ISPConfig on this server to manage DNS entries. Bind will be installed for local DNS caching / resolving only. --no-local-dns Do not install local DNS caching / resolving via bind. --no-firewall Do not install ufw and tell ISPConfig to not manage firewall settings on this server. --no-roundcube Do not install roundcube webmail. --roundcube Install Roundcube even when --no-mail is used. Manual configuration of Roundcube config is needed. --no-pma Do not install PHPMyAdmin on this server. --no-mailman Do not install Mailman mailing list manager. --no-quota Disable file system quota --no-ntp Disable NTP setup --unattended-upgrades Install UnattendedUpgrades. You can add extra arguments for automatic cleanup and automatic reboots when necessary with --unattended-upgrades=autoclean,reboot (or only one of them). --i-know-what-i-am-doing Prevent the autoinstaller to ask for confirmation before continuing to reconfigure the server.
Например, чтобы установить 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-upgrades
7. Доработка
Ваша настройка завершена!
Вы можете поддержать ISPConfig, купив наше руководство: https://www.ispconfig.org/documentation/
Следующие ссылки являются полезными учебными пособиями/указателями для дальнейшей настройки:
- Настройка почты (rDNS, SPF, DKIM): https://linux-console.net/how-to-install-an-email-server-with-ispconfig-on-debian-10/
- Настройка Roundcube: https://linux-console.net/community/threads/tweaking-the-roundcube-settings.86387/
- Настройка автонастройки (автоматическая настройка для ваших почтовых клиентов): https://schaal-it.com/ispconfig-automail/
- Повысьте безопасность PHPMyAdmin и интерфейса rspamd: https://linux-console.net/community/threads/improving-the-security-of-phpmyadmin-and-rspamd-ui.86544/
- Репозиторий кода и средство отслеживания проблем автоустановщика ISPConfig: https://git.ispconfig.org/ispconfig/ispconfig-autoinstaller.
Если у вас есть вопросы, задавайте их на форуме.
8 Скачать как виртуальную машину
Эта установка доступна для загрузки виртуальной машины в формате ova/ovf (совместима с VMWare и Virtualbox) для подписчиков howtoforge. Виртуальная машина основана на Debian 11 и использует Apache в качестве веб-сервера.
Данные для входа в виртуальную машину
- Корневой пароль: howtoforge
- Пароль пользователя \admin\ ISPConfig: howtoforge
- Есть еще один пользователь оболочки с именем \администратор\ и паролем: howtoforge
- Корневой пароль MySQL: 4VLc2vw5mZzqHNd4xURT.
Пожалуйста, измените все пароли при первом входе в систему.
- IP-адрес виртуальной машины: 192.168.0.100.