aaPanel is a free web hosting control panel that lets you deploy websites with Nginx or Apache, MySQL or MariaDB, and PHP – all managed through a simple web interface. This server comes with aaPanel 7.x pre-installed. The software stack (LAMP/LNMP) is not pre-installed – you choose and install it on first login.
Your server’s IP address and root password are shown on the Server Details page in your client panel. aaPanel is available immediately after your server is created. Open https://your.server.ip:7800/login in a browser to verify it works.
aaPanel login:
adminaaPanel only works over HTTPS. Your browser will show a security warning about the self-signed certificate – click Advanced > Proceed (or Accept the Risk in Firefox). This is expected and safe.
If you placed the server behind a VyOS router on a private network, set up port forwarding for ports 22 (SSH), 80 (HTTP), 443 (HTTPS) and 7800 (aaPanel). aaPanel hosts websites that must be reachable from the internet.
On first login, aaPanel will prompt you to choose a web stack:
| Stack | Components |
|---|---|
| LNMP (recommended) | Nginx + MySQL + PHP |
| LAMP | Apache + MySQL + PHP |
Select your preferred stack and versions, then click One-Click to install. Installation takes 5-15 minutes depending on your server resources.
You can also install components individually from the App Store tab.
After installing a web stack, click Website → Add site and enter your domain name. aaPanel will create the web directory and configuration automatically.
Before adding a domain, point it to your server by creating A records at your domain registrar:
| Type | Name | Value |
|---|---|---|
| A | @ | your.server.ip |
| A | www | your.server.ip |
DNS changes usually take a few minutes, but can take up to 24 hours. You can check the status at dnschecker.org.
aaPanel has built-in Let’s Encrypt support. To enable a free SSL certificate:
The certificate will be installed and renewed automatically.
Your server comes with Fail2Ban pre-configured to protect SSH from brute-force attacks.
| Rule | Max Attempts | Ban Duration |
|---|---|---|
| SSH | 5 failed logins | 10 minutes |
Useful commands:
# Check banned IPs
fail2ban-client status sshd
# Unban an IP
fail2ban-client set sshd unbanip 1.2.3.4
aaPanel also has its own brute-force protection. Configure it in Panel Settings. If you accidentally lock yourself out, connect via VNC console in your client panel.
aaPanel runs as a systemd service. Services installed through aaPanel (Nginx, Apache, MySQL, PHP-FPM) are best managed from the panel, but systemd works too:
# Restart aaPanel itself
/etc/init.d/bt restart
# Check aaPanel status
/etc/init.d/bt status
# Web stack (after installation)
systemctl status nginx
systemctl restart mysql
aaPanel includes a one-click installer for popular applications. Go to App Store to install WordPress, Laravel, Node.js, Java, Python and other frameworks without using the command line.
aaPanel admin credentials are stored in /root/.aapanel_credentials.
| Component | Details |
|---|---|
| Ubuntu | 24.04 LTS |
| aaPanel | 7.x (English edition) |
| Security | Fail2Ban, UFW firewall |
| Problem | Solution |
|---|---|
| Can’t access aaPanel | Make sure you use https:// and port 7800 with /login path. Accept the self-signed certificate warning |
| Panel loading slowly on first access | aaPanel initialization takes up to 1 minute after first boot. Wait and refresh the page |
| Forgot panel password | SSH in and run: cd /www/server/panel && python3 tools.py panel "newpass". Or check /root/.aapanel_credentials |
| LAMP/LNMP installation failed | Ensure your server has at least 1 GB RAM and 10 GB disk. Retry installation from the App Store tab |
| Domain not resolving | Check that your domain’s A record points to the server IP. Use dnschecker.org to verify |
| Blocked by Fail2Ban | Use VNC console in your client panel to unban your IP: fail2ban-client set sshd unbanip 1.2.3.4 |
| Forgot root password | Use VNC console in your client panel to reset it |