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.
Ravi, great tutorial. Thank you.
But, unfortunately during install i got this error: [Errno -1] Package does not match intended download
If someone encountered this error as well you should execute the following command as noted in http://bit.ly/1rqdVOL:
yum clean metadata
After that, it works.
hi
i was install ajenti on centos 6.5 minimal and the part of my iptables is:
-A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 8000 -j ACCEPT
-A INPUT -m state –state NEW -m udp -p udp –dport 8000 -j ACCEPT
-A INPUT -j REJECT –reject-with icmp-host-prohibited
-A FORWARD -j REJECT –reject-with icmp-host-prohibited
COMMIT
but when i try to access web with port 8000 i dont have this
please help me for solve this problem
my 8000 port is open and in listening.
thanks
Arash, is the port 8000 opening from localhost? have your tried accessing it from localhost?
hi,my dear friend
thanks a lot
i was install on centos 6.5 minimal with command prompt
and i have ping my ip from other network and i add rull for port 8000 in ip table
but i dont accesss to ajenti by web .but i install this software on centos desktop and this work correctly
for example:https://192.168.200.90:8000
Are you able to access using http://localhost:8000?
Hi Guys,
I have very bad experience with Ajenti, I will recommend you not to use this product, I installed it on debian wheezy VPS server. After one week, it start broadcasting data from server. I got to know about this after three days when my VPS provider sent me a mail that you VPS has consumed data bandwidth of 180 GB in just three days, youneed to check the server.
When I check this then I uninstalled this and data broadcasting stop after it. For security reason I have to configure whole server from start after reset up vps from vps provider.
So again, I will not suggest anybody to use this.
Regards
Amit Bondwal
Hi greetings of the day
am trying to install ajenti in ubuntu usinng aws.amazon server..
i done with all settings and i open 8000 port number in firewall but also am unable to get web page on :8000 getting error as Webpage is not available
Thanks