Als je voor het beheer van je systeem niet in configuratiebestanden wilt editen, dan is Webmin een uitkomst. Het heeft een ingebouwde webserver en middels de browser beheer je gebruikers, services, domeinnamen en de firewall. Met Webmin bekijk je systeeminformatie, inspecteer je logging of voeg je een printer toe. Bovendien heb je één en dezelfde interface, ongeacht het gebruikte Linux-systeem. Voor beginnende Linux-beheerders of thuisgebruikers is Webmin daardoor een makkelijke instap.

Webmin is modulair opgebouwd. Een module verzorgt de koppeling tussen een set configuratiebestanden en de Webmin-server. Voor alle gangbare beheertaken zijn de benodigde modules standaard aanwezig. Ook voor veelgebruikte servers, zoals databases of webservers, heb je meteen modules tot je beschikking. Door de modulaire opbouw is het toevoegen van functionaliteit eenvoudig. Daardoor heb je goede kans dat anderen een missende Webmin-module ontwikkeld hebben, die je eenvoudig kunt installeren via de webinterface.

Installatie

Niet bij alle gangbare Linux-distributies is Webmin beschikbaar in de repositories. Gelukkig vind je op de site van Webmin onder het tabblad Downloads zowel RPM- als deb-pakketten. Download de variant behorend bij jouw systeem. In dit voorbeeld gebruiken we webmin-1.830-1.noarch.rpm op Fedora. Ga naar de download-directory en installeer het pakket:

*** LISTING ***

cd <download_dir>

sudo dnf install webmin-1.830-1.noarch.rpm

*** EINDE LISTING ***

Er draait nu een webserver op poort 10.000. Controleer dit door:

*** LISTING ***

systemctl status webmin

*** EINDE LISTING ***

Inspecteer in geval van problemen het logbestand op /var/webmin/miniserv.error

Zo nodig voer je aanpassingen door in het configuratiebestand van de webserver op /etc/webmin/miniserv.conf. Deze start je vervolgens alsnog op met:

*** LISTING ***

sudo systemctl start webmin

*** EINDE LISTING ***

Web GUI

Zorg tenslotte dat op de firewall TCP-poort 10.000 openstaat. Ga nu met je browser https://<mijn_hostnaam>:10000/. Gebruik voor <mijn_hostnaam> de hostnaam of het IP-adres van de machine, waarop Webmin is geïnstalleerd. Merk op dat Webmin standaard SSL gebruikt. Je krijgt een duidelijke melding als je per ongeluk ‘http’ in plaats van ‘https’ intikt.

Waarschijnlijk geeft de browser aan dat hij de connectie niet vertrouwt door een niet te valideren certificaat. In het geval van Firefox klik je in de melding op de knop Advanced en vervolgens op Add Exception -> Confirm Security Exception.

Nu verschijnt het login scherm van Webmin. Standaard heeft alleen root toegang. Voor het verifiëren van de inloggegevens gebruikt Webmin het Linux wachtwoordbestand: /etc/shadow

Gebruik daarom het wachtwoord, zoals dat bekend is op de machine waarop Webmin draait. Klik op Login en je ziet nu de webinterface van Webmin (zie afbeelding 1). In het centrale deel zie je het dashboard met systeeminformatie waaronder de hostnaam, het type processor en het geheugengebruik. Links vind je het menu voor het beheer.

Modules

Elk menu, zoals System -> Bootup and Shutdown, is een module. Als je op een menu klikt, zie je linksboven Module Config (zie afbeelding 2). Klik hierop om de moduleconfiguratie aan te passen, zoals de te gebruiken commando’s of paden van je systeem. Verder hangen de opties van de module af. Voor een databaseserver geef je hier bijvoorbeeld de inloggegevens voor de administrator op.

Webmin toont alleen relevante menu’s. Als bijvoorbeeld PostgreSQL niet geïnstalleerd is, vind je die ook niet terug onder het menu Servers. De niet gebruikte modules vind je onderaan bij Un-used Modules. Als hier een module staat, waarvan de functionaliteit wel op je systeem aanwezig is, moet je de configuratie aanpassen. Klik op de modulenaam, zodat Webmin toont waarom de betreffende module niet actief is. Klik vervolgens op Module Config om de benodigde aanpassingen door te voeren.

Omgekeerd is het mogelijk dat er geen standaardmodule is voor bepaalde functionaliteit. Zo vind je geen OpenVPN module. Om die te installeren ga je naar Webmin -> Webmin Configuration. Klik hier op Webmin Modules. Vink de optie Third party module from aan en klik op de knop ernaast met drie puntjes. Klik in de getoonde lijst op OpenVPN. Je komt nu terug in het hoofdscherm. Klik tenslotte op Install Module linksonder om de OpenVPN module te installeren.

Back-up

Om aanpassingen makkelijk terug te draaien, maak je eerst een back-up via Webmin -> Backup Configuration Files. Voor bijvoorbeeld een back-up van de configuratie van de Apache webserver klik je in de lijst Modules to backup op Apache Webserver. Standaard maakt Webmin een back-up naar een lokaal bestand. Klik op de knop met drie puntjes en geef in het pop-up scherm een pad met bestandsnaam op. De back-up is een tar.gz bestand, maar Webmin voegt deze extensie niet zelf toe. Let daarop bij het opgeven van een bestandsnaam. Klik tenslotte op Backup Now.

Om dit bestand te gebruiken voor het terugzetten van de configuratie gebruik je het tabblad Restore now. Selecteer Apache webserver in de lijst Modules to restore en geef het pad naar de back-up op. Klik tenslotte op Restore Now linksonder. De melding over het aantal herstelde bestanden is trouwens onjuist en kun je negeren.

Systeembeheer

Onder het menu System vind je de modules voor het systeembeheer. Zo krijg je via Bootup and Shutdown een overzicht van aanwezige systemd services. Voor iedere service zie je of die bij het booten van het systeem opstart en of hij momenteel draait. Om de configuratie aan te passen, klik je op een service. Onderaan het configuratiescherm vind je knoppen om de service te starten en stoppen.

Voor een lijst van alle processen klik je op Running Processes. Voor informatie over het geheugen- of CPU-gebruik per proces klik je boven op Memory, respectievelijk CPU. Door op een procesnummer te klikken, krijg je detailinformatie. Hier pas je bijvoorbeeld ook de niceness aan. Onderin vind je knoppen om het proces te beëindigen of tijdelijk te stoppen en weer te starten. Via je de knop Files and Connections helemaal rechts krijg je een overzicht van bestanden, bibliotheken en netwerkverbindingen, die dit proces in gebruik heeft.

Onder Software Package Updates krijg je na enkele tellen een lijst van beschikbare updates. Als je niets ziet, klik dan op Refresh Available Packages. Standaard zijn alle updates gemarkeerd om te installeren. Voor een beperkte selectie klik je eerst op Invert selection bovenaan de lijst en vervolgens zet je vinkjes bij de gewenste updates. Klik tenslotte op Update Selected Packages onderaan om de update uit te voeren. Het installeren van een nieuw pakket verloopt overigens via Software Packages. Het zoeken in de officiële YUM repositories kan wel duidelijk beter. Het werkt namelijk traag en je kunt maar één pakket selecteren.

Voor een overzicht van bestandssystemen ga je naar Disk and Network Filesystems. Onder meer zie je hier voor de mount points het diskgebruik. Om mount opties aan te passen, klik je op het mount point. Attentie, door te klikken in de kolom In use mount of unmount je het bestandssysteem! Voor het beheer van onderliggende systemen, zoals RAID en LVM, moet je naar het menu Hardware.

Netwerkbeheer

Via het menu Networking voer je het netwerkbeheer uit. Klik op Network Configuration -> Network Interfaces voor een overzicht van aanwezige netwerkinterfaces. Standaard toont Webmin het tabblad Activated at Boot. Gebruik het tabblad Active Now om te zien welke interfaces momenteel actief zijn. Om een netwerkinterface te configureren, klik je op de betreffende naam.

Voor het beheer van de firewall ga je naar Linux Firewall of Linux IPv6 Firewall, indien je IPv6 gebruikt. De rules staan gegroepeerd per logische eenheid, de zogeheten chains: inkomende (INPUT), doorgaande (FORWARD) en uitgaande (OUTPUT) pakketten. Om een rule aan te passen, klik je op de juiste regel in de kolom Action. Om een rule toe te voegen, klik je onder de betreffende chain helemaal rechts op Add Rule. Standaard toont Webmin de pakketfilter tabellen. Voor geavanceerdere mangle en NAT-functionaliteit kies je de gewenste optie boven in het drop-down menu rechts naast Showing IPtable.

Servers

Het menu Servers toont een overzicht van servers op je systeem. Door te klikken op een servernaam krijg je gedetailleerde informatie. Hert hangt helemaal af van de server wat dat inhoudt. In afbeelding 2 zie je een voorbeeld voor een Postfix mailserver. De beheermogelijkheden zijn uitgebreid en laten weinig te wensen over. Dit geldt eveneens voor andere servers. Zo kun je bij een databaseserver tot op kolomniveau van tabellen werken. In geval van de BIND name server pas je niet alleen records in de zone files aan, maar richt je desgewenst slave servers in.

Webmin gebruikers

Standaard mag alleen root inloggen. Om andere gebruikers toegang te verlenen, ga je naar Webmin -> Webmin Users. Maak eerst een Webmin groep aan door te klikken op Create a new Webmin group. Geef een naam met een beschrijving. Klik vervolgens onderaan op Available Webmin modules en vink de modules aan waarvoor gebruikers in deze groep toegang krijgen. Klik tenslotte onderaan op Create.

Klik nu beneden op Convert Unix To Webmin Users. Vink de optie Only users aan en klik rechts ervan op de knop met drie puntjes. In het pop-up venster klik je links in de lijst op de gewenste gebruikers en tot slot rechts op Ok. Mocht je meerdere Webmin groepen hebben, kies dan de gewenste groep in de drop-down lijst Assign new users to Webmin group. Klik nu onderaan op Convert Now, waarna je een melding krijgt over de conversie. Klik beneden op Return to user list en nu zie je bovenaan onder Webmin Users alle toegevoegde gebruikers. Klik op een gebruikersnaam om het profiel verder te configureren. Zo beperk je de toegang tot bepaalde tijden of hosts via Security and limits options.

Meerdere machines

In geval van meerdere machines is het handig om die vanuit één interface te beheren. Installeer daartoe Webmin eveneens op de andere machines. Zorg dat daar behalve TCP ook UDP-poort 10.000 openstaat. Op de Webmin instantie, die als master fungeert, ga je naar Webmin -> Webmin Servers Index (zie afbeelding 3). Klik op Broadcast for servers als de machines en de master op hetzelfde netwerk zitten. Anders geef je eerst bij Scan for Servers het te scannen netwerk op, bijvoorbeeld 192.168.2.0, en vervolgens klik je op Scan for Servers. Als het zoeken klaar is, klik je op Return to servers.

Nu zie je bovenin de gevonden servers. Klik op edit bij de hostnaam. Kies onder bij Link type de optie Login when icon is clicked on en klik op Save. Klik op een icoontje om in te loggen op de remote server. Nu verschijnt diens Webmin interface op de master Webmin. Linksonder in het menu staat nu de optie Webmin Servers. Klik hierop om terug te keren naar de webinterface van de master Webmin. Hier zie je nu onder Webmin -> Webmin Servers Index bij het icoontje een extra optie logout om uit te loggen bij de remote server.

Tot slot

Webmin biedt uitgebreide beheermogelijkheden, zelfs nog veel meer dan hier aan bod is gekomen. Voor het beheer van je server of thuisnetwerk is Webmin dan ook ruimschoots voldoende. Tegen de tijd dat je tegen zijn beperkingen aanloopt, mag je je gerust een ervaren beheerder noemen.

Links

Webmin – webmin.com