IPv4 & IPv6 Leasing - Any RIR, Any LocationOrder Now
Hostperl

DirectAdmin License Check and Renewal on VPS in 2026

By Raman Kumar

Share:

Updated on Aug 5, 2026

DirectAdmin License Check and Renewal on VPS in 2026

What to check before a DirectAdmin license renewal

If your panel stops authenticating, a reinstall is usually the wrong move. A DirectAdmin license check and renewal starts by confirming the VPS IP, the assigned hostname, and the license state before you touch services. This guide shows you how to do that on a fresh server, with separate paths for Ubuntu or Debian and for AlmaLinux or Rocky Linux.

If you are still choosing the right server for panel work, a Hostperl VPS gives you a clean base for DirectAdmin, cPanel, or migration testing. For a broader panel comparison, see How to Choose cPanel, Plesk, or DirectAdmin in 2026.

  • You will confirm the server IP and hostname.
  • You will test the license from the panel and the shell.
  • You will restart only the services that actually need it.
  • You will verify the panel page after renewal.

Start with the SSH login and OS check

On your local computer, connect as root or as the default admin account your provider gave you. Replace SERVER_IP with your VPS address. If your provider uses a non-root login, use that instead of root.

ssh root@SERVER_IP

Example: ssh root@203.0.113.10. Once logged in, confirm the operating system before you run any package commands.

cat /etc/os-release

You should see a clear distribution ID such as Ubuntu, Debian, AlmaLinux, or Rocky Linux. Keep this session open until every check passes.

Verify the panel identity, IP, and hostname

On the VPS as root, confirm the current hostname and public address. DirectAdmin license problems often come from a mismatch here after a migration or IP change.

hostnamectl status
ip addr show
curl -4 ifconfig.me
pwd

Healthy output should show one stable hostname and the same public IPv4 address your license was issued for. If the IP changed, update the provider-side license request before you continue.

If you recently moved a site or panel between servers, the migration notes in How to Migrate From cPanel to DirectAdmin Cleanly are useful for avoiding DNS and hostname drift.

Check the DirectAdmin license state from the shell

On the VPS as root, use the DirectAdmin license check tool if it is installed. Most systems place it under /usr/local/directadmin/scripts/.

/usr/local/directadmin/scripts/getLicense.sh

On a valid system, the command returns license status, the bound IP, and any renewal or expiration details. If the script is missing, your install may be incomplete or the panel path differs. In that case, confirm the package layout before you try anything else.

ls -l /usr/local/directadmin/scripts/

If the license script reports a mismatch, do not keep restarting the panel. Fix the account or IP assignment first, then recheck.

Refresh the license on Ubuntu and Debian

On the VPS as root, update the system packages first. A stale CA bundle or outdated network tool can interfere with license validation.

apt update
apt -y upgrade
apt -y install curl ca-certificates

Then rerun the DirectAdmin license check.

/usr/local/directadmin/scripts/getLicense.sh

If you need to restart panel services after a renewal, use the relevant service names and check status immediately after.

systemctl restart directadmin
systemctl status directadmin --no-pager

For Debian-family systems, also confirm that the web service serving the login page is healthy.

systemctl status nginx --no-pager
systemctl status apache2 --no-pager

Use the service that exists on your server. DirectAdmin deployments differ. Do not assume both are present.

Refresh the license on AlmaLinux and Rocky Linux

On the VPS as root, update the server and install the basic network tools used in verification.

dnf -y update
dnf -y install curl ca-certificates

Run the license check again.

/usr/local/directadmin/scripts/getLicense.sh

If DirectAdmin uses Apache or nginx on your build, restart only the active service.

systemctl restart directadmin
systemctl status directadmin --no-pager
systemctl status nginx --no-pager
systemctl status httpd --no-pager

On RHEL-compatible systems, SELinux can also affect panel ports and web access. Check the mode before you chase a license issue that is really a policy issue.

getenforce

If SELinux is enforcing and the panel page is not reachable, inspect audit logs before you disable anything.

ausearch -m AVC -ts recent

Test the license through the web panel

On your local computer, open the DirectAdmin login URL using the server IP or hostname on port 2222. Replace the address with your own.

https://SERVER_IP:2222

Example: https://203.0.113.10:2222. A valid license should allow the login page to load cleanly, even if your browser warns about the certificate on a brand-new install.

If the page does not load, test the port from the VPS and from your laptop. That tells you whether the issue is local firewall, provider firewall, or service failure.

