GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo instalar Webmin en el servidor CentOS 8/RHEL 8

Webmin es un panel de control gratuito y de código abierto para administrar servidores Unix/Linux. Este tutorial le mostrará cómo instalar Webmin en el servidor CentOS 8/RHEL 8.

Webmin proporciona a los usuarios una interfaz gráfica de usuario basada en la web para configurar tareas y configuraciones comunes del sistema. Si no le gusta la idea de usar la línea de comandos para administrar su servidor, Webmin es una buena alternativa gráfica para usted. La siguiente es una lista de funcionalidades provistas por Webmin.

  • Resolución de DNS BIND y servidor DNS autorizado
  • Servidor Samba
  • servidor FTP
  • Servidor Postfix SMTP y servidor Dovecot IMAP/POP3.
  • copia de seguridad del sistema de archivos
  • Configure la rotación del archivo de registro.
  • Edite repositorios de paquetes, programe actualizaciones de software automáticas y reciba informes de actualización por correo electrónico.
  • Administrar usuarios y grupos
  • Programar trabajos de Cron.
  • Configurar el cortafuegos de iptables
  • Y muchos más.

Instalar Webmin en CentOS 8/RHEL 8 desde el repositorio de Webmin

Webmin existe desde 1997. Al momento de escribir este artículo, la última versión estable disponible es la 1.970, que se lanzó el 6 de enero de 2021. Webmin no está en el repositorio de software CentOS/RHEL. Se recomienda instalar Webmin desde su repositorio oficial para que siempre pueda obtener la última versión.

Para agregar un repositorio de Webmin, cree un archivo de repositorio con un editor de texto de línea de comandos como Nano.

sudo dnf install nano

sudo nano /etc/yum.repos.d/webmin.repo

Agregue las siguientes líneas en el archivo.

[Webmin]
name=Webmin Distribution Neutral
#baseurl=https://download.webmin.com/download/yum
mirrorlist=https://download.webmin.com/download/yum/mirrorlist
enabled=1

Guarde y cierre el archivo. Para guardar el archivo en el editor de texto Nano, presione CTRL+O , luego presione Enter para confirmar. Para cerrar el archivo, presiona CTRL+X . A continuación, debemos ejecutar el siguiente comando para descargar e importar la clave de firma PGP de Webmin para que el administrador de paquetes pueda verificar la integridad de los paquetes descargados del repositorio de Webmin.

wget http://www.webmin.com/jcameron-key.asc

Luego impórtalo con:

sudo rpm --import jcameron-key.asc

Ahora podemos actualizar el repositorio e instalar Webmin.

sudo dnf update -y

sudo dnf install webmin -y

Una vez instalado, el servidor web integrado de Wemin se iniciará automáticamente como se puede ver al ejecutar el siguiente comando systemctl:

systemctl status webmin

Salida:

Sugerencia :Si el comando anterior no se cierra inmediatamente, puede presionar la Q clave para recuperar el control de la terminal.

Si no se está ejecutando, puede iniciarlo con:

sudo systemctl start webmin

Si ve el mensaje “Unit webmin.service could not be found ”, entonces necesita reiniciar su servidor.

sudo shutdown -r now

El servidor Webmin escucha en el puerto 10000, por lo que debe abrir el puerto TCP 10000 en el firewall.

sudo firewall-cmd --permanent --add-port=10000/tcp

sudo systemctl reload firewalld

Ahora puede acceder al panel de control basado en la web a través de

https://your-server-ip:10000

Debido a que se ejecuta en modo HTTPS y utiliza un certificado TLS autofirmado, el navegador le indicará que la conexión no es segura.

Pero sabe que este es su propio servidor, así que simplemente haga clic en Advanced pestaña en Firefox y agregue una excepción. Si está utilizando Google Chrome, puede hacer clic en Advanced -> Proceed .

Ahora se le presentará la pantalla de inicio de sesión de Webmin. Necesitas usar root cuenta para iniciar sesión.

Si no le gusta el color predeterminado en el menú de navegación, puede cambiarlo a un color diferente haciendo clic en theme configuration icono en la parte inferior del menú de navegación,

luego seleccione las opciones del menú de navegación y configure la paleta de colores. Por ejemplo, seleccioné azul medianoche.

Guarde el cambio.

Configuración del proxy inverso

Si instala Webmin en un servidor de producción, es posible que desee configurar un proxy inverso con Apache o Nginx para poder usar un nombre de dominio para acceder a la interfaz de Webmin sin especificar el número de puerto (10000). Esto también le permite obtener e instalar un certificado Let's Encrypt TLS válido para Webmin.

Si no tiene un nombre de dominio real, le recomiendo ir a NameCheap para comprar uno. El precio es bajo y brindan protección de privacidad whois gratis de por vida.

Apache

Si prefiere utilizar el servidor web Apache, siga las instrucciones a continuación para configurar el proxy inverso.

Instale el servidor web Apache.

sudo dnf install httpd

Luego cree un archivo de host virtual para Webmin.

sudo nano /etc/httpd/conf.d/webmin.conf

Agregue los siguientes textos al archivo. Reemplace webmin.your-domain.com con su nombre de dominio real y no olvide crear un registro DNS A para él.

<VirtualHost *:80>
    ServerName webmin.your-domain.com

    ProxyPass / http://127.0.0.1:10000/
    ProxyPassReverse / http://127.0.0.1:10000/
</VirtualHost>

Guarde y cierre el archivo. Vuelva a cargar Apache para que los cambios surtan efecto.

sudo systemctl reload httpd

De forma predeterminada, SELinux prohíbe a Apache realizar solicitudes de red a otros servidores, pero luego Apache necesita reenviar solicitudes HTTP a 127.0.0.1:10000 , por lo que debemos decirle a SELinux que permita Apache con el siguiente comando.

