Introducción
Webmin es un panel de control basado en web (CPANEL) para cualquier máquina Linux que le permite administrar su servidor a través de una moderna interfaz basada en web.
En este artículo explicaremos cómo instalar y configurar Webmin en su servidor con un certificado válido usando Let's Encrypt y Apache.
Si su intención es instalar Webmin en un servidor remoto, continúe leyendo; de lo contrario, si desea instalar Webmin en su computadora local, omita el primer párrafo "Conectarse al servidor" y lea el siguiente.
Conexión al servidor
Para acceder al servidor, necesita conocer la dirección IP. También necesitará la contraseña para la autenticación.
Para conectarse al servidor como root, escriba este comando:
ssh root@IP_DEL_SERVER
A continuación, se le pedirá que ingrese la contraseña del usuario root.
Si no usa el usuario root, puede iniciar sesión con otro nombre de usuario usando el mismo comando, luego cambie el primer parámetro:
ssh VOSTRO_UTENTE@IP_DEL_SERVER
Luego se le pedirá que ingrese su contraseña de usuario.
Ahora está conectado a su servidor, está listo para comenzar a instalar Webmin.
Prerrequisitos
Apache instalado, el procedimiento de instalación se puede encontrar aquí: Cómo instalar LAMP (Apache MySQL PHP) en Ubuntu 18.10
Un nombre de dominio completo (FQDN), con un registro A de DNS que apunta a la dirección IP del servidor. Siga este tutorial: Cómo configurar el nombre de host y los hosts en Ubuntu 18.10
Certbot instalado y listo para usar. Puede seguir este tutorial: Cómo instalar Let's Encrypt para Apache en Ubuntu 18.10
Instalar Webmin
Primero, debe agregar el repositorio de Webmin para que pueda instalar y actualizar Webmin fácilmente usando el administrador de paquetes apt. Agreguemos el repositorio al archivo /etc/apt/sources.list.
Abra el archivo desde la terminal:
sudo nano /etc/apt/sources.list
Agregue esta línea al final del archivo:
deb http://download.webmin.com/download/repository sarge contrib
Guarde y cierre el archivo
Agregue la clave PGP Webmin para verificar el nuevo repositorio:
wget http://www.webmin.com/jcameron-key.asc
sudo apt-key add jcameron-key.asc
Actualicemos la lista de paquetes para incluir el repositorio de Webmin:
sudo apt update
Ahora instalemos Webmin:
sudo apt install webmin
Podemos conectarnos a Webmin desde el navegador usando el enlace y puerto que vemos en el terminal:
...
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`.
Configurar Webmin para Apache
Para acceder a Webmin, debe especificar el puerto 10000 y asegurarse de que el puerto esté abierto en el firewall.
Usaremos un host virtual Apache para las solicitudes de proxy al servidor Webmin que se ejecuta en el puerto 10000.
Primero, cree un nuevo archivo de host virtual Apache en el directorio de configuración de Apache:
sudo nano /etc/apache2/sites-available/TUO_DOMINIO.conf
Agregue las siguientes líneas de código, cambiando el correo electrónico y el dominio:
<VirtualHost *:80>
ServerAdmin TUA_EMAIL
ServerName TUO_DOMINIO
ProxyPass /http://localhost:10000/ProxyPassReverse /http://localhost:10000/</VirtualHost>
Guarde y cierre el archivo.
De esta manera, Apache redirigirá las solicitudes en el puerto 10000 al dominio establecido.
Esta configuración indica a Apache que pase solicitudes a http: //localhost: 10000.
Configuramos Webmin para usar certificados SSL Let's Encrypt. Abra el siguiente archivo:
sudo nano /etc/webmin/miniserv.conf
Busque y cambie el campo ssl de 1 a 0, así:
...
ssl=1...
Guarde y cierre el archivo.
Abra el siguiente archivo:
sudo nano /etc/webmin/config
Agregue la siguiente línea al final del archivo:
referers=TUO_DOMINIO
Guarde y cierre el archivo.
Reinicie Webmin:
sudo systemctl restart webmin
Habilite el módulo Apache proxy_http:
sudo a2enmod proxy_http
Habilite el nuevo host virtual Apache:
sudo a2ensite TUO_DOMINIO
Reinicie Apache:
sudo systemctl restart apache2
Instale certificados SSL con Let's Encrypt para Webmin
Si ha seguido el tutorial para instalar Certbot, presente en los requisitos previos de este tutorial, ya tendrá certbot instalado y listo para usar.
Certbot utiliza el complemento Apache para obtener certificados SSL. Desde la terminal:
sudo certbot --apache
La ejecución de este comando le permitirá obtener un certificado SSL y Certbot modificará automáticamente la configuración de Apache.
Ahora puede conectarse a Webmin de forma segura.
https://TUO_DOMINIO
La instalación y configuración está terminada.