Manage Your Linux Server With Webmin
For people who are new to using Linux, and especially the command line, running a server can seem like quite a complicated task. This is especially so when compared to graphical user interfaces like Windows, which can make it easier to find and manage functions of the server. Control panels are created to make the management of servers much simpler, and in most cases allow you to configure your server from a web browser.
What is Webmin?
Webmin is one such control panel and can be installed on Debian, Ubuntu, CentOS, Red Hat and others. There is also a version for Microsoft Windows. It can manage your basic operating system needs such as upgrading packages or be used to configure your web, email, DNS, VPN and database servers, among other uses.
Due to the way that Webmin takes control of managing all aspects of your server, it’s recommended that you install it onto a fresh install of the operating system on your server. If you install on a server that already has services configured you may inadvertently break what you have already done, or it may stop Webmin from working properly.
Installing Webmin – Debian/Ubuntu
Installation is fairly straightforward as packages are supplied for your systems to do this for you. To start with we’ll set the hostname of the server to match the domain name you’ll be pointing to the server.
sudo hostnamectl set-hostname server.example.com
To install on Debian and Ubuntu you will first need to install the necessary dependencies, some of which may already be installed:
sudo apt-get install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl apt-show-versions python
Download the installation package, which at the time of writing was for version 1.881:
Now, install the package with the following command:
sudo dpkg –install webmin_1.881_all.deb
Installing Webmin – CentOS/Red Hat
For users with CentOS or Red Hat Linux, the installation is fairly similar: start with installing the dependencies:
sudo yum install perl perl-Net-SSLeay openssl perl-IO-Tty perl-Encode-Detect wget
Then download the webmin package:
Finally, install webmin from the package with the following command:
sudo rpm -U webmin-1.881-1.noarch.rpm
Once the installation is complete, a message will appear containing a URL that you can use in your web browser to log into your system. If you set your hostname to a domain name pointed to your server, as at the start of this tutorial, you can simply copy that URL and paste it into a web browser to connect to the server. If you didn’t then you can adjust the URL to use an IP address:
Make sure you replace the “22.214.171.124” with the IP address of your server.
Once you connect in your web browser you’ll be greeted by a big warning that your connection is not secure. This is because at this time your server is using a self-signed SSL certificate and your browser can’t authenticate it against a trusted issuer. You will need to confirm to your browser that you are happy to proceed to the site to continue. Once you have done that, you will see a screen inviting you to log into your Webmin control panel. This requires your standard Linux user login details. As such, any user with sudo access can log in as well as the root user. Just as with working at the command line, we recommend that each user that needs access to the control panel has their own account with sudo permissions, rather than users logging in with the root account.
Unlike some control panels that will download and install every package and service they can control during installation, Webmin only attempts to manage what is already on your server. If you want to use something that wasn’t installed when you installed webmin, you can look in the “Unused Modules” section of the menu bar on the left of the screen and use that to install the service and then the module will be activated under the relevant section of the menu bar afterward.
To prevent the SSL warning in the future, if you click in the “Webmin” section of the menu, then select “Webmin Configuration”, then click on “SSL Encryption” on the main part of the screen, this will take you to a section where you can configure an SSL certificate. On selecting the “Let’s Encrypt” tab, you can enter the domain name of your server and click “Request Certificate” and a free certificate will be created for your server and set up for your Webmin administration.