Machine Virtuelle CentOS 8 (Oracle VM VirtualBox)

Hello, nous allons voir dans cet article comment créer une machine virtuelle Linux sous Oracle VM VirtualBox. Nous verrons comment installer et configurer CentOS 8.

Solutions de virtualisation open-source :

  • Oracle VM VirtualBox
  • Docker
  • KVM
  • Proxmox VE

Ce qu’il vous faut :

Liens pixelabs :

Création de Machine Virtuelle

Lancez Oracle VM VirtualBox et cliquez sur Nouvelle :

  • Nom : CentOS8
  • Type : Linux
  • Version : Red Hat (64-bit)
  • Taille de la mémoire : 2048 Mo
  • Disque dur
    • Cochez : Créer un disque virtuel maintenant
    • Type de fichier : VDI (Image Disque VirtuelBox)
    • Stockage : Dynamiquement alloué
    • Choisir l’emplacement du fichier
    • Taille du disque dur virtuel : 10 Go
  • Créer
  • Configuration < Menu : Machine / Configuration…>
    • Réseau
    • Carte 1 : Activer la carte réseau
    • Mode d’accès réseau : Accès par pont
    • Nom : votre carte réseau / Wifi
    • Cliquez sur Avancé
      • Type de carte : Intel PRO/1000 MT  Desktop
      • Mode Promiscuité : Tout autoriser
    • Aller dans Stockage
      • Sous le contrôleur IDE : Sélectionner l’ISO CentOS 8
    • Démarrer

Installation de CentOS 8

Démarrer la machine virtuelle. La page suivante s’affiche :

Installation CentOS 8

  • Sélectionner avec les flèches de votre clavier : Install CentOS Linux 8 et appuyer sur Entrée.
  • Choisir votre langue et cliquez sur Continuer

Langue CentSO 8

  • Cliquez sur Installation Destination

Disque Installation

  • Sélectionner ensuite le disque ATA VBOX HARDDISK et tout en haut cliquez sur le bouton Fait (laisser le reste par défaut)

ATA VBox Harddisk

  • Toujours sur la même page, cliquez sur : Sélection Logiciel

Serveur GUI CentOS 8

  • C’est ici que vous pouvez choisir un serveur avec interface graphique (GUI) ou sans GUI.
    • Dans mon cas, j’ai pris la version serveur sans GUI : Serveurs : Un serveur intégré, facile à gérer.
    • Sur colonne de droite, cochez les logiciels qui vous intéresse. Dans mon cas, j’ai coché les logiciels suivants :
      • Serveur de réseau
      • Outils de performance
      • Serveur web de base. Voir aussi sous CentOS 7 serveur web LEMPLAMP
      • Outils système

CentOS 8 Serveur sans GUI

  • Cliquez sur Fait
  • Cliquez ensuite sur Commencer l’installation
  • Pendant l’installation, cliquez sur Mot de passe administrateur afin d’ajouter un mot de passe pour l’utilisateur root

Mot de passe administrateur

  • Ajouter un mot de passe et cliquez sur le bouton Fait

Mot de passe root

Remarque : si vous souhaitez ajouter un autre utilisateur, cliquez sur Création Utilisateur

Après l’installation, cliquez sur le bouton Redémarrer.

Remarque : si le serveur redémarre sur l’installation, éjecter l’ISO via le menu VirtualBox : Périphériques > Lecteurs optiques… > Éjecter le disque du lecteur virtuel > (forcer l’éjection). Redémarrer la VM.

L’installation de CentOS 8 est terminée. Passons maintenant à la configuration de notre serveur.

Configuration Réseau

La première chose à faire après l’installation d’un serveur sans GUI est de configurer le réseau. Nous pourrons ensuite se connecter au serveur via SSH pour terminer la configuration.

Modifiez le fichier de configuration réseau :

[root@localhost ~]# cd /etc/sysconfig/network-scripts
[root@localhost ~]# vi ifcfg-enp0s3

Remarque : avec l’éditeur VI, appuyer sur « a » pour passer en mode insertion. Naviguez entre les lignes avec les flèches du clavier.

Ajouter à la fin votre  configuration réseau et modifier certains paramètre déjà présent comme ci-dessous :

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s3
UUID=e7d50b05-a5ca-4d31-b485-0346334ca711
DEVICE=enp0s3
ONBOOT=yes
IPADDR=192.168.1.15
NETMASK=255.255.255.0
GATEWAY=192.168.1.254
DNS1=192.168.1.254
DNS2=1.1.1.1
DOMAIN=pixelabs.lan
SEARCH=pixelabs.lan

