Step-by-Step Guide: Installing Ajenti Control Panel on Ubuntu 20.04

If you’re managing a Linux server and are not fully comfortable with the command line, a control panel can greatly assist by providing a web-based interface for server management. Ajenti is a free, open-source, and lightweight control panel that simplifies Linux server management. Written in Python, it offers a responsive graphical interface and includes numerous plugins for managing emails, websites, domains, and more.

This guide will walk you through installing the Ajenti Control Panel on an Ubuntu 20.04 server.

Prerequisites

  • A server running Ubuntu 20.04.
  • Root password configured on your server.

Initial Setup

Start by updating your system to the latest version. Run the following commands:

apt-get update -y
apt-get upgrade -y

After the updates are complete, reboot your system to apply the changes.

Installing Ajenti Control Panel

Since Ajenti is not included in the default Ubuntu repository, you must download its installation script from the official Ajenti website. Use this command:

curl -O https://raw.githubusercontent.com/ajenti/ajenti/master/scripts/install.sh

After downloading the script, initiate the installation with:

bash install.sh

Upon successful installation, you should see output similar to:

:: 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

Managing the Ajenti Service

You can manage the Ajenti service with the following systemctl commands:

systemctl start ajenti
systemctl stop ajenti

To verify the service status, use:

systemctl status ajenti

The expected output resembles:

? ajenti.service - Ajenti panel
     Loaded: loaded (/lib/systemd/system/ajenti.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-05-15 10:35:23 UTC; 32s ago
    Process: 8767 ExecStart=/usr/bin/python3 /usr/local/bin/ajenti-panel -d (code=exited, status=0/SUCCESS)
    Process: 8779 ExecStartPost=/bin/sleep 5 (code=exited, status=0/SUCCESS)
   Main PID: 8780 (python3)
      Tasks: 3 (limit: 2353)
     Memory: 44.9M
     CGroup: /system.slice/ajenti.service
             ??8780 /usr/bin/python3 /usr/local/bin/ajenti-panel -d
             ??8787 /usr/local/bin/ajenti-panel worker [restricted session]

May 15 10:35:18 ubuntu2004 systemd[1]: Starting Ajenti panel...
May 15 10:35:23 ubuntu2004 systemd[1]: Started Ajenti panel.

Ajenti operates on port 8000 by default, verified with:

ss -tunelp | grep 8000

Expected result looks like:

tcp   LISTEN 0      10                              0.0.0.0:8000        0.0.0.0:*                                                                                users:(("/usr/local/bin/",pid=8787,fd=9),("python3",pid=8780,fd=9)) ino:30581 sk:8 <->

Accessing the Ajenti Web Interface

To access Ajenti, open a web browser and navigate to http://your-server-ip:8000. You’ll be directed to the login page:

Ajenti Login

Log in with your root username and password to access the Ajenti dashboard:

Ajenti Dashboard

Exploring Ajenti Features

Under Plugins, view and install various plugins:

Ajenti Plugins

In File Manager, manage your system’s files and directories:

Ajenti File Manager

Under Services, control system services:

Services

Access the Terminal to run commands directly on your Linux system:

Terminal

Via Packages => APT, manage system packages:

Packages

Conclusion

You’ve successfully installed the Ajenti Control Panel on an Ubuntu 20.04 server. Enjoy managing your Linux server effortlessly through a web browser.

Frequently Asked Questions (FAQ)

  • What is Ajenti? Ajenti is a free, open-source control panel for managing Linux servers through a web-based interface.
  • What are the system requirements for Ajenti? You need a server running Ubuntu 20.04 and a configured root password.
  • What port does Ajenti use? By default, Ajenti listens on HTTP port 8000.
  • Can Ajenti manage system plugins? Yes, it offers a variety of plugins to enhance functionality.
  • How do I start or stop the Ajenti service? Use the commands `systemctl start ajenti` to start and `systemctl stop ajenti` to stop the service.