Установка PowerDNS и PowerAdmin

25 июля 2025
108
dns

В этой статье мы установим 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. На третьем щаге укажите реквизиты подключения к базе данных, которые мы создавали ранее, а также пароль от веб-интерфейса. Должны получится следующие настройки

Снимок экрана от 2025-07-25 22-56-26.png

На четвёртом шаге придумайте имя пользователя и пароль, под которыми PowerAdmin будет подключаться к базе данных powerdns.

В поле Hostmatser укажите Вашу почту, чтобы в случае чего, с Вами можно было связаться. Вместо @ используйте . при указании Вашей почты.

В поле Primary nameserver и Secondary nameserver укажите домен, который узкаывает на Ваш сервер.

Должны получится следующие настройки

Снимок экрана от 2025-07-25 23-02-11.png

На пятом шаге будут показаны 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

Рекомендуемые статьи:

Мы используем файлы cookie для предоставления наших услуг, а также для аналитики и маркетинга. Продолжая просматривать наш веб-сайт, вы соглашаетесь на использование нами файлов cookie.
ОК