Ajenti, web control panel for your server

When we think about a web panel to control a server, we usually think about Webmin, cPanel or Plesk. But many more exists.

Tecmint have wrote an article last year to briefly present 18 of these. And this is where I’ve discovered Ajenti!

Ajenti is an open source web control panel that provides through a responsive and elegant web interface, several features to manage your server.

Ajenti screenshot main page dashboard

It comes with several plugins (built-in) to control several important services of your server such as Apache oor Nginx, MySQL, FTP, but also Cron, Samba, Squid, firewall, etc… and many more.The installation is very simple (Thanks to their script) and adapted for your own distribution.Here is how to install it on Debian. (If you wish to install it on another distribution, I suggest you to check with Download page and their support page.

Ajenti - Services list



Lucky for us, everything is available on their repository and their installation script will do everything in fact!

1) Run the script

So simply download and run their Debian installation script (Any where you want, in your /home/user for example).

In root (or with sudo), run:

cd /home/user
wget -O- https://raw.github.com/Eugeny/ajenti/master/scripts/install-debian.sh | sh

2) Restart the instance

Still in root:

service ajenti restart

3) Access the admin page

Point your web browser to https://YourIP:8000

The default admin user/password is root///admin

You can now customized your dashboard with additional widgets.

Ajenti firewall control server

How about now to set up a sub-domain instead of using the port 8000? Here is how to do it.


Virtualhost configuration

What you will need:

1) Create a A redirection in your DNS server/registrar with aj.domain.tld to your IP

2) Install mod proxy html

You will need to install the following packages in root:

apt-get install libapache2-mod-proxy-html

3) Have SSL certificate ready. If not you can read this tutorial. (Optional)

4) Create your virtualhost as following:

In /etc/apache2/sites-enabled/, create a file called ajenti (In root):

nano /etc/apache2/sites-enabled/ajenti

and paste the following content:

<VirtualHost *:80>
        ServerAdmin webmaster@domain.tld
        ServerName aj.domain.tld
        Redirect / https://aj.domain.tld

<IfModule mod_ssl.c>
<VirtualHost *:443>
        SSLEngine on
        SSLCertificateFile /etc/ssl/certs/myblog.pem
        SSLCertificateKeyFile /etc/ssl/private/myblog.key

        ServerAdmin webmaster@domain.tld
        ServerName aj.domain.tld

        ProxyRequests Off
        Order deny,allow
        Allow from all
        ProxyPass / https://localhost:8000
        ProxyPassReverse / https://localhost:8000


Adapt the content (Servername, webmaster email, SSL certificate,…)

When done, save the file (CTRL+X then Yes) and reload apache: (In root)

/etc/init.d/apache2 reload

If no issue (If there is, let me know), you should be able to access to your Ajenti instance through aj.domain.tld that will redirect it to HTTPS connection and 8000 port.


Loves to discover web-based apps to install on his own server@home and write articles about it


Add a comment