Une fois terminé, appuyez sur « Echap » pour quitter le mode insertion. Enregistrer et quittez avec la commande suivante :wq

Relancez le réseau :

[root@localhost ~]# nmcli networking off
[root@localhost ~]# nmcli networking on

Remarque : éviter d’utiliser ces commandes si vous êtes en SSH

Lancer la commande en une seule fois :

[root@localhost ~]# nmcli networking off; nmcli networking on

Il y a aussi cette commande :

[root@localhost ~]# systemctl restart NetworkManager

Effectuer un test pour vérifier le bon fonctionnement :

[root@localhost ~]# ping google.fr
PING google.fr (216.58.206.227) 56(84) bytes of data.
64 bytes from par10s34-in-f3.1e100.net (216.58.206.227): icmp_seq=1 ttl=46 time=14.8 ms
64 bytes from par10s34-in-f3.1e100.net (216.58.206.227): icmp_seq=2 ttl=46 time=14.6 ms
[...]

Vous pouvez maintenant vous connecter via SSH sur votre serveur. The best SSH client est sur pixelabs : /windows-sysadmins-free-tools/#MobaXterm_Client_SSH

Configuration CentOS 8

Pour désactiver SELinux :

[root@localhost ~]#vi /etc/selinux/config

Mettez le paramètre : SELINUX=disabled

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

Change le nom de la machine (hostname) :

[root@localhost ~]# hostnamectl set-hostname vm-pixelabs
[root@localhost ~]#

Redémarrer le serveur pour prendre en compte les modifications.

[root@localhost ~]# reboot

Vérifier le firewall :

[root@vm-pixelabs ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2020-02-12 05:02:54 EST; 4min 2s ago
     Docs: man:firewalld(1)
 Main PID: 915 (firewalld)
    Tasks: 2 (limit: 11487)
   Memory: 31.0M
   CGroup: /system.slice/firewalld.service
           └─915 /usr/libexec/platform-python -s /usr/sbin/firewalld --nofork --nopid

févr. 12 05:02:52 vm-pixelabs systemd[1]: Starting firewalld - dynamic firewall daemon...
févr. 12 05:02:54 vm-pixelabs systemd[1]: Started firewalld - dynamic firewall daemon.
[root@vm-pixelabs ~]#

Pour le désactiver :

[root@vm-pixelabs ~]# systemctl stop firewalld
[root@vm-pixelabs ~]#
[root@vm-pixelabs ~]# systemctl disable firewalld
Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@vm-pixelabs ~]#

Remarque : si vous ne souhaitez pas le désactiver, n’oubliez pas d’autoriser à chaque fois les ports nécessaires pour le bon fonctionnement de vos projets .

Additions invité CentOS 8

Pour installer additions invité sous CentOS 8 :

  • Cliquez sur le menu : Périphériques > Insérer l’image CD des Additions invités…
[root@vm-pixelabs ~]# mkdir /mnt/cdrom
[root@vm-pixelabs ~]#
[root@vm-pixelabs ~]# mount /dev/cdrom /mnt/cdrom/
mount: /mnt/cdrom : Attention: périphérique protégé en écriture, monté en lecture seule.
[root@vm-pixelabs ~]#
[root@vm-pixelabs ~]# cd /mnt/cdrom/
[root@vm-pixelabs cdrom]#

Lancer l’installation :

[root@vm-pixelabs cdrom]# ./VBoxLinuxAdditions.run
Verifying archive integrity... All good.
Uncompressing VirtualBox 6.0.16 Guest Additions for Linux........
VirtualBox Guest Additions installer
Copying additional installer modules ...
Installing additional modules ...
VirtualBox Guest Additions: Starting.
VirtualBox Guest Additions: Building the VirtualBox Guest Additions kernel
modules.  This may take a while.
VirtualBox Guest Additions: To build modules for other installed kernels, run
VirtualBox Guest Additions:   /sbin/rcvboxadd quicksetup <version>
VirtualBox Guest Additions: or
VirtualBox Guest Additions:   /sbin/rcvboxadd quicksetup all
VirtualBox Guest Additions: Building the modules for kernel
4.18.0-147.el8.x86_64.

This system is currently not set up to build kernel modules.
Please install the gcc make perl packages from your distribution.
modprobe vboxguest failed
The log file /var/log/vboxadd-setup.log may contain further information.
[root@vm-pixelabs cdrom]#

Failed… pour plus d’info, voir log : /var/log/vboxadd-setup.log

Solution :

Installer ces packages :