ss -tulpn | grep 2222
curl -kI https://127.0.0.1:2222

Healthy output should show DirectAdmin listening on 2222 and an HTTP response code from the local curl test.

Open the firewall safely before closing old access

On the VPS as root, ensure the panel port is open before you lock yourself out. Keep your current SSH session open while you test a second one.

Ubuntu and Debian with UFW

ufw allow 22/tcp
ufw allow 2222/tcp
ufw status verbose

That sequence keeps SSH open and adds the DirectAdmin port. You should see both rules listed.

AlmaLinux and Rocky Linux with firewalld

firewall-cmd --permanent --add-service=ssh
firewall-cmd --permanent --add-port=2222/tcp
firewall-cmd --reload
firewall-cmd --list-all

On these systems, the reload should preserve SSH while allowing the panel port. If you use a provider firewall too, add the same rule there before you test again.

Confirm the login works after renewal

On your local computer, open a second terminal and SSH into the VPS again. This is your safety check. Do not close the first session until the second one succeeds.

ssh root@SERVER_IP

When the second session works, sign in to DirectAdmin in the browser and confirm the dashboard loads without a license warning. Then check the panel logs for recent entries.

tail -n 50 /usr/local/directadmin/data/admin/logs/directadmin.log

Use this after any failed renewal. A clean license refresh normally leaves only routine entries.

Schedule a simple license health check

Many hosting teams add a small cron check so they know about panel trouble before a customer does. A basic script can run daily and record the result.

On the VPS as root, create a log file path and a cron entry.

mkdir -p /var/log/directadmin
crontab -e

Add this line in the editor, then save and exit:

15 2 * * * /usr/local/directadmin/scripts/getLicense.sh >> /var/log/directadmin/license-check.log 2>&1

After saving, confirm the cron entry exists.

crontab -l

For many small agencies, that one line is enough to catch renewal failures during off-hours.

Common failures and the exact next command

License says IP mismatch: run curl -4 ifconfig.me and compare it to the licensed IP. If they differ, update the license record with your provider, then rerun /usr/local/directadmin/scripts/getLicense.sh.

Panel port is closed: on Ubuntu or Debian, run ufw status verbose. On AlmaLinux or Rocky Linux, run firewall-cmd --list-all. Add the missing 2222 rule and retest.

DirectAdmin service is down: run systemctl status directadmin --no-pager and then journalctl -u directadmin -n 50 --no-pager. The logs usually show whether the issue is license, certificate, or file permission related.

Browser shows a certificate warning: that is normal on a fresh panel until you install a valid TLS certificate for the hostname. If you are also handling email deliverability and hostname alignment, the setup notes in DMARC, SPF, and DKIM for Better Email Deliverability help keep the rest of the domain stack consistent.

Final verification checklist

Before you call the renewal done, confirm all of the following from the server and from your laptop.

  • On the VPS: /usr/local/directadmin/scripts/getLicense.sh returns a valid license state.
  • On the VPS: systemctl status directadmin --no-pager shows the service active.
  • On the VPS: ss -tulpn | grep 2222 shows the panel listening.
  • On your local computer: curl -kI https://SERVER_IP:2222 returns a response.
  • In the browser: the DirectAdmin login page loads and accepts your admin login.

For teams managing multiple panels, a clean renewal process matters as much as the server itself. If you want a provider that treats migrations and support as operational work rather than a ticket afterthought, consider a managed VPS hosting plan or compare panel options with Set Up DirectAdmin on a Fresh VPS in 2026.

If you are renewing DirectAdmin for a customer site, a staging server, or a reseller environment, Hostperl can help you keep the panel reachable while you sort out licensing, DNS, and service checks. Our Hostperl VPS plans are a practical fit for panel work, and our support team can help during migrations or IP changes.

For agencies moving between control panels, that support matters more than the logo on the login screen.

FAQ

Do I need to reinstall DirectAdmin to fix a license issue?
No. In most cases you only need to confirm the IP, check the license state, and restart the panel service if the renewal succeeds.

Why does the login page still warn after renewal?
The panel license may be valid while the TLS certificate is still self-signed. Renew the certificate separately if needed.

Can I renew after an IP change?
Yes, but you must update the licensed IP first. Run curl -4 ifconfig.me and compare it before making changes.

What if I use a provider firewall?
Add port 2222 there as well. A local UFW or firewalld rule does not help if the upstream firewall blocks the traffic.

Should I disable root SSH after this?
Only after you have a second verified admin login and a working backup plan. Do not close the last path into the server.