GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer Webmin sur le serveur CentOS 8/RHEL 8

Webmin est un panneau de contrôle gratuit et open-source pour administrer les serveurs Unix/Linux. Ce tutoriel vous montrera comment installer Webmin sur le serveur CentOS 8/RHEL 8.

Webmin fournit aux utilisateurs une interface utilisateur graphique basée sur le Web pour configurer les tâches et les paramètres système courants. Si vous n'aimez pas l'idée d'utiliser la ligne de commande pour gérer votre serveur, alors Webmin est une bonne alternative graphique pour vous. Voici une liste des fonctionnalités fournies par Webmin.

  • Résolveur DNS BIND et serveur DNS faisant autorité
  • Serveur Samba
  • Serveur FTP
  • Serveur SMTP Postfix et serveur Dovecot IMAP/POP3.
  • sauvegarde du système de fichiers
  • Configurer la rotation des fichiers journaux.
  • Modifiez les référentiels de packages, planifiez des mises à jour logicielles automatiques et recevez des rapports de mise à jour par e-mail.
  • Gérer les utilisateurs et les groupes
  • Planifiez des tâches Cron.
  • Configurer le pare-feu iptables
  • Et bien d'autres.

Installez Webmin sur CentOS 8/RHEL 8 à partir du référentiel Webmin

Webmin existe depuis 1997. Au moment d'écrire ces lignes, la dernière version stable disponible est la 1.970, qui a été publiée le 6 janvier 2021. Webmin n'est pas dans le référentiel de logiciels CentOS/RHEL. Il est recommandé d'installer Webmin à partir de son référentiel officiel afin que vous puissiez toujours obtenir la dernière version.

Pour ajouter un référentiel Webmin, créez un fichier de référentiel avec un éditeur de texte en ligne de commande tel que Nano.

sudo dnf install nano

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

Ajoutez les lignes suivantes dans le fichier.

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

Enregistrez et fermez le fichier. Pour enregistrer le fichier dans l'éditeur de texte Nano, appuyez sur CTRL+O , puis appuyez sur Enter confirmer. Pour fermer le fichier, appuyez sur CTRL+X . Ensuite, nous devons exécuter la commande suivante pour télécharger et importer la clé de signature Webmin PGP afin que le gestionnaire de packages puisse vérifier l'intégrité des packages téléchargés à partir du référentiel Webmin.

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

Puis importez-le avec :

sudo rpm --import jcameron-key.asc

Nous pouvons maintenant mettre à jour le référentiel et installer Webmin.

sudo dnf update -y

sudo dnf install webmin -y

Une fois installé, le serveur Web intégré Wemin démarrera automatiquement, comme vous pouvez le voir en exécutant la commande systemctl ci-dessous :

systemctl status webmin

Sortie :

Astuce  :Si la commande ci-dessus ne se ferme pas immédiatement, vous pouvez appuyer sur Q clé pour reprendre le contrôle du terminal.

S'il ne fonctionne pas, vous pouvez le démarrer avec :

sudo systemctl start webmin

Si vous voyez le message "Unit webmin.service could not be found ” erreur, alors vous devez redémarrer votre serveur.

sudo shutdown -r now

Le serveur Webmin écoute sur le port 10000, vous devez donc ouvrir le port TCP 10000 dans le pare-feu.

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

sudo systemctl reload firewalld

Vous pouvez désormais accéder au panneau de configuration Web via

https://your-server-ip:10000

Comme il fonctionne en mode HTTPS et utilise un certificat TLS auto-signé, le navigateur vous indiquera que la connexion n'est pas sécurisée.

Mais vous savez qu'il s'agit de votre propre serveur, alors cliquez simplement sur Advanced onglet dans Firefox et ajouter une exception. Si vous utilisez Google Chrome, vous pouvez cliquer sur Advanced -> Proceed .

L'écran de connexion Webmin vous sera maintenant présenté. Vous devez utiliser root compte pour vous connecter.

Si vous n'aimez pas la couleur par défaut du menu de navigation, vous pouvez la changer en une couleur différente en cliquant sur theme configuration icône en bas du menu de navigation,

puis sélectionnez les options du menu de navigation et définissez la palette de couleurs. Par exemple, j'ai sélectionné le bleu nuit.

Enregistrez la modification.

Configuration du proxy inverse

Si vous installez Webmin sur un serveur de production, vous souhaiterez peut-être configurer un proxy inverse avec Apache ou Nginx afin de pouvoir utiliser un nom de domaine pour accéder à l'interface Webmin sans spécifier le numéro de port (10000). Cela vous permet également d'obtenir et d'installer un certificat Let's Encrypt TLS valide pour Webmin.

Si vous n'avez pas de vrai nom de domaine, je vous recommande d'aller sur NameCheap pour en acheter un. Le prix est bas et ils offrent une protection de la confidentialité whois gratuite à vie.

Apache

Si vous préférez utiliser le serveur Web Apache, suivez les instructions ci-dessous pour configurer le proxy inverse.

Installez le serveur Web Apache.

sudo dnf install httpd

Créez ensuite un fichier d'hôte virtuel pour Webmin.

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

Ajoutez les textes suivants dans le fichier. Remplacez webmin.your-domain.com avec votre nom de domaine réel et n'oubliez pas de créer un enregistrement DNS A pour celui-ci.

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

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

Enregistrez et fermez le fichier. Rechargez Apache pour que les modifications prennent effet.

sudo systemctl reload httpd

