Так уж вышло, что изначально после чистой установки 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 и попробовать запустить его.
Если после запуска, появилось сообщение об успешном запуске, поздравляю вас, все работает. Но стоит понимать, что при перезапуске сервера проблема скорее всего вернется. Необходимо выяснить список процессов, которые занимают порт, понять нужны ли они в вашем конкретном случае и если не нужны, то необходимо завершить эти процессы и выключить повторный запуск этих служб при загрузке системы.
Полезные ссылки:
https://www.aapanel.com/docs/Function/Domains.html
https://www.aapanel.com/docs/
https://www.aapanel.com
К этой записи нет комментарий. Ваш будет первым!