Ispconfig 3 настройка dns
ISPConfig - бесплатная панель управления хостингом с открытым исходным кодом c возможностью управлять несколькими серверами из одной панели управления. Это один из лучших вариантов для веб-студий, хостинг-компаний, а так же для всех, кто ищет бесплатную панель управления хостингом с широким функционалом.
Установим ISPConfig 3.2
Установка выполняется согласно подсказкам установщика:
После установки наша панель будет доступна на 8080 порту. Авторизуемся, используя пароль, указанный при установке:
В данной инструкции мы продолжаем цикл статей по установке и настройке хостинг панели ISPConfig 3 на сервере Debian Squeeze и сегодня мы добавим в панель ISPConfig DNS домен server.loc.
Естественно, что домен может быть любого имени, но так как мы с самого начала выбрали server.loc то с ним и будем работать.
Мы же в данной инструкции просто добавим DNS зону server.loc и добавим в этой зоне несколько поддоменов для установки сайтов о чем будет подробно расписано в последующих руководствах.
Вообщем много слов, потому приступим.
Открываем в панели управления хостингом ISPConfig 3 вкладку ДНС и запускаем мастер для добавления домена нажав кнопку Add new DNS Zone with Wizard:
Откроется окно мастера добавления DNS зоны.
Для добавления DNS server.loc, нам нужно заполнить поля:
После заполнения полей по примеру выше, для добавления DNS домена в ISPConfig 3 нам осталось только нажать на кнопку Создать DNS запись, что мы и делаем:
После проделанных действий во вкладке ДНС панели ISPConfig 3 появится добавленная DNS зона server.loc c которой мы и будем далее работать:
После добавления DNS зоны server.loc, нам необходимо войти в нее нажав на server.loc на скриншоте выше и открыть вкладку с записями Records:
Откроется вкладка Records для настройки NS записей DNS зоны server.loc, для настройки NS, нам необходимо добавить A запись нажав на кнопку A:
В открывшемся окне заполняем поля по примеру:
После заполнения полей нажимаем кнопку Сохранить
Таким же образом добавляем NS2 запись:
В открывшемся окне заполняем поля по примеру:
После заполнения полей нажимаем кнопку Сохранить
После произведенных действий видим что добавлены NS записи для домена server.loc:
Теперь нам необходимо добавить поддомен самого сервера webserver.server.loc, для этого также нажимаем на кнопку A для создания A записи в домене server.loc и заполняем поля по примеру:
В открывшемся окне заполняем поля по примеру:
После заполнения полей нажимаем кнопку Сохранить
После этих действий переходим во вкладку DNS Zone и для сохранения всех изменений в домене server.loc нажимаем кнопку Сохранить:
Для проверки работоспособности DNS сервера Вам достаточно указать для Вашего компьютера указать использовать DNS на нашем сервере с IP 192.168.0.2 по примеру:
Теперь для проверки из windows достаточно проверить пинг командами:
На каждую из команд должен идти пинг на IP 192.168.0.2
Для проверки работы DNS сервера на самом сервере через SSH либо напрямую(клавиатура и монитор) в консоли, необходимо прописать в файле находящемся по пути /etc/resolv.conf:
и проверяем также командами пинг по доменным именам:
Либо чтобы не прописывать ничего, достаточно на сервере выполнить команду:
На данном действии задача данного руководства выполнена, домен server.loc добавлен на сервере Debian с установленной панелью управления хостингом ISPConfig 3 и проверена его работоспособность.
C Вами был Сергей Лазаренко, подписывайтесь на обновления с сайта и комментируйте статью.
После плодотворной работы нужно встряхнуть свой мозг, для этого просмотрим видеопрощане 13-летней девочки которая боролась за жизнь до самого последнего, мир праху её, она бала достойный человек, не каждый сможет так держаться в последний миг своей короткой жизни:
Для настройки и работы с MAIL, WEB, DNS, SSH, FTP серверами мы установим и настроим хостинг панель ISPConfig 3.
ISPConfig 3 — одна из лучших бесплатных панелей управления хостингом с открытым исходным кодом для операционной системы Linux.
С помощью ISPConfig 3 мы получим веб интерфейс для работы с такими сервисами хостинг сервера как: Postfix, Apache2, Bind9, SSH, PureFTPd.
. Внимание .
Если Вам не нужен какой-либо из сервисов:
Для пропуска установки почтового сервера Postfix с антивирусной поддержкой, не выполняем установку таких программ:
Для пропуска установки DNS сервера Bind9 не выполняем установку программ:
Для пропуска установки FTP сервера PureFTPd не выполняем установку программ:
Не желаете устанавливать для пользователей квоты, тогда не устанавливайте пакеты:
Не собираетесь предоставлять кому-либо из пользователей SSH, SFTP доступ к своему серверу, тогда не собирайте программу Jailkit.
Соответственно и не производим настройку не установленных программ в соответствующих разделах.
Приступим к установке.
Для Debian Squeeze:
Операционную систему будем устанавливать и настраивать Debian Squeeze, устанавливаем сервер по инструкции: Установка Debian Squeeze c подробными скриншотами
Для Debian Wheezy:
Операционную систему будем устанавливать и настраивать Debian Wheezy, устанавливаем сервер по инструкции: Установка Debian Wheezy c подробными скриншотами
После установки заходим на сервер по SSH с помощью программы Putty используя инструкцию: Инструкция по программе Putty и PSCP
Добавляем репозиторий с которого будем обновлятся и устанавливать програмное обеспечение, вносим изменения в файл /etc/apt/sources.list выполнив команду:
Для Debian Squeeze:
Для Debian Wheezy:
Для Debian Jessie:
Запускаем обновление репозитория командой:
Запускаем обновление системы командой:
Устанавливаем редактор vim, файловый менеджер mc и программу screen командой:
Вносить изменения в конфигурационные файлы можете как с помощью редактора vi, так и с помощью редактора mcedit, используйте то, что Вам удобнее. Я использую в инструкции редактор vi.
Предположим, что доменное имя основного домена server.loc, для сервера делаем доменное имя webserver.server.loc
При стандартной установке, когда сервер получил айпи автоматически от роутера, сетевая карта сервера настраивается на получение айпи автоматически по DHCP и при наличии 2 и более сетевых карт настраивается только одна (остальные ручками), нам же необходимо изменить на статический айпи в файле /etc/network/interfaces, для этого вносим изменения:
После внесения изменений в файле /etc/network/interfaces перезагружаем сеть сервера выполнив команду:
Редактируем файл /etc/hosts:
Вносим изменения в файл /etc/hostname, чтобы измененить имя сервера Linux выполнив команды:
Для проверки правильности изменения имени сервера, выполните команды:
Ответ системы должен быть:
В данной инструкции, мы сделали первичную настройку сетевого интерфейса перед установкий хостинг панели ISPConfig 3, добавили в сервер репозиторий, обновили его и запустили обновление до последних версий установленного програмного обеспечения. Изменили имя сервера Linux на webserver.server.loc
Продолжение будет с дня на день.
После труда всегда нужно немножко отдохнуть, отвлечемся на минутку просмотрев захватывающий видео ролик и работе на высоте. Я бы не смог выполнять такую работу, это нужно быть полностью обесбашенным на всю голову:
Продолжаем установку хостинг панели ISPConfig 3, напоминаю, что первая часть статьи находится по адресу: Настройка сети перед установкой ISPConfig 3 в Debian - ч.1 .
В данной инструкции мы установим и произведем первичную настройку необходимого програмного обеспечения.
]]> ISPConfig 3 ]]> - отличная панель для администрирования таких сервисов как Почта (Postfix), FTP (PureFTPd), SSH (OpenSSH), DNS (Bind9), Web (Apache2)
Приступим.
Изменение оболочки консоли по умолчанию, так как /bin/sh является символичной ссылкой на /bin/dash, нам надо /bin/bash, а не /bin/dash. Изменяем настройку консоли выполнив команду:
на вопрос системы:
Использовать dash в качестве системной оболочки по умолчанию (/bin/sh)?
Отвечаем Нет
Для UBUNTU 16.04 отключаем пакеты AppArmor для защиты выполнив команды, их можете установить заново после полной установки и настройки сервера, когда все установлено и протестировано. Выполняем команды для отключения и удаления:
Устанавливаем NTP, Postfix, Dovecot, Saslauthd, MySQL, rkhunter, and binutils командой:
На вопросы системы отвечаем:
- Настройка Postfix: - Ok
- Общий тип настройки почты: - выбираем Интернет-сайт
- Система почтовое имя: - Вводим webserver.server.loc
- Новый пароль для MySQL пользователя "root": Вводим пароль root для MySQL
- Повторите ввод пароля для MySQL пользователя "root": Повторяем ввод пароля root для MySQL
Запрос на ввод пароля от установщика MariaDB:
Проведем минимальную настройку безопасности с помощью команды mysql_secure_installation, отключив не безопасные параметры ответив по примеру ниже:
При запуске необходимо ввести пароль пользователя root базы данных, который Вы ввели во время установки выше.
Если в mariadb пускает в консоль mysql без пароля, можно установить пароль root (лучше установить после установки панели ISPConfig) выполнив команды:
Вернуть как было до изменения так:
Открываем TLS/SSL порты в Postfix внеся изменения в файл /etc/postfix/master.cf:
Убедимся, что наша ОС сконфигурирована
Убедимся, что на нашем сервере установлены последние версии всех пакетов, установлен ssh клиент и vim (или любой другой текстовый редактор, в котором вам будет удобно работать), настроен статичный ip, hosts, hostname и локали.
Для установки обновлений, ssh и текстового редактора выполним команды:
sudo -s
apt update && apt upgrade -y && apt autoremove -y && apt install -y ssh openssh-server nano vim-nox
Настроим статичный ip, для этого откроем файл конфигурации и укажем необходимые настройки:
vi /etc/netplan/00-installer-config.yaml
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
addresses: [185.104.112.249/24]
gateway4: 185.104.112.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
Проверим корректность конфигурации командой
netplan try
В случае если все хорошо и конфигурация верна, появится надпись с предложением применить конфигурацию, для применения необходимо нажать клавишу ENTER, если в течении 120 секунд мы не согласимся - будет использована предыдущая конфигурация:
Установим хостнейм, выполнив команды:
echo ispnginx > /etc/hostname && hostname ispnginx
или
hostnamectl set-hostname ispnginx
Проверим, изменился ли hostname командами:
hostname
hostname -f
Вывод должен выглядеть примерно так
Настроим локали, выполнив:
dpkg-reconfigure locales
Выбираем для установки en_US.UTF-8 и ru_RU.UTF-8, после чего перезагрузим сервер - он предварительно подготовлен к установке Ispconfig
Установим Jailkit fail2ban and UFW
apt install -y jailkit fail2ban
Создадим набор правил
vi /etc/fail2ban/jail.local
[pure-ftpd]
enabled = true
port = ftp
filter = pure-ftpd
logpath = /var/log/syslog
maxretry = 3
[dovecot]
enabled = true
filter = dovecot
action = iptables-multiport[name=dovecot-pop3imap, port="pop3,pop3s,imap,imaps", protocol=tcp]
logpath = /var/log/mail.log
maxretry = 5
[postfix]
enabled = true
port = smtp
filter = postfix
logpath = /var
Перезапустим fail2ban:
service fail2ban restart
Для установки UFW выполним:
apt install -y ufw
Для Debian Jessie и Debian Stretch:
Установим Nginx, PHP 7.4 (PHP-FPM), and Fcgiwrap
Установим nginx
apt-get install nginx
Обращаться к интерпретатору мы будем через PHP-FPM (FastCGI Process Manager), установим его:
apt-get -y install php7.4-fpm
Поищем дополнительные модули php:
apt-cache search php7.4
Выберем необходимые и установим:
apt install -y php7.4-common php7.4 php7.4-gd php7.4-mysql php7.4-imap php7.4-cli php7.4-cgi php7.4-curl php7.4-pspell php7.4-intl php7.4-sqlite3 php7.4-tidy php7.4-xml php7.4-xmlrpc php7.4-zip php7.4-xsl php7.4-mbstring php7.4-soap php-pear mcrypt imagemagick libruby memcached php-memcache php-imagick php-soap php-apcu
Откроем файл
vi /etc/php/7.4/fpm/php.ini
И установим cgi.fix_pathinfo=0, your timezone, short_open_tag= On
Перезагрузим PHP-FPM:
service php7.4-fpm reload
Чтобы получить поддержку CGI в nginx, установим Fcgiwrap:
apt-get -y install fcgiwrap
Установим Amavisd-new, SpamAssassin, and Clamav
Выполним установку командой:
apt install -y amavisd-new spamassassin clamav clamav-daemon unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl postgrey
т.к. amavisd, загружает фильтры SpamAssassin, мы можем остановить SpamAssassin для экономии памяти
service spamassassin stop
update-rc.d -f spamassassin remove
Запустим ClamAV
freshclam
service clamav-daemon start
Ошибку при первом запуске игнорируем
Установим Vlogger, Webalizer, AWStats and GoAccess
Установим ntp
apt install -y ntp ntpdate
Установим Let's Encrypt, PureFTPd и Quota
apt install -y certbot pure-ftpd-common pure-ftpd-mysql quota quotatool
Отредактируем файл /etc/default/pure-ftpd-common и убедимся, что start mode = standalone и VIRTUALCHROOT=true
vi /etc/default/pure-ftpd-common
Включим FTPS командой
echo 1 > /etc/pure-ftpd/conf/TLS
Создадим директорию для сертификатов
mkdir -p /etc/ssl/private/
И сегнерируем сам SSL сертификат
openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem
Поменяем права на файл:
chmod 600 /etc/ssl/private/pure-ftpd.pem
Перезапустим PureFTPd:
service pure-ftpd-mysql restart
Включаем quota:
mount -o remount /
quotacheck -avugm
quotaon -avug
Для Ubuntu 16
После сохранения файла /etc/postfix/master.cf перезагружаем сервер Рostfix выполнив команду:
Настраиваем работу базы данных Mysql на всех интерфейсах, по умолчанию работает только на 127.0.0.1:
После сохранения изменений перезагружаем сервер Mysql командой:
Устанавливаем антиспам и антивирус для почтового сервера Amavisd-new, SpamAssassin и ClamAV командой:
Для фильтрации спам писем ISPConfig3 использует Amavisd, который загружает внутренние фильтры библиотеки SpamAssassin самостоятельно, потому мы можем остановить и отключить загрузку SpamAssassin, чтобы не занимать оперативную память лишним процессом выполнив команды:
. Внимание . При продолжительной работе почтового сервера, сервер Amavisd собирает огромное количество спама и вирусов в карантинную папку /var/lib/amavis/virusmails/ которая разростается если её не чистить. Добавим в крон автоматический поиск и удаление спама и вирусов в карантине старше 30 дней.
Для этого выполним команду:
В открывшемся файле добавим запись:
Таким образом в час ночи десять минут каждый день будет запускатся поиск файлов старше 30 дней и автоматически удалятся.
Устанавливаем Веб сервер с поддержкой php Apache2, PHP5, PHPMyAdmin, FCGI, suExec, Pear, FPM и mcrypt выполнив команду:
Для Ubuntu 16 идет php версии 7, потому команда:
Если устанавливаем только Nginx + PHP-FPM в Debian Stretch:
На вопросы системы отвечаем:
- Веб-сервер для автоматической перенастройки: - apache2
- Настроить базу данных для phpmyadmin с помощью dbconfig-common? - Нет
Выполним активацию модулей веб сервера Apache2 - suexec, rewrite, ssl, actions, dav, dav_fs, and auth_digest выполнив команду:
После активации моделей веб сервера необходимо перезагрузить Apache2 веб сервер командой:
Вносим изменения в suphp конфигурационный файл /etc/apache2/mods-available/suphp.conf (для DEBIAN 8Jessie и Ubuntu 16 не актуально, делать не нужно)
Если Вы хотите использовать файлы языка Ruby с расширением .rb, необходимо закоментировать параметр в файле /etc/mime.types:
Устанавливаем Install Let's Encrypt для установки бесплатных сертефикатов на сайты из панели ISPConfig 3.1, выполняем команду:
Для Debian 8 Jessie выполняем команды:
Устанавливаем FTP сервер PureFTPd и квоты Quota выполнив команду:
Нам необходимо внести изменения в конфигурационный файл ftp сервера PureFTPd /etc/default/pure-ftpd-common:
Сохраняем измененный файл.
Теперь настраиваем работу FTP сервера для работы через защищенный протокол TLS и создаем ssl сертефикат:
Создаем папку, где будет хранится наш сертификат выполнив команду:
Генерируем сам сертификат выполнив команду:
Во время создания сертификатов отвечаем на вопросы:
Назначаем права для сертификата 600 выполнив команду:
После внесения изменений и сохранив конфигурационный файл, создания ssl сертификата перезагружаем FTP сервер PureFTPd командой:
Сохраняем файл /etc/fstab.conf
Для включения квот на диске, нам необходимо перемонтировать корневой раздел выполнив команду:
И непосредственно включаем квоты на диске выпонив команды:
Устанавливаем DNS сервер Bind который будет также удобно администрироватся через веб интерфейс панели ISPConfig выполнив команду и согласившись:
Устанавливаем программы для анализа и статистики посещаемости веб сервера выполнив команды:
Отключаем для программы awstat автоматический запуск из cron в файле /etc/cron.d/awstats:
Установка программы Jailkit
Если Вы будете предоставлять для пользователей изолированный chroot ssh доступ к серверу, необходимо установить программу Jailkit. Jailkit должен быть установлен до установки ISPConfig, и сам Jailkit будем устанавливать из исходных кодов, потому устанавливаем необходимые для сборки программы выполнив команду:
И приступаем у созданию директории, где будем скачивать, распаковывать и собирать программу Jailkit. Для установки программы Jailkit выполняем команды:
Установка программы Fail2ban
Устанавливаем программу fail2ban, которая будет стоять на защите наших серверов, блокируя айпи с которых производится попытка взлома открытых в интернет сервисов, если такие есть. Если же Вам это не нужно, тогда можете пропустить установку и настройку fail2ban.
Выполним установку и настройку программы fail2ban выполнив команду:
Создаем конфигурационный файлы для настройки программы fail2ban, выполнив команды (скопировать все и вставить в консоль через Putty):
Перезагружаем программу для защиты сервера fail2ban выполнив команду:
На данном месте основная настройка необходимых программ для установки хостинг панели ISPConfig 3 завершена. Инструкция большая, потому отдохнем просмотрев видео ролик, где узнаем почему же футболисту Бэкхэму платят столько денег. Видно талант человека :)
Установим Postfix, Dovecot, MySQL, phpMyAdmin, rkhunter, Binutils
Установим Postfix, Dovecot, MySQL, rkhunter и binutils с помошью команды:
apt install -y postfix postfix-mysql postfix-doc mysql-client mysql-server openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d dovecot-mysql dovecot-sieve dovecot-lmtpd sudo patch
/etc/postfix/master.cf должен выглядеть так:
Выполним перезагрузку postfix
service postfix restart
Чтобы базы данных были доступны удалено отредактируем файл /etc/mysql/mysql.conf.d/mysqld.cnf и закомментируем стоки:
bind-address = 127.0.0.1
mysqlx-bind-address = 127.0.0.1
Ниже добавим строку:
mysqlx=OFF
vi /etc/mysql/mysql.conf.d/mysqld.cnf
Перезапустим mysql и проверим, что сетевой доступ к mysql включен командой:
service mysql restart && netstat -tap | grep mysql
Вывод должен быть аналогичен данному:
Главное меню
Настраиваем ISPConfig 3 и добавляем сайты. |
04.04.13 16:44 |
И так мы уже установили и обновили панель ISPConfig 3, теперь добавляем новых клиентов и новые сайты и ставим на них популярные cms joomla, Drupal, wordparess, DLE 0) Заходим в раздел Система и пункт файрволл, здесь откроем нужные порты и закроем все остальные. О том как узнать какие порты использует та или иная служба зайдем на википедию 1) Создадим шаблон настроек для будущих сайтов. Заходим в раздел Клиенты -> Изменить шаблон клиента -> вводим имя и переходим к вкладке лимиты. 2) Добавляем клиента, Клиенты -> Добавить клиента, заполняем бланк и выбираем наш шаблон который мы создали. 3) Добавляем сайт клиента. Сайты -> add newsite другие опции такие как, бекап, статистика заполняем при необходимости. 4) После чего настраиваем DNS зоны, нажимаем на кнопку "Add new DNS Zone with Wizard" 5) Пробуем работает ли сайт клиента, должны увидеть такую страницу 6) Учетная запись клиента готова к использованию, можно самому создать FTP аккаунты для пользователя и базы данных, или же предоставить эту работу самому пользователю, но я бы порекомендовал бы сделать это самому т.к не все пользователи достаточно опытные что бы это сделать в одиночку. Выходим с ispconfig и заходим под аккаунтом клиента которые мы создали ранее в шаге 2. Добавляем FTP account Добавляем Mysql account Пробуем установить CMS проверим работу наших трудов. Заходим по фтп для конекта используем ип сервера 192.168.1.247 Нам нужна папка web, заходим в нее и удаляем favicon.ico index.html robots.txt остальное не трогаем. Теперь сюда заливаем нашу cms, для проверки я взял wordpress Начинаем установку и доходим до ввода параметров баз данных, вводим те что мы создали в панели клиента Теперь видим что Извините, файл wp-config.php недоступен для записи. Можно создать wp-config.php вручную и вставить туда следующий код: эта ошибка высветилась т.к это первая установка Wordpress. Проблема решается быстро создаем файл wp-config.php и в ну тырь него копируем тот код что предлагается нам при установке после чего копируем этот файл в корень попки web и нажимаем Запустить установку. Установка Wordpress завершена. Заходим на сайт Поздравляю мы установили на первый сайт на своем хостинге cms Wordparess, так же само можно создать 50-100-200 сайтов на своем хостинг сервере, главное что бы ресурсов хватило. Выключим и удалим apparmorservice apparmor stop && update-rc.d -f apparmor remove && apt-get remove apparmor apparmor-utils Изменим оболочку по умолчаниюВ настоящий момент /bin/sh - симлинк /bin/dash, но нам нужно /bin/bash, выполним: Установим phpmyadmin Также просто пропускаем вопрос об установке пароля MySQL application password for phpmyadmin: Далее соглашаемся Поставим Roundcube Webmailapt install -y roundcube roundcube-core roundcube-mysql roundcube-plugins roundcube-plugins-extra javascript-common libjs-jquery-mousewheel php-net-sieve tinymce Configure database for roundcube with dbconfig-common? Откорректируем конфигурацию RoundCube config.inc.php: Читайте также:
|