Ajenti is a free to use and open source Server management and configuration Panel written in Python, JavaScript, and AngularJS. It provides a web dashboard for administration as opposed to command line management. With this tool you can manage websites, DNS, Cron, Firewall, Files, Logs, Mail hosting services e.t.c. This guide will discuss the installation of Ajenti Control Panel on Ubuntu 22.04|20.04.
The Ajenti Project consists of Ajenti Core and set of stock plugins forming the Ajenti Panel.
- Ajenti Core: Web interface development framework which includes a web server, IoC container, a simplistic web framework and set of core components aiding in client-server communications.
- Ajenti Panel: Consists of plugins developed for the Ajenti Core and a startup script, together providing a server administration panel experience.
Install Ajenti Control Panel on Ubuntu 22.04|20.04
The Ajenti control panel can be installed on Ubuntu 18.04+ Linux system. The good thing about this installation is that it is purely automated.
Update System
Make sure you’re working on a fresh installation of Ubuntu server. A lot of dependencies will be installed automatically.
Update and upgrade your Ubuntu machine.
sudo apt update && sudo apt dist-upgrade -y
If the upgrade is completed reboot the system before initiating installation of Ajenti.
[ -e /var/run/reboot-required ] && sudo reboot
Install Ajenti Control Panel
There is a script provided for the installation of Ajenti control panel. First download the script with curl.
curl -o ajenti_install.sh https://raw.githubusercontent.com/ajenti/ajenti/master/scripts/install.sh
Run the installer script with sudo command.
sudo bash ./ajenti_install.sh
The installation of Ajenti could take some time depending on your internet connection. once it finishes you should get output like below.
....
:: Installing initscript
/usr/bin/systemctl
Created symlink /etc/systemd/system/multi-user.target.wants/ajenti.service → /lib/systemd/system/ajenti.service.
:: Complete
Ajenti will be listening at HTTP port 8000
Log in with your root password or another OS user
Confirm there is a service listening on 8000.
# ss -tunelp | grep 8000
tcp LISTEN 0 10 0.0.0.0:8000 0.0.0.0:* users:(("/usr/local/bin/",pid=21271,fd=9),("/usr/bin/python",pid=21264,fd=9)) ino:31300 sk:5 <->
Open Ajenti Web Console on browser
Open your server IP address or hostname on port 8000 from your browser – https://ServerIP_Hostname:8000
The Logins are your root password or another OS user. Yiu can reset root password using:
sudo passwd root
Additional plugins can be installed under GENERAL > Plugins
Same for SYSTEM > Packages > APT|PIP
Systemd service managing the Panel is called ajenti.
$ systemctl status ajenti
● ajenti.service - Ajenti panel
Loaded: loaded (/lib/systemd/system/ajenti.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2023-08-30 01:20:11 UTC; 3min 52s ago
Process: 3112 ExecStart=/usr/bin/python3 /usr/local/bin/ajenti-panel -d (code=exited, status=0/SUCCESS)
Process: 3114 ExecStartPost=/bin/sleep 5 (code=exited, status=0/SUCCESS)
Main PID: 3115 (python3)
Tasks: 3 (limit: 4523)
Memory: 444.4M
CPU: 11.169s
CGroup: /system.slice/ajenti.service
├─3115 /usr/bin/python3 /usr/local/bin/ajenti-panel -d
├─3121 "/usr/local/bin/ajenti-panel worker [restricted session]"
└─3150 "/usr/local/bin/ajenti-panel worker [session 1]" ""
Aug 30 01:20:06 jammy systemd[1]: Starting Ajenti panel...
Aug 30 01:20:11 jammy systemd[1]: Started Ajenti panel.
Aug 30 01:23:33 jammy su[3146]: (to root) nobody on pts/1
Aug 30 01:23:33 jammy su[3146]: pam_unix(su-l:session): session opened for user root(uid=0) by (uid=65534)
Aug 30 01:23:33 jammy su[3146]: pam_unix(su-l:session): session closed for user root
Aug 30 01:23:33 jammy ajenti[3150]: root has logged in from 197.248.146.95
This can be restarted anytime as required.
sudo systemctl restart ajenti
Enjoy using Ajenti to manage your Ubuntu Server from a web console.
Recommended Linux Books to read:
- Best Linux Books for Beginners & Experts
- Best Linux Kernel Programming Books
- Best Linux Bash Scripting Books
- Top RHCSA / RHCE Certification Study Books
- Best Top Rated CompTIA A+ Certification Books
- Best LPIC-1 and LPIC-2 certification study books