Usermin is a web-based interface mainly for webmail designed for non-root users to perform routine tasks including, reading mail, changing passwords, setting up databases and a web-basedSSH terminal. It is a stripped-down version of Webmin intended for regular users without always system administrators. It provides a rich set of features.

Some of them are listed below:

  • Create and manage the database.
  • Schedule emails.
  • Scheduling cron jobs.
  • Change files and folders permissions.
  • Secure web directories.

In this post, we will show you how to install Usermin on Ubuntu 20.04 server.

Prerequisites

  • A server running Ubuntu 20.04.
  • A root password is configured on the server.

Getting Started

Before starting, it is recommended to update the APT cache to the latest version. You can update it by running the following command:

apt-get update -y

Once you are done, you will need to install other dependencies to your system.

Run the following command to install all of them:

apt-get install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl -y

Once all the dependencies are installed, you can proceed to the next step.

Install Usermin

By default, the Usermin package is not included in the Ubuntu default repository. So you will need to download the Usermin .deb package from the Usermins download page.

You can download it with the following command:

wget https://sourceforge.net/projects/webadmin/files/usermin/1.823/usermin_1.823_all.deb

Once the package is downloaded, install the downloaded package with the following command:

dpkg --install usermin_1.823_all.deb

Once the Usermin has been installed successfully, you should get the following output:

Selecting previously unselected package usermin.
(Reading database ... 85599 files and directories currently installed.)
Preparing to unpack usermin_1.823_all.deb ...
Unpacking usermin (1.823) ...
Setting up usermin (1.823) ...
Usermin install complete. You can now login to https://ubuntu:20000/
as any user on the system.
Processing triggers for systemd (245.4-4ubuntu3) ...

Start Usermin Service

After installing Usermin, you will need to start the Usermin service and enable it to start at system reboot.

You can do it with the following command:

systemctl start usermin

systemctl enable usermin

You can also check the status of Usermin with the following command:

systemctl status usermin

You should get the following output:

? usermin.service - LSB: web-based account administration interface for Unix systems
     Loaded: loaded (/etc/init.d/usermin; generated)
     Active: active (running) since Fri 2021-07-23 11:59:02 UTC; 7s ago
       Docs: man:systemd-sysv-generator(8)
    Process: 2759 ExecStart=/etc/init.d/usermin start (code=exited, status=0/SUCCESS)
      Tasks: 1 (limit: 4691)
     Memory: 19.9M
     CGroup: /system.slice/usermin.service
             ??2763 /usr/bin/perl /usr/share/usermin/miniserv.pl /etc/usermin/miniserv.conf

Jul 23 11:58:59 ubuntu systemd[1]: Starting LSB: web-based account administration interface for Unix systems...
Jul 23 11:58:59 ubuntu perl[2760]: pam_unix(usermin:auth): authentication failure; logname= uid=0 euid=0 tty= ruser= rhost=  user=root
Jul 23 11:59:02 ubuntu systemd[1]: Started LSB: web-based account administration interface for Unix systems.

Once you are finished, you can proceed to the next step.

Configure Firewall

If you have a UFW firewall installed in your system. You will also need to allow port 20000 through the firewall. You can allow the port 20000 using the following command:

ufw allow 20000

Next, reload the UFW firewall to apply the changes:

ufw reload

Once you are finished with the firewall configuration. You can proceed to the next step.

Access Usermin Web UI

By default, Usermin listens on port 20000. You can access it using the URL https://your-server-ip:20000. You will be redirected to the following page:

<img alt="Usermin login" data-ezsrc="https://kirelos.com/wp-content/uploads/2021/07/echo/p1.png6101289e3113f.jpg" ezimgfmt="rs rscb5 src ng ngcb5" height="408" loading="lazy" src="data:image/svg xml,” width=”750″>

Provide your root username, password and click on the Sign in button. You should see the Usermin web interface on the following page:

<img alt="Usermin account settings" data-ezsrc="https://kirelos.com/wp-content/uploads/2021/07/echo/p2.png6101289e86206.jpg" ezimgfmt="rs rscb5 src ng ngcb5" height="387" loading="lazy" src="data:image/svg xml,” width=”750″>

File Manager

<img alt="File manager" data-ezsrc="https://kirelos.com/wp-content/uploads/2021/07/echo/p3.png6101289f16f43.jpg" ezimgfmt="rs rscb5 src ng ngcb5" height="387" loading="lazy" src="data:image/svg xml,” width=”750″>Advertisement

Scheduling Cron Jobs

<img alt="Cronjobs" data-ezsrc="https://kirelos.com/wp-content/uploads/2021/07/echo/p4.png6101289f955fc.jpg" ezimgfmt="rs rscb5 src ng ngcb5" height="388" loading="lazy" src="data:image/svg xml,” width=”750″>

Upload and Download

<img alt="Upload" data-ezsrc="https://kirelos.com/wp-content/uploads/2021/07/echo/p5.png610128a01acd1.jpg" ezimgfmt="rs rscb5 src ng ngcb5" height="336" loading="lazy" src="data:image/svg xml,” width=”750″>

MySQL Database Server

<img alt="MySQL databases" data-ezsrc="https://kirelos.com/wp-content/uploads/2021/07/echo/p6.png610128a08c672.jpg" ezimgfmt="rs rscb5 src ng ngcb5" height="363" loading="lazy" src="data:image/svg xml,” width=”750″>

Command-line Interface

<img alt="Usermin command line terminal" data-ezsrc="https://kirelos.com/wp-content/uploads/2021/07/echo/p7.png610128a117036.jpg" ezimgfmt="rs rscb5 src ng ngcb5" height="349" loading="lazy" src="data:image/svg xml,” width=”750″>

Conclusion

Congratulations! you have successfully installed Usermin on Ubuntu 20.04 server. You can now manage your Ubuntu server from a remote location through the web browser.Advertisement

<img alt="Hitesh Jethva" data-ezsrc="https://kirelos.com/wp-content/uploads/2021/07/echo/hitesh-80.jpg610128a158758.jpg" ezimgfmt="rs rscb5 src ng ngcb5" src="data:image/svg xml,”>

About Hitesh Jethva

Over 8 years of experience as a Linux system administrator. My skills include a depth knowledge of Redhat/Centos, Ubuntu Nginx and Apache, Mysql, Subversion, Linux, Ubuntu, web hosting, web server, Squid proxy, NFS, FTP, DNS, Samba, LDAP, OpenVPN, Haproxy, Amazon web services, WHMCS, OpenStack Cloud, Postfix Mail Server, Security etc.