sudo setsebool -P httpd_can_network_connect 1

Ahora puede acceder de forma remota a Webmin ingresando el nombre de dominio (webmin.your-domain.com ) en la barra de direcciones del navegador.

Nginx

Si prefiere usar el servidor web Nginx, siga las instrucciones a continuación para configurar el proxy inverso.

Instale Nginx en CentOS/RHEL.

sudo dnf install nginx

Inicie el servidor web Nginx.

sudo systemctl start nginx

Luego cree un nuevo archivo de bloque de servidor en /etc/nginx/conf.d/ directorio.

sudo nano /etc/nginx/conf.d/webmin.conf

Pegue el siguiente texto en el archivo. Reemplace webmin.your-domain.com con su nombre de dominio preferido y no olvide crear un registro DNS A para él.

server {
       listen 80;
       listen [::]:80;
       server_name webmin.your-domain.com;

       access_log /var/log/nginx/webmin.access;
       error_log /var/log/nginx/webmin.error;

       location / {
              proxy_pass http://127.0.0.1:10000;
              #proxy_set_header Host $http_host;
              proxy_set_header X-Real-IP $remote_addr;
              proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
              proxy_set_header X-Forwarded-Proto $scheme;
        }
}

Guarde y cierre el archivo. Luego pruebe la configuración de Nginx.

sudo nginx -t

Si la prueba es exitosa, vuelva a cargar Nginx.

sudo systemctl reload nginx

De forma predeterminada, SELinux prohíbe a Nginx realizar solicitudes de red a otros servidores, pero luego Nginx necesita reenviar solicitudes HTTP a 127.0.0.1:10000 , por lo que debemos decirle a SELinux que permita Nginx con el siguiente comando.

sudo setsebool -P httpd_can_network_connect 1

Ahora puede acceder a la interfaz web de Webmin a través de webmin.your-domain.com .

Habilitar HTTPS

Para cifrar el tráfico HTTP cuando visita la interfaz web de Webmin, podemos habilitar HTTPS instalando un certificado TLS gratuito emitido por Let's Encrypt. Ejecute el siguiente comando para instalar el cliente Let's Encrypt (certbot) en CentOS/RHEL.

sudo dnf install certbot

Si usa Apache, entonces necesita instalar el complemento Certbot Apache.

sudo dnf install python3-certbot-apache

A continuación, ejecute el siguiente comando para obtener e instalar el certificado TLS.

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d webmin.your-domain.com

Si usa Nginx, entonces necesita instalar el complemento Certbot Nginx.

sudo dnf install python3-certbot-nginx

A continuación, ejecute el siguiente comando para obtener e instalar el certificado TLS.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d webmin.your-domain.com

donde:

  • --apache :Utilice el complemento de Apache.
  • --nginx :use el complemento nginx.
  • --agree-tos :Acepto los términos del servicio.
  • --redirect :Forzar HTTPS por redirección 301.
  • --hsts :agregue el encabezado Strict-Transport-Security a cada respuesta HTTP. Obligar al navegador a usar siempre TLS para el dominio. Protege contra la eliminación de SSL/TLS.
  • --staple-ocsp :activa el grapado OCSP. Se grapa una respuesta OCSP válida al certificado que ofrece el servidor durante TLS.

Ahora se debe obtener el certificado e instalarlo automáticamente. Y podrá acceder a la interfaz web de Webmin a través de una conexión HTTPS segura.

Añadir referentes de confianza

Debido a que Webmin se está ejecutando en modo HTTP y habilitamos HTTPS en Apache/Nginx, Webmin pensará que https://webmin.your-domain.com está fuera del servidor de Webmin. Por lo tanto, debemos agregar referentes de confianza.

Edite el archivo de configuración de Webmin.

sudo nano /etc/webmin/config

Agregue la siguiente línea al final.

referers=webmin.your-domain.com

Guarde y cierre el archivo. Luego reinicie Webmin.

sudo systemctl restart webmin

Deshabilitar el modo HTTPS en Webmin

Ahora que la conexión TLS finaliza en Apache/Nginx, debemos deshabilitar el modo HTTPS en el servidor web integrado de Webmin. Edite el archivo de configuración de Webmin.

sudo nano /etc/webmin/miniserv.conf

Busque la siguiente línea.

ssl=1

Cámbielo a lo siguiente para deshabilitar el modo HTTPS en Webmin.

ssl=0

También podemos agregar la siguiente línea en este archivo para que el servidor web incorporado solo permita el acceso desde localhost. Visitantes que usan http://public-ip:10000 el esquema estará prohibido.

allow=127.0.0.1

Guarde y cierre el archivo. Luego reinicie Webmin.

sudo systemctl restart webmin

Resolución de problemas

Si ve algún error, puede consultar el registro de errores de Webmin (/var/webmin/miniserv.error ) para solucionar problemas.


Cent OS
  1. Cómo instalar Puppet en CentOS 8 / RHEL 8

  2. Instalar Webmin en CentOS 7 / RHEL 7

  3. Cómo instalar Puppet 6.x en CentOS 7 / RHEL 7

  4. Cómo instalar Puppet en RHEL 8/CentOS 8

  5. CentOS / RHEL 7:Cómo instalar la GUI

Cómo instalar el servidor web OpenLiteSpeed ​​en CentOS 8/RHEL 8

Cómo instalar Zabbix Server 4.x en CentOS 6 / RHEL 6

Cómo instalar el servidor Zabbix 5.0/4.0 en CentOS 7/RHEL 7

Cómo instalar qBittorrent en CentOS 8/RHEL 8 Desktop &Server

Cómo instalar Webmin en CentOS

Cómo instalar Webmin en CentOS 7