Skip to main content

Monitor your server through a web based dashboard – ESM

Monitoring a server is obviously an important duty to any sys-admin or more generally, anyone having its own server (Selfhosted or not). Several tools exists to do it, like the popular “top” command (for processes, CPU usage, etc..) or “free” command to know the available ram, or “iftop” for bandwidth usage, etc… Most probably you will prefer to have all these info consolidated into a simple graphs accessible through a web interface, similar to Monitorix, Munin that I’ve already detailed in previous postss, or more like a realtime data dashboard similar to Scout Realtime.

In this latest category, I’ve found a new lightweight and simple dashboard for Linux servers called eZ Server Monitoring (eSM), with 2 versions (Web based and command line based)


ezserver monitor dashboard screenshot

Written in PHP and released under GPL licence, eSM displays on a single Web page information such as the operating system, the number of logged on users and system load, CPU, RAM, disk space available, bandwidth usage and especially the port monitoring services such as FTP, SMTP, Web, etc …


Interested to use it? The installation is very straightforward:


1) Create a dedicated folder in your /var/www (let’s call it esm)

In root, simply run:

2) Download the latest archive (V2.0 as of today) and unzip it

If you don’t have unzip command, simply install the package:

3) Clean a bit the directory of have all the files at the root of the folder

Well and that’s all, you can now directly point to HTTP://YourIP/esm to get access to the dashboard.


Optional configuration

As written in the documentation,  eZ Server Monitoring Web works out of the box but further modification to the code can be made to better suit your needs by simply editing the file esm.config.json.

Here are few examples:

1) Modify the websites to ping

Simply find and modify the lines:

2) Service monitoring

If you want to monitor a service running on a special port (FTP, SSH, Deluge torrent, etc…), simply find and modify:


Virtualhost configuration

If you wish to access to eSM Web interface through a dedicated sub domain or domain name like esm.domain.tld, you can create a virtualhost to do so.

You will need to:

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

2) Have SSL certificate ready. If not you can read this tutorial. (Optional, but why not!)

3) Create your virtualhost as following:

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

and paste/adapt the following content:

Adapt the content (Servername, webmaster, SSL certificate and directory, …).

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

You should now have access in HTTPS to your eSM using esm.domain.tld URL.

And voila!!

2 thoughts on “Monitor your server through a web based dashboard – ESM

Leave a Reply

Your email address will not be published. Required fields are marked *