Ajenti is an open-source web-based system management control panel for managing remote Linux system administration tasks from the web browser much similar to the Webmin system administration tool.
Ajenti is a much powerful and lightweight tool, that provides a fast and responsive web interface for managing small server set-ups and is also best suitable for VPS and Dedicated servers.
[ You might also like: Best Control Panels to Manage Linux Servers ]
It has been built with many pre-made plugins for configuring and monitoring server software and services such as Apache, Cron, File System, Firewall, MySQL, Nginx, Munin, Samba, FTP, Squid, and many other tools like File Manager, Code Editor for developers and Terminal access.
Requirements
- Debian 9 or later
- Ubuntu Bionic or later
- RHEL 8 or later
In this article, you will learn how to install Ajenti Control Panel on a fresh Linux system to manage a variety of Linux server management tasks from a web browser.
Installing Ajenti Control Panel in Linux
To install Ajenti, first, you need to update and upgrade your system software to the latest version as shown.
$ sudo apt update && sudo apt upgrade -y [On Ubuntu & Debian] $ sudo dnf update && sudo dnf upgrade -y [On RHEL]
Once system updates are completed, reboot the system before starting the installation of Ajenti.
$ sudo systemctl reboot
After reboot, download the Ajenti installation script using the following curl command, which will install Ajenti along with all the needed dependencies as shown.
Install Ajenti on Debian/Ubuntu
$ curl https://raw.githubusercontent.com/ajenti/ajenti/master/scripts/install.sh | sudo bash -s -
Install Ajenti on RHEL/Rocky & AlmaLinux
On RHEL-based distributions, you need to enable the EPEL repository to install needed Ajenti dependencies as shown.
$ sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm $ dnf install -y gcc python3-devel python3-pip python3-pillow python3-augeas python3-dbus chrony openssl-devel redhat-lsb-core
After installing all the required dependencies, now install Ajenti using the installation script as shown.
$ curl https://raw.githubusercontent.com/ajenti/ajenti/master/scripts/install.sh | sudo bash -s -


After Ajenti installation finishes, open the “8000” port on the firewall/router for remote access of the web interface.
$ sudo ufw allow 8000 [On Ubuntu & Debian] $ sudo firewall-cmd --permanent --zone=public --add-port=8000/tcp [On RHEL] $ sudo firewall-cmd --reload
To access the Ajenti control panel web interface, open a web browser and type the IP of the server where we’ve installed Ajenti, and enter credentials of your system: username “root” and root password.
https://localhost:8000 OR https://ip-address:8000



The Ajenti service can be started, stopped, restarted using the following commands.
$ sudo systemctl stop ajenti $ sudo systemctl start ajenti $ sudo systemctl restart ajenti $ sudo systemctl status ajenti
Uninstall Ajenti Control Panel in Linux
Ajenti is a group of Python modules installed with pip, issued with a systemd script. So it’s essential to delete the systemd script, then the Python libraries, and the configurations files.
$ sudo systemctl stop ajenti.service $ sudo systemctl disable ajenti.service $ sudo systemctl daemon-reload $ sudo rm -f /lib/systemd/system/ajenti.service
Then simply remove all Python modules:
$ sudo pip3 uninstall -y aj ajenti-panel ajenti.plugin.ace ajenti.plugin.auth-users ajenti.plugin.core ajenti.plugin.dashboard ajenti.plugin.filesystem ajenti.plugin.passwd ajenti.plugin.plugins ajenti.plugin.session-list ajenti.plugin.settings
If you don’t need configuration files, just delete the directory /etc/ajenti/:
$ sudo rm -rf /etc/ajenti/

For more information visit the Ajenti homepage.
First off, thanks for the awesome posts! I read your other post where you talked about Ajenti, so I am trying it out. I wanted to add that with CentOS 6.5, I had to add my iptables rules up toward the top of the config file, not at the bottom. When I had them at the bottom, it was still blocking the port for some reason. I assume that one of the above rules is set to block all unconfigured traffic, but I am still fairly new at Linux firewall rules in general. Anyway, thanks for the great info! Looking forward to reading more of your posts!
Sean
Can I install ajenti-v on Centos 6 ?
On ‘yum install ajenti’ under Fedora 17 I am getting this error:
http://repo.ajenti.org/ng/centos/17/x86_64/repodata/repomd.xml: [Errno 14] curl#22 – “The requested URL returned error: 404 Not Found”
Please help.
/shawn
I have just initiated a new server – Ubuntu 12.04/Nginx 1.4.5 to test Ajenti on. I don’t understand probably the most fundamental part of how to make the vhosts work. The developer Eugene posts this – http://support.ajenti.org/topic/349870-ajenti-behind-nginx/
I’m used to having a vhost like /etc/nginx/sites-enabled/domain.com…. with the files in /home/user/public_html/domain.com/public/
So basically I don’t get how domain.com fetches the /ajenti files without some modification to his example.
Any clarification on this would be greatly appreciated.
thx
stu
Oh duh. A clean install without all the usual firewalls I put in, and it works.
Hi, thank you for all your tutorials, i have a question; i can’t access to login screen , i did all the insctruction about the 8000 port.
Thanks
What error you getting on the screen, while accessing on port 8000. Did you opened this port on firewall?
How do I access the webmail ?
I think it’s the next option that will be added from @Ajenti Team, i agree that’s a little bit late to think about it or sad to forget about it.
But i’m just like you waiting for the Webmail Management.
Cheers
Jenz
Yep, I’m getting the same error as Kumar, above.
[[email protected] ~]# service iptables restart
iptables: Applying firewall rules: iptables-restore: line 1 failed
[FAILED]
vi edit the iptables fails…
Centos x64 6.4 – Digital Ocean.
You can manually add at command line…
But you still can’t access ip and port in the browser.
To fix such error, you need to replace your iptables rules with below lines.
And restart iptables again….
Hi
I tried to follow your commands but having these problem using cent os 6 32 bit
== After adding those two lines when i restart iptables i get error on line 1 .
I am newbie in servers any help would be appreciated
What error could be you post here.
iptables: Applying firewall rules: iptables-restore: line 1 failed
Get this error, cant install Ajenti in Ubuntu 12.04
The following packages have unmet dependencies:
ajenti : Depends: python-requests (>= 0.12.0) but 0.8.2-1 is to be installed
E: Unable to correct problems, you have held broken packages.
Not compatible, your system needs a upgrade.
I cant login ajenti when i tried to login from another laptop .now the login is blocked !!! how to solve this or uninstall agenti !!
Have you opened port on the Firewall? what kind of blocking error you getting?. Use “yum remove ajenti” to un-install.