I did a fresh install of powerdns on CentOS 8 Desktop. When running the service on port 53 everything runs without issue. When changing the port 5300 it errors out. I receive this error message:
visitel-vpn1.localdomain systemd: Started PowerDNS Authoritative Server. Loading '/usr/lib64/pdns/libgmysqlbackend.so' This is a standalone pdns Listening on controlsocket in '/var/run/pdns/pdns.controlsocket' Unable to bind UDP socket to '0.0.0.0:5300': Permission denied Fatal error: Unable to bind to UDP socket
here is my service file. I stripped down the service file to bare minimum and added the --local-port to the command line parameter.
[Unit] Description=PowerDNS Authoritative Server [Service] ExecStart=/usr/sbin/pdns_server --guardian=no --daemon=no --disable-syslog --log-timestamp=no --write-pid=no --local-port=5300 User=root Group=root RuntimeDirectory=pdns [Install] WantedBy=multi-user.target
Things I have tried:
- running PowerDNS with default settings default port. WORKS
- running as root in the console with port 5300. WORKS
- PowerDNS on Ubuntu 20 Server running as service on port 5300. WORKS
- disabled firewalld. FAIL
- running powerDNS service with port 0.0.0.0:5300 or 127.0.0.0:5300 or [localip]:5300. FAIL
- running PowerDNS on any port other than 53 such as 25, 1000, 1024, 54. FAIL
There is some security setting in CentOS 8 Desktop that is restricting services from binding to UDP ports. I can just run Ubuntu but I would like to know why it's failing on CentOS. Any ideas? Thanks.