Par défaut, SELinux interdit à Apache d'effectuer des requêtes réseau vers d'autres serveurs, mais plus tard, Apache doit transmettre les requêtes HTTP à 127.0.0.1:10000 , nous devons donc dire à SELinux d'autoriser Apache avec la commande suivante.

sudo setsebool -P httpd_can_network_connect 1

Vous pouvez désormais accéder à distance à Webmin en saisissant le nom de domaine (webmin.your-domain.com ) dans la barre d'adresse du navigateur.

Nginx

Si vous préférez utiliser le serveur Web Nginx, suivez les instructions ci-dessous pour configurer le proxy inverse.

Installez Nginx sur CentOS/RHEL.

sudo dnf install nginx

Démarrez le serveur Web Nginx.

sudo systemctl start nginx

Créez ensuite un nouveau fichier de bloc de serveur dans /etc/nginx/conf.d/ répertoire.

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

Collez le texte suivant dans le fichier. Remplacez webmin.your-domain.com avec votre nom de domaine préféré et n'oubliez pas de créer un enregistrement DNS A pour celui-ci.

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;
        }
}

Enregistrez et fermez le fichier. Testez ensuite la configuration de Nginx.

sudo nginx -t

Si le test réussit, rechargez Nginx.

sudo systemctl reload nginx

Par défaut, SELinux interdit à Nginx de faire des requêtes réseau à d'autres serveurs, mais plus tard, Nginx doit transmettre les requêtes HTTP à 127.0.0.1:10000 , nous devons donc dire à SELinux d'autoriser Nginx avec la commande suivante.

sudo setsebool -P httpd_can_network_connect 1

Vous pouvez maintenant accéder à l'interface Web de Webmin via webmin.your-domain.com .

Activer HTTPS

Pour chiffrer le trafic HTTP lorsque vous visitez l'interface Web Webmin, nous pouvons activer HTTPS en installant un certificat TLS gratuit émis par Let's Encrypt. Exécutez la commande suivante pour installer le client Let's Encrypt (certbot) sur CentOS/RHEL.

sudo dnf install certbot

Si vous utilisez Apache, vous devez installer le plugin Certbot Apache.

sudo dnf install python3-certbot-apache

Ensuite, exécutez la commande suivante pour obtenir et installer le certificat TLS.

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

Si vous utilisez Nginx, vous devez installer le plug-in Certbot Nginx.

sudo dnf install python3-certbot-nginx

Ensuite, exécutez la commande suivante pour obtenir et installer le certificat TLS.

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

Où :

  • --apache :Utilisez le plug-in Apache.
  • --nginx  :Utilisez le plug-in nginx.
  • --agree-tos  :acceptez les conditions d'utilisation.
  • --redirect  :Forcer HTTPS par redirection 301.
  • --hsts :Ajoutez l'en-tête Strict-Transport-Security à chaque réponse HTTP. Forcer le navigateur à toujours utiliser TLS pour le domaine. Protège contre le SSL/TLS Stripping.
  • --staple-ocsp :active l'agrafage OCSP. Une réponse OCSP valide est agrafée au certificat que le serveur propose pendant TLS.

Le certificat devrait maintenant être obtenu et installé automatiquement. Et vous pourrez accéder à l'interface Web de Webmin via une connexion HTTPS sécurisée.

Ajouter des référents de confiance

Parce que Webmin lui-même fonctionne en mode HTTP et que nous avons activé HTTPS dans Apache/Nginx, Webmin pensera que https://webmin.your-domain.com est en dehors du serveur Webmin. Nous devons donc ajouter des référents de confiance.

Modifiez le fichier de configuration Webmin.

sudo nano /etc/webmin/config

Ajoutez la ligne suivante à la fin.

referers=webmin.your-domain.com

Enregistrez et fermez le fichier. Redémarrez ensuite Webmin.

sudo systemctl restart webmin

Désactiver le mode HTTPS dans Webmin

Maintenant que la connexion TLS est terminée sur Apache/Nginx, nous devons désactiver le mode HTTPS dans le serveur Web intégré de Webmin. Modifiez le fichier de configuration Webmin.

sudo nano /etc/webmin/miniserv.conf

Trouvez la ligne suivante.

ssl=1

Remplacez-le par ce qui suit pour désactiver le mode HTTPS dans Webmin.

ssl=0

Nous pouvons également ajouter la ligne suivante dans ce fichier afin que le serveur Web intégré n'autorise l'accès qu'à partir de localhost. Visiteurs utilisant le http://public-ip:10000 sera interdit.

allow=127.0.0.1

Enregistrez et fermez le fichier. Redémarrez ensuite Webmin.

sudo systemctl restart webmin

Dépannage

Si vous voyez des erreurs, vous pouvez consulter le journal des erreurs Webmin (/var/webmin/miniserv.error ) pour dépanner.


Cent OS
  1. Comment installer Puppet sur CentOS 8 / RHEL 8

  2. Installez Webmin sur CentOS 7 / RHEL 7

  3. Comment installer Puppet 6.x sur CentOS 7 / RHEL 7

  4. Comment installer Puppet sur RHEL 8/CentOS 8

  5. CentOS / RHEL 7 :Comment installer l'interface graphique

Comment installer le serveur Web OpenLiteSpeed ​​sur CentOS 8/RHEL 8

Comment installer Zabbix Server 4.x sur CentOS 6 / RHEL 6

Comment installer Zabbix Server 5.0 / 4.0 sur CentOS 7 / RHEL 7

Comment installer qBittorrent sur CentOS 8/RHEL 8 Desktop &Server

Comment installer Webmin sur CentOS

Comment installer Webmin sur CentOS 7