[root@vm-pixelabs cdrom]# yum install -y perl gcc kernel-devel kernel-headers make bzip2

Relancer l’installation :

[root@vm-pixelabs cdrom]# ./VBoxLinuxAdditions.run
Verifying archive integrity... All good.
Uncompressing VirtualBox 6.0.16 Guest Additions for Linux........
VirtualBox Guest Additions installer
Removing installed version 6.0.16 of VirtualBox Guest Additions...
Copying additional installer modules ...
Installing additional modules ...
VirtualBox Guest Additions: Starting.
VirtualBox Guest Additions: Building the VirtualBox Guest Additions kernel
modules.  This may take a while.
VirtualBox Guest Additions: To build modules for other installed kernels, run
VirtualBox Guest Additions:   /sbin/rcvboxadd quicksetup <version>
VirtualBox Guest Additions: or
VirtualBox Guest Additions:   /sbin/rcvboxadd quicksetup all
VirtualBox Guest Additions: Building the modules for kernel
4.18.0-147.el8.x86_64.

VirtualBox Guest Additions: Look at /var/log/vboxadd-setup.log to find out what
went wrong
ValueError: File context for /opt/VBoxGuestAdditions-6.0.16/other/mount.vboxsf already defined
modprobe vboxguest failed
The log file /var/log/vboxadd-setup.log may contain further information.
[root@vm-pixelabs cdrom]#

Failed… pour plus d’info, voir log : /var/log/vboxadd-setup.log

Solution :

Installer ces packages :

[root@vm-pixelabs cdrom]# yum install -y xorg-x11-drivers xorg-x11-utils elfutils-libelf-devel

Relancer l’installation :

[root@vm-pixelabs cdrom]# ./VBoxLinuxAdditions.run
Verifying archive integrity... All good.
Uncompressing VirtualBox 6.0.16 Guest Additions for Linux........
VirtualBox Guest Additions installer
Removing installed version 6.0.16 of VirtualBox Guest Additions...
Copying additional installer modules ...
Installing additional modules ...
VirtualBox Guest Additions: Starting.
VirtualBox Guest Additions: Building the VirtualBox Guest Additions kernel
modules.  This may take a while.
VirtualBox Guest Additions: To build modules for other installed kernels, run
VirtualBox Guest Additions:   /sbin/rcvboxadd quicksetup <version>
VirtualBox Guest Additions: or
VirtualBox Guest Additions:   /sbin/rcvboxadd quicksetup all
VirtualBox Guest Additions: Building the modules for kernel
4.18.0-147.el8.x86_64.
ValueError: File context for /opt/VBoxGuestAdditions-6.0.16/other/mount.vboxsf already defined
VirtualBox Guest Additions: Running kernel modules will not be replaced until
the system is restarted
[root@vm-pixelabs cdrom]#

Redémarrer votre serveur :

[root@vm-pixelabs cdrom]# reboot

Installation des packages

Installer epel-release 8 (CentOS8)

[root@vm-pixelabs ~]# yum info epel-release
Dernière vérification de l’expiration des métadonnées effectuée il y a 0:31:39 le mer. 12 févr. 2020 05:14:18 EST.
Paquets disponibles
Nom          : epel-release
Version      : 8
Publication  : 5.el8
Architecture : noarch
Taille       : 22 k
Source       : epel-release-8-5.el8.src.rpm
Dépôt        : extras
Résumé       : Extra Packages for Enterprise Linux repository configuration
URL          : http://download.fedoraproject.org/pub/epel
Licence      : GPLv2
Description  : This package contains the Extra Packages for Enterprise Linux (EPEL) repository
             : GPG key as well as configuration for yum.

[root@vm-pixelabs ~]#
[root@vm-pixelabs ~]# yum install epel-release

Rafraîchir le cache yum :

[root@vm-pixelabs ~]# yum clean all
20 fichiers supprimés
[root@vm-pixelabs ~]#

Mettez à jour votre système CentOS 8:

[root@vm-pixelabs ~]# yum update

J’installe toujours ces packages pour moi :

[root@vm-pixelabs ~]# yum install nano wget git htop net-tools mlocate -y

Remarque : en PROD éviter d’installer les anciens packages sur votre système. C’est le meilleur moyen d’ouvrir les portes aux hackers.

htop CentOS 8

C’est terminé.

Bonne journée et à très bientôt.

5 Responses

  1. sunnywest dit :

    Merci

  2. linux-debutant dit :

    Bravo et merci pour ce tuto ! tous marche nickel 🙂

  3. sysadmin dit :

    Mise à jour de l’article 🙂

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *