разделы:

Не запускается Dns Manager в aaPanel на Debian 12

Так уж вышло, что изначально после чистой установки aaPanel на Debian 12, при запуске Dns Manager (PowerDNS\pdns) служба не запускалась самостоятельно и не делала это при запуске вручную в меню самого плагина. Попытки запуска через консоль тоже не приводили к нужном результату. В конечном итоге решение было найдено и о нем пойдет речь ниже. На днях после обновления панели до версии 7.0.20, помимо проблем с сертификатами, после перезагрузки появилась вновь и проблема с Dns Manager и пришлось вспоминать как и что делалось, чтобы ее решить. Делюсь с вами данным способом, на случай если вы столкнетесь с аналогичной ситуацией.

Первым делом нам необходимо или через раздел Консоль прямо в панели или подключившись через SSH, проверить текущий статус службы PowerDNS командой:

sudo systemctl status pdns

Далее необходимо попробовать перезапустить PowerDNS командой:

sudo systemctl restart pdns

или попробовать запустить принудительно командой:

sudo systemctl start pdns

Так как проблема у нас уже есть (что вероятнее всего, если вы это читаете), то скорее всего PowerDNS у вас к этому моменту не запускается, выдавая ошибку запуска службы и предлагая проверить журнал ошибок службы pdns, для понимания проблемы.

Проверим логи на ошибки PowerDNS (pdns) выполнив команду:

sudo journalctl -u pdns

Если у вас в выводе консоли что-то вроде этого:

May 22 14:06:55 vps-1 systemd[1]: Failed to start pdns.service - PowerDNS Authoritative Server.
May 21 16:45:22 vps-1 systemd[1]: pdns.service: Main process exited, code=exited, status=1/FAILURE
unable to bind UDP socket: Address already in use
Failed to bind to port 53 on 0.0.0.0
Address already in use — cannot bind to port 53

Если у вас причина такая же socket: Address already in use, сервис не может запуститься потому-что нужный ему порт 53 уже кем-то используется, то конкретно этот вариант мы и попробуем сейчас решить. Проблема не распространена, но иногда встречается.

В разделе Security (на панели с левой стороны) в aaPanel нужный порт должен быть добавлен по умолчанию, если его нет то добавьте 53 порт (tcp\udp).

Проверить, не запускается ли другой процесс на порт 53.

Некоторые сервисы (например, systemd-resolved или dnsmasq) могут автоматически перезапуститься и занять порт 53. Убедитесь, что они отключены:

sudo systemctl stop systemd-resolved
sudo systemctl disable systemd-resolved
sudo systemctl stop dnsmasq
sudo systemctl disable dnsmasq

Если проблема повторяется и порт 53 занят, выясняем, какой процесс его занимает:

sudo fuser -v 53/tcp 

дополнительно проверим UDP

sudo fuser -v 53/udp

Вывод команды покажет, какой процесс в настоящее время использует порт.
Затем мы можем определить, что это за конкретный процесс более детально:

ps aux | grep <PID>
Спойлер [раскрыть]

Определив процесс и его PID и понимая что он не нужен, завершаем его:

kill <PID>

или

kill −9  <PID>

Стоит заметить, что есть альтернативный вариант завершения служб.
Можно завершить сразу все процессы которые используют конкретный порт:

fuser -k 53/tcp
fuser -k 53/udp

После чего мы можем снова войти в Dns Manager и попробовать запустить его.

Запущенный Dns Manager в aaPanel на Debian 12

Если после запуска, появилось сообщение об успешном запуске, поздравляю вас, все работает. Но стоит понимать, что при перезапуске сервера проблема скорее всего вернется. Необходимо выяснить список процессов, которые занимают порт, понять нужны ли они в вашем конкретном случае и если не нужны, то необходимо завершить эти процессы и выключить повторный запуск этих служб при загрузке системы.

 
Полезные ссылки:
https://www.aapanel.com/docs/Function/Domains.html
https://www.aapanel.com/docs/
https://www.aapanel.com