Описано процес підготовки сервера Debian Jessie (з Apache2, BIND, Dovecot) для установки ISPConfig 3 і безпосередньо установка ISPConfig 3. ISPConfig 3 являє собою інтерфейс, за допомогою якого можна налаштовувати такі служби з браузера: веб-сервер, поштовий сервер Postfix, Courier або Dovecot серверів IMAP / POP3 MySQL, сервера доменних імен BIND або MyDNS, PureFTPd, SpamAssassin, ClamAV і багато іншого. В процесі установки ми будемо використовувати Apache (замість nginx), BIND (замість MyDNS) і Dovecot (замість Courier).
Будемо вважати, що необхідно отримати веб-оточення на базі Apache.
1. Попередні зауваження
Перед подальшими діями у Вас повинна бути встановлена операційна система Debian 8. Передбачається, що була виконана чиста інсталяція, а не оновлення існуючої системи.
2 Установка SSH server
Якщо OpenSSH server ні встановлено під час установки системи, введемо наступне:
Тепер можна використовувати клієнт SSH, наприклад PuTTY і підключатися з робочої машини до сервера Debian Jessie.
Цей крок не є обов'язковим.
Якщо Ви віддаєте перевагу vi, замініть nano на vi в командах редагування фалів.
4 Налаштування імені хоста
Ім'я хоста для сервера має являти собою піддомен типу "server1.drach.pro". Не використовуйте ім'я домену без поддомена - "drach.pro" в якості імені хоста, це може викликати складності при налаштувати звичайну електронну пошту. На початку потрібно перевірити ім'я хоста в / etc / hosts і при необхідності змінити його. Рядок повинен бути такого вигляду: "IP Address - space - full hostname incl. Domain - space - subdomain part". Для імені хоста server1.drach.pro, це будемо виглядати наступним чином:
Потім відредагуємо файл / etc / hostname:
Тут повинен знаходиться тільки піддомен, в нашому випадку:
Потім перезапустити сервер для збереження змін:
Вихідні дані повинні виглядати наступним чином:
5 Оновлення установки Debian
Для початку переконаємося, що /etc/apt/sources.list містить репозиторій jessie / updates (це означає, що Ви завжди будете отримувати свіжі оновлення безпеки) і що вкладаються і невільні репозиторії дозволені (деякі пакети, наприклад, libapache2-mod-fastcgi НЕ знаходяться в головній репозиторії).
Для оновлення баз даних пакета apt
і для установки останніх оновлень (якщо вони є).
6 Зміна стандартної оболонки
/ Bin / sh є символічним посиланням на / bin / dash, однак нам потрібно / bin / bash, а не / bin / dash. Виконаємо наступне:
Якщо цього не зробити, далі неможливо буде встановити ISPConfig.
7 Синхронізація часу системи
Системний час можна синхронізувати з NTP (network time protocol) сервером через інтернет:
8 Установка Postfix, Dovecot, MySQL, phpMyAdmin, rkhunter, binutils
Установка Postfix, Dovecot, MySQL, rkhunter і binutils проводиться за допомогою однієї лише команди:
Якщо ви віддаєте перевагу MySQL замість MariaDB, замініть пакети "mariadb-client mariadb-server" в команді зверху, на "mysql-client mysql-server".
Потім потрібно відповісти на наступні питання:
Потім відкриємо TLS / SSL і порти підпорядкування в Postfix:
Видалимо секції підпорядкування і smtps і додамо рядки таким чином, щоб секції в файлі master.cf виглядали наступним чином:
Нам необхідно, щоб MariaDB працював з усіма інтерфейсами, а не тільки з локальним хостом, для цього відредагуємо файл /etc/mysql/my.cnf і видалимо рядок bind-address = 127.0.0.1:
Потім перезапустити MySQL:
Тепер перевіримо, чи дозволено робота в інтернеті:
Вихідні дані повинні виглядати наступним чином:
9 Установка Amavisd-new, SpamAssassin і Clamav
Для установки amavisd-new, SpamAssassin і ClamAV, виконаємо наступне:
і змінимо значення and AllowSupplementaryGroups з false на true:
Установка ISPConfig 3 використовує amavisd, який завантажує бібліотеку фільтрів SpamAssassin, тому зупинимо SpamAssassin, для того, щоб звільнити оперативну пам'ять:
10 Установка Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear і mcrypt
Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear і mcrypt встановлюються таким чином:
Далі буде потрібно відповісти на наступні питання:
Потім нам потрібно включити модулі Apache suexec, rewrite, ssl, actions і include (додатково dav, dav_fs, and auth_digest, якщо вам потрібно WebDAV):
і дозволимо роботу moduley, виконавши:
11 Установка SuPHP
Уточнення!
Необов'язково, не рекомендується.
SuPHP більше недоступний для Debian Jessie. Режим suphp більше не повинен використовуватися в ISPConfig, так як існують кращі режими PHP, такі як: php-fpm і php-fcgi. Якщо Ви хочете використовувати suphp, необхідно виконати наступне вручну:
Створимо директорію налаштування suphp і файл suphp.conf:
Далі додамо файл config для завантаження модуля suphp в apache:
Потім відкриємо /etc/apache2/mods-available/suphp.conf.
і додамо наступне:
Включимо модуль suphp в apache:
І перезапустити Apache:
12 XCache і PHP-FPM
Xcache є безкоштовний PHP opcode кешер, призначений для кешування та оптимізації проміжного коду PHP. Він схожий з іншими opcode кешерамі, наприклад, eAccelerator або APC. Настійно рекомендується встановити один з цих кешеров, якщо ви хочете прискорити сторінку PHP.
Xcache встановлюється наступним чином:
12.2 PHP-FPM
Починаючи з ISPConfig 3.0.5, додатковим режим PHP, який можна вибрати для використання спільно з Apache: PHP-FPM.
Для використання PHP-FPM спільно Apache, нам буде потрібно mode_fastcgi модуля Apache (не плутати з mod_fcgid). Встановимо PHP-FPM і mode_fastcgi наступним чином:
Переконаємося, що модуль включений і перезапустити Apache:
13 Install Mailman
Виберемо принаймні одна мова:
Відкриємо файл / etc / aliases
і додамо наступні рядки:
і потім перезапустити Postfix:
В кінці активуємо конфігурацію Mailman Apache:
і потім запустимо Mailman:
14 УстановкаPureFTPd і Quota
PureFTPd і quota встановлюються таким чином:
Потім відредагуємо файл / etc / default / pure-ftpd-common.
і переконаємося, що режимом запуску встановлена автономна установка і значення VIRTUALCHROOT = true:
Тепер налаштуємо PureFTPd, для того, щоб дозволити сесії FTP і TLS. FTP є дуже ненадійним протоколом, тому що всі паролі і дані передаються у вигляді тексту. При використанні TLS, вся комунікації зашифрована, що робить FTP набагато більш захищеним.
Для вирішення сесій FTP іTLS введемо наступне:
Для використання TLS необхідно створити сертифікат SSL. Створимо директорію / etc / ssl / private /, в якій буде знаходиться даний сертифікат:
Далі сгенерируем сертифікат SSL наступним чином:
Змінимо права доступу сертифіката SSL:
Потім перезапустити PureFTPd:
Відредагуємо / etc / fstab. Додамо рядок usrjquota = quota.user, grpjquota = quota.group, jqfmt = vfsv0
Для включення quota виконаємо наступне:
15. Установка сервера BIND DNS
BIND встановлюється наступним чином:
16 Установка Vlogger, Webalizer і AWStats
Vlogger, Webalizer і AWStats встановлюються таким чином:
17 Установка Jailkit
Jailkit потрібно, якщо ви хочете зробити chroot для користувачів SSH. Установка проводиться таким чином: (важливо: Jailkit може бути встановлений тільки перед установкою ISPConfig -після його вже не вийде встановити!):
Встановлюємо пакетYou Jailkit. deb наступним чином:
18 Установка fail2ban
Установка fail2ban необов'язкова, але рекомендована, так як монітор ISPConfig спробує показати запис подій:
Для створення монітора fail2ban PureFTPd і Dovecot, створимо файл /etc/fail2ban/jail.local:
Потім створимо 2 файли фільтра:
Додамо рядок ignoreregex в файл postfix-sasl:
Далі перезапустити fail2ban:
19 Установка squirrelmail
Для установки поштового клієнта SquirrelMail виконаємо наступне:
Потім налаштуємо SquirrelMail:
У SquirrelMail важливо вказати, що ми використовуємо Dovecot-IMAP / -POP3:
Apache конфігурація SquirrelMail знаходиться в /etc/squirrelmail/apache.conf, але цей файл не завантажений Apache, тому що він не знаходиться в директорії /etc/apache2/conf.d/. Створимо символьне посилання під назвою squirrelmail.conf в директорії /etc/apache2/conf.d/, яка вказує на /etc/squirrelmail/apache.conf і перезавантажити Apache:
Далі відкриємо /etc/apache2/conf.d/squirrelmail.conf.
і додамо наступні рядки в вміст, для того, щоб mod_php використовувався для доступу до SquirrelMail, не дивлячись на те, який режим PHP обраний на нашому сайті в ISPConfig:
і зробимо власником користувача www-data:
Далі необхідно, щоб squirrelmail працював з apache2.
Знову перезапускаємо Apache:
Тепер /etc/apache2/conf.d/squirrelmail.conf визначається alias / squirrelmail, який визначить, що установка SquirrelMail буде проведена в / usr / share / squirrelmail.
Отримати доступ до SquirrelMail через веб-сайт можна наступним чином:
Також отримати доступ можна з панелі управління віртуального хоста ISPConfig (після установки ISPConfig, установку розглянемо в наступному розділі) наступним чином (ніяка настройка ISPConfig не потрібно):
Якщо ви хочете використовувати alias / webmail замість / squirrelmail, необхідно буде відкрити файлs /etc/apache2/conf.d/squirrelmail.conf.
і додати в рядок Alias / webmail / usr / share / squirrelmail:
Потім перезавантажити Apache:
Тепер ми можемо отримати доступ до Squirrelmail, робиться це в такий спосіб:
Якщо ви хочете визначити віртуальний хост як webmail.drach.pro, де користувачі можуть отримати доступ до SquirrelMail, необхідно буде додати конфігурацію віртуального хоста в / etc / apache2 / conf.d / squirrelmail.conf:
Тепер перезапустити Apache.
20 Установка ISPConfig 3
Для установки останньої версії ISPConfig 3 введемо наступне:
З'явиться установник ISPConfig 3. Установник налаштує всі служби, типу Postfix, Dovecot і т.д. ручне налаштування, як в ISPConfig 2, в останній версії не потрібно.
Увага: Не звертайте увагу, що установник ISPConfig 3 визначає Debian Jessie, як невідому версію. Це ніяк не впливає на функціональність і буде виправлено в наступному оновленні.
Установник автоматично налаштує всі сервіси.
Тепер система готова до використання.
Додаток ISPConfig Monitor для Android
За допомогою ISPConfig Monitor можна перевіряти стан сервера і запущені служби. Також можна перевіряти порти TCP іUDP і пінгувати сервера. Додаток можна використовуватися для запиту подробиць серверів, на який встановлений ISPConfig (мінімальна версія ISPConfig 3, яка підтримується програмою - 3.0.3.3!); вся ці подробиці включають в себе всю інформацію з модуля моніторингу ISPConfig Control Panel (наприклад служби, поштові та системні журнали подій, чергу пошти, інформацію про ЦП і пам'яті, використання диска, деталі ОС, журнал подій RKHunter і т.д.) і так як ISPConfig підтримує кілька серверів, можна перевірити, чи всі сервера упраивляются головним сервером ISPConfig.
Для завантаження програми і прочитання інструкцій перейдіть на офіційний сайт.
Використання OpenVZ
Якщо сервер на базі Debian, який Ви тільки що встановили, є віртуальною машиною (наприклад, OpenVZ), в хост-системі необхідно прописати наступне:
Передбачається, що ID в OpenVZ це 101 - замініть на коректний VPS ID для вашої системи.