Introduzione
Webmin è un pannello di controllo (CPANEL) basato sul web per qualsiasi macchina Linux che ti consente di gestire il tuo server attraverso una moderna interfaccia basata sul web.
In questo articolo spiegheremo come installare e configurare Webmin sul tuo server con un certificato valido utilizzando Let's Encrypt e Apache.
Se il vostro intento è installare Webmin su di un server in remoto continuate a leggere, altrimenti se volete installare Webmin sul vostro computer locale saltate il primo paragrafo "Connessione al Server" e leggere il successivo.
Connessione al Server
Per accedere al server, è necessario conoscere l'indirizzo IP. Avrai anche bisogno della password per l'autenticazione.
Per connettersi al server come utente root digitare questo comando:
ssh root@IP_DEL_SERVER
Successivamente vi verrà chiesto di inserire la password dell'utente root.
Se non utilizzate l'utente root potete connettervi con un'altro nome utente utilizzando lo stesso comando, quindi modificare il primo parametro:
ssh VOSTRO_UTENTE@IP_DEL_SERVER
Successivamente vi verrà chiesto di inserire la password del vostro utente.
Siete ora connessi al vostro server, siete pronti per iniziare l'installazione di Webmin.
Prerequisiti
-
Apache installato, la procedura di installazione la potete trovare qui: Come installare LAMP (Apache MySQL PHP) su Ubuntu 18.10
-
Un nome di dominio completo (FQDN), con un record DNS A che punta all'indirizzo IP del server. Seguire questo tutorial: Come configurare Hostname e Hosts su Ubuntu 18.10
-
Certbot installato e pronto all'uso. Potete seguire questo tutorial: Come installare Let's Encrypt per Apache su Ubuntu 18.10
Installare Webmin
Per prima cosa, è necessario aggiungere il repository Webmin in modo da poter installare e aggiornare facilmente Webmin utilizzando il gestore di pacchetti apt.
Aggiungiamo il repository al file /etc/apt/sources.list.
Aprire il file da terminale:
sudo nano /etc/apt/sources.list
Aggiungere questa riga alla fine del file:
deb http://download.webmin.com/download/repository sarge contrib
Salvare e chiudere il file
Aggiungere la chiave PGP Webmin per verificare il nuovo repository:
wget http://www.webmin.com/jcameron-key.asc
sudo apt-key add jcameron-key.asc
Aggiorniamo la lista dei pacchetti per includere il repository di Webmin:
sudo apt update
Adesso installiamo Webmin:
sudo apt install webmin
Possiamo connetterci a Webmin dal browser utilizzando il link e la porta che visualizziamo nel terminale:
...
Webmin install complete. You can now login to
https://INDIRIZZO_IP:10000 as root with your
root password, or as any user who can use `sudo`.
Configurare Webmin per Apache
Per accedere a Webmin, è necessario specificare la porta 10000 e assicurarsi che la porta sia aperta sul firewall.
Useremo un host virtuale Apache per le richieste proxy al server Webmin in esecuzione sulla porta 10000.
Innanzitutto, creare un nuovo file host virtuale Apache nella directory di configurazione di Apache:
sudo nano /etc/apache2/sites-available/TUO_DOMINIO.conf
Aggiungere le seguenti righe di codice, modificando l'email e il dominio:
<VirtualHost *:80>
ServerAdmin TUA_EMAIL
ServerName TUO_DOMINIO
ProxyPass / http://localhost:10000/
ProxyPassReverse / http://localhost:10000/
</VirtualHost>
Salvare e chiudere il file.
In questo modo Apache effettuerà un redirect delle richieste sulla porta 10000 verso il dominio impostato.
Questa configurazione indica ad Apache di passare le richieste a http://localhost:10000.
Configuriamo Webmin per utilizzare i certificati SSL di Let's Encrypt.
Aprire il seguente file:
sudo nano /etc/webmin/miniserv.conf
Cercare e modificare il campo ssl da 1 a 0, in questo modo:
...
ssl=1
...
Salvare e chiudere il file.
Aprire il seguente file:
sudo nano /etc/webmin/config
Aggiungere la seguente riga alla fine del file:
referers=TUO_DOMINIO
Salvare e chiudere il file.
Riavviare Webmin:
sudo systemctl restart webmin
Abilitare il modulo di Apache proxy_http:
sudo a2enmod proxy_http
Abilitare il nuovo Virtual Host di Apache:
sudo a2ensite TUO_DOMINIO
Riavviare Apache:
sudo systemctl restart apache2
Installare i certificati SSL con Let's Encrypt per Webmin
Se avete seguito il tutorial per installare Certbot, presente nei prerequisiti di questo tutorial, avrete già certbot installato e pronto all'uso.
Certbot utilizza il plugin di Apache per ottenere certificati SSL.
Da terminale:
sudo certbot --apache
L'esecuzione di questo comando ti permetterà di ottenere un certificato SSL e Certbot modificherà automaticamente la configurazione di Apache.
Adesso potete connettervi a Webmin in modo sicuro.
https://TUO_DOMINIO
L'installazione e la configurazione è terminata.