Установка PowerDNS и PowerAdmin
В этой статье мы установим PowerDNS и PowerAdmin на сервер с Ubuntu 24.04
1. Установка PowerDNS
2. Установка PowerAdmin
1. Установка PowerDNS
Для того, чтобы установить последнюю доступную версию необходимо для начала обновить список пакетов доступных в репозиториях. Делается это следующей командой:
apt-get update
Установим MariaDB где PowerDNS будет хранить DNS-записи для доменов.
apt-get install -y mariadb-server
systemctl enable mariadb
systemctl start mariadb
Далее настроим безопасную работу с MariaDB. Для этого выполним команду mysql_secure_installation
указав все нужные парамеры при настройке.
Вместо Пароль_для_пользователя_root
нужно указать пароль для пользователя root в MariaDB.
Пароль должен быть не менее 12 символом, содержать буквы в разном регистре, цифры и спецсимволы.
Данной командой мы отключаем анонимных пользователей, запрещаем вход под пользователем root с удалённых хостов. Также удаляем тестовую базу test
и перезагружаем привелегии в MariadDB.
mysql_secure_installation <<EOF
y
Пароль_для_пользователя_root
y
y
y
y
EOF
Подключимся к Mariadb сервеу через консоль.
mysql -u root -p
Создадим базу данных, где PowerDNS будет хранить DNS-записи, а также создадим пользователя для арбы с этими записями.
CREATE DATABASE powerdns;
GRANT ALL ON powerdns.* TO 'powerdns'@'localhost' IDENTIFIED BY 'ваш_пароль';
FLUSH PRIVILEGES;
Установим PowerDNS
sudo apt-get install -y pdns-server pdns-backend-mysql
Откроем файл конфигурации /etc/powerdns/pdns.conf
и в конце файла записем строки для подключения к базе данных MariaDB, которую мы создали ранее.
launch=gmysql
gmysql-host=localhost
gmysql-user=powerdns
gmysql-password=ваш_пароль
gmysql-dbname=powerdns
Создадим таблицы в MariaDB для работы PowerDNS, загрузив схему таблиц из файла.
mysql -u root -p powerdns < /usr/share/doc/pdns-backend-mysql/schema.mysql.sql
Запустим PowerDNS и добавим его в автозагрузку
systemctl enable pdns
systemctl start pdns
На этом базовая настройка PowerDNS завершена.
2. Установка PowerAdmin
Теперь для того чтобы начать работать с PowerDNS через веб-инфтерфейс начнём установку PowerAdmin. Для этого установим apache2 и php из репозиториев, а также включим apache2 в автозагрузку.
apt install -y apache2 php php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt
systemctl enable apache2
systemctl start apache2
Скачаем архив PowerAdmin с github разработчиков и распакуем его в папку, откуда apache2 будет работать с веб-панелью.
cd /tmp
wget https://github.com/poweradmin/poweradmin/archive/refs/tags/v3.9.4.tar.gz
tar xvfz v3.9.4.tar.gz
mv poweradmin-3.9.4 /var/www/html/poweradmin
chown -R www-data:www-data /var/www/html/poweradmin/
Теперь настроим работу PowerAdmin через веб-интерфейс. Для этого откройте в браузере ссылку http://ip-адрес/poweradmin/install/
, где вместо ip-адрес
вставьте ip-адрес Вашего сервера.
В мастере установки выбираете язык инфтерфейса, соглашаетесь с установкой PowerAdmin. На третьем щаге укажите реквизиты подключения к базе данных, которые мы создавали ранее, а также пароль от веб-интерфейса. Должны получится следующие настройки
На четвёртом шаге придумайте имя пользователя и пароль, под которыми PowerAdmin будет подключаться к базе данных powerdns.
В поле Hostmatser
укажите Вашу почту, чтобы в случае чего, с Вами можно было связаться.
Вместо @
используйте .
при указании Вашей почты.
В поле Primary nameserver
и Secondary nameserver
укажите домен, который узкаывает на Ваш сервер.
Должны получится следующие настройки
На пятом шаге будут показаны sql-команды, которые нужно выполнить в mysql, чтобы PowerAdmin могу подключаться к базе данных powerdns и менять данные DNS-записей.
На шестом шаге нужно открыть файл /var/www/html/poweradmin/inc/config.inc.php
и вставить в него php-код, который отображается при установке. Пример php-кода выглядит следующим образом
<?php
$db_host = 'localhost';
$db_name = 'powerdns';
$db_user = 'poweradmin';
$db_pass = 'Ваш_другой_пароль';
$db_type = 'mysql';
$session_key = 'UVlU!pUK^LnBKogZfdfriBVK$OV(E4Y9MP3LQHmvjIqb4m';
$iface_lang = 'en_EN';
$dns_hostmaster = 'admin.sitename.ru';
$dns_ns1 = 'ns1.sitename.ru';
$dns_ns2 = 'ns2.sitename.ru';
На последнем шаге удаляем каталог install на сервере
rm -rf /var/www/html/poweradmin/install/
Установка завершена, теперь PowerAdmin доступен по адресу
http://ip-адрес-vds/poweradmin