• Mageia 8/9

    Bienvenue sur la page consacrée à l'univers Mageia 8/9

    Vous y trouverez :
    Script de configuration global
    Toutes les commandes Mageia utiles 
    Liste des Paquets (applications) de Base pour la formation

    Installation de Mageia et boîte à outils
    Installation pas-à-pas de Mageia 8/9 
    Installation d'un serveur Mageia 8/9 sur un CHUWI Larkbox X
    Configuration d'un serveur de base en lignes de commandes
    - Configuration d'un poste utilisateur standard 
    Tous les modules pour XFCE
    Configuration réseau 
    DNF et URPMI : les gestionnaires de paquets sur Mageia 
    Flathub et Flatpak 
    IceWM : Bureau minimaliste, gérer le verrouillage d'écran (screenlock) 
    Compresser/décompresser avec bzip2 (.bz2, .tbz2, .tbz, .tar.bz2) 
    Créer une partition sur /dev/sdb et la formater en ext4 
    Monter les partitions en UFS (BSD) 
    ffmpeg : x264, x265, AV1 
    Utilisation du Cloud Mega

    Configuration d'un Serveur Web et outils d'administration
    Configurer un site internet en http avec Apache2/httpd
    Configurer un site internet avec Nginx 
    Configurer un site intranet en https avec Apache2/httpd (AUTO-SIGNE)
    Configurer un site internet en https (SCRIPT)
    Installation de Wordpress 
    Installation de Wordpress avec SSL (SCRIPT) 
    Installation de Wordpress avec SSL (certificat auto-signé) 
    Installation de Wordpress avec SSL (signé par une autorité distante)
    Installation de Webmin 
    Installation de GLPI 10.0.3 et FusionInventory 
    rsync

    Sécuriser son serveur
    SSH 

    Sécuriser l'accès en SSH (/etc/ssh/sshd_config) 
    - Configurer Fail2ban (blocage d'IP, protection contre les DDoS) 
    Autoriser/Bloquer les dispositifs USB que vous voulez avec udev !
    Sécuriser un serveur Linux

    - Faire un scan de ports avec Nmap
    Installation de l'antivirus ClamAV avec base de signatures SecuriteInfo 

    Serveur FTP et IRC
    Installer et configurer un serveur IRC 
    Installation d'un serveur FTP (VsFTPd) sur Mageia 8/9
    VsFTPd : Permettre les connexions anonymes, uniquement en lecture seule

  • (Mis à jour le 4 décembre 2022)

    A l'instar des autres scripts pour FreeBSD ou Debian, voici la version Mageia.
    Il n'est pas encore terminé, mais permet déjà de faire pas mal de choses. 

     

    Clic-droit ici, Enregistrez sous

     

    A exécuter en root, uniquement.

    curl http://ekladata.com/UQNFHdz_Rg8qJln5YZlG9uk1GlY/global-MAGEIA.sh -o /tmp/global-MAGEIA.sh
    chmod 740 /tmp/global-MAGEIA.sh
    ./tmp/global-MAGEIA.sh

    votre commentaire
  • Ces mini-PC sont vraiment dingues. On peut pratiquement tout faire avec !

    Une fois n'est pas coutume, on essaie avec Mageia 8.
    Il s'agira d'une installation type serveur, donc minimaliste, qui nous "servira" (désolé pour le jeu de mots !) ensuite à découvrir comment installer d'autres choses (genre un environnement de bureau, un serveur web etc...).
    C'est l'installation de base pour toutes les configurations serveur de la rubrique Mageia 8 du blog

    On commence par brancher un clavier/souris + écran au chuwi (éteint).
    Puis on lance un PC à côté pour les 2 premières étapes


    1) D'abord, télécharger l'ISO
    https://www.mageia.org/fr/downloads/get/?q=Mageia-8-x86_64.iso

    2) En faire une clef bootable

             -> (sur Linux/FreeBSD, pas difficile) :
                      dd if=/CHEMIN/ABSOLU/JUSQUA/L'ISO of=/dev/sdX bs=8M status=progress
                 (je rappelle que X est votre clef USB... un petit fdisk -l va vous aider à trouver le X)
               -> Sur Winshiottes, ventoy ou autres...


    --------------------------------------------------------CHUWI ETEINT---------------------------------------------------------------

    3) Brancher la clef au CHUWI.

    4) Reliez le CHUWI à internet grâce à un adaptateur USB/ethernet style Rankie ou autre (https://www.amazon.fr/gp/product/B010SEARPU/ref=ppx_yo_dt_b_asin_title_o02_s00?ie=UTF8&psc=1)

    5)
    Démarrer le CHUWI, et appuyez plusieurs fois sur la touche F7, jusqu'à ce qu'on vous propose de choisir votre clef USB pour démarrer

    --------------------------------------------------------CHUWI DEMARRE---------------------------------------------------------------

    6) Suivez les étapes d'installation classiques,
    - Install Mageia

    - Please choose a language to use : Français
    - Licence : Accepter
    - Clavier : Français (Azerty standard)

    - Partitionnement, choisissez "Effacer et utiliser le disque tout entier", Confirmez. (vous n'aurez pas de problème de partitionnement automatique avec les CHUWI... lors de virtualisations en revanche, il faut la faire soi-même)
    - Sélection des médias : Aucun
    --- Garder les 2 médias cochés
    - Sélection du Bureau : Personalisé
    --- Station de travail : ne rien cocher
    --- Serveur : cocher Pare Feu/Routeur
    --- Environnement graphique : ne rien cocher

    (ça installe à présent, environ 2 minutes d'attente)

    - Gestion des utilisateurs :
    --- mot de passe root costaud !
    --- créez un utilisateur admin avec un mot de passe costaud là aussi
    --- cliquez sur Avancé et cochez tout pour les Groupes supplémentaires, ne changez rien d'autre
    - Résumé
    --- D'abord, vous constaterez que l'interface graphique est non configurée (et donc en rouge). C'est normal. Descendez plus bas que ce qu'affiche votre écran
    --- Réseau - ethernet, cliquez sur Configurer, Filaire (Ethernet), enp-machin chose suivant, Attribution auto ou manuelle (à vous de voir) suivant, DNS et hostname à vous de voir (perso 1.1.1.1) suivant, lancer la connexion au démarrage suivant, redémarrer la connexion maintenant. Félicitations. Retour au Résumé, Suivant
    - Mises-à-jour : ATTENTION ici !!!! Dîtes Oui une première fois. Il vous ajoute alors les médias en ligne et vous dit que vous avez à présent la possibilité de télécharger les mises-à-jour, et là SURTOUT, répondez NON !!! Plantage garanti sinon !! ça mouline pendant des plombes.
    - Félicitations. Redémarrage, enlevez vite la clef USB au moment où le CHUWI s'éteint.

    7) Premier démarrage ! 
    identifiez-vous. 

    Faîtes la mise à jour du système :

    urpmi --auto-update --auto

    Voilà, c'est terminé.

     

     


    votre commentaire
  • Voici les modules nécessaires à un fonctionnement complet d'XFCE

    urpmi xfce4-artwork xfce4-places-plugin xfce4-netload-plugin xfce4-battery-plugin task-xfce-minimal task-xfce-plugins task-xfce xfce4-eyes-plugin xfce4-clipman-plugin xfce4-mpc-plugin xfce4-pulseaudio-plugin xfce4-time-out-plugin xfce4-timer-plugin cairo-dock-xfce-integration xfce4-cpufreq-plugin xfce4-dict zukitwo-xfce4-theme zukitre-xfce4-theme xfce4-weather-plugin xfce4-systemload-plugin xfce4-diskperf-plugin xfce4-terminal xfce4-dev-tools lib64xfce4util-devel lib64xfce4util7 lib64xfce4util-gir1.0 libxfce4util-i18n xfce-kiosk lib64xfce4kbd-private3_0 lib64xfce4ui-gir2.0 lib64xfce4ui2_0 libxfce4ui-glade lib64xfce4ui2-devel libxfce4ui xfce4-power-manager xfce4-calculator-plugin xfce4-genmon-plugin xfce4-smartbookmark-plugin xfce4-xkb-plugin xfce4-wavelan-plugin xfce4-datetime-plugin xfce4-screenshooter xfce4-session xfce4-notifyd xfce4-fsguard-plugin xfce4-verve-plugin xfce4-cpugraph-plugin xfce4-mount-plugin xfce4-sensors xfce4-sensors-plugin lib64xfce4sensors5 xfce4-taskmanager xfce4-panel-profiles xfce4-screensaver elementary-xfce-icon-theme xfce4-whiskermenu-plugin greybird-xfce4-notifyd-theme xfce4-notes-plugin mageia-xfce-config xfce4-settings xfce4-panel lib64xfce4panel-gir2.0 xfce4-panel lib64xfce4panel-gir2.0 xfce4-kbdleds-plugin mageia-xfce-config

    votre commentaire
  • Installer les outils mega.

    urpmi megatools


    Pour télécharger un fichier rendu public (en ayant obtenu le lien directement sur Mega)
    Positionnez-vous à l'endroit où vous souhaitez télécharger :

    megadl LIEN

    Télécharger un fichier depuis le cloud Mega :

    megaget -u IDENTIFIANT-MEGA --path /CHEMIN/LOCAL/Où/TELECHARGER /Root/CHEMINSURMEGA

    Uploader un fichier depuis son poste vers son cloud Mega :

    megaput -u IDENTIFIANT-MEGA --path /Root/CHEMIN/SUR/MEGA /FICHIER/LOCAL/A/UPLOADER

    Le SignIn prend beaucoup de temps, c'est normal

    Supprimer un fichier sur le cloud Mega :

    megarm -u IDENTIFIANT-MEGA /Root/CHEMIN/SUR/MEGA

    Créer un dossier sur le cloud Mega :

    megamkdir -u IDENTIFIANT-MEGA /Root/CHEMIN/SUR/MEGA

    Liste le contenu du cloud Mega :

    megals -u IDENTIFIANT-MEGA

    Le SignIn prend parfois beaucoup de temps, c'est normal


    votre commentaire
  • Rsync permet d'envoyer/récupérer/synchroniser des fichiers ou des répertoires.

    Installer Rsync sur le poste client ET sur le poste serveur :

    Passer en root

    urpmi rsync

    Pour utiliser rsync depuis un poste client vers un serveur, il ne faut pas oublier de générer une clef SSH et d'envoyer la clef publique sur le serveur (sans passphrase).

    Sur le poste client :
    Pour envoyer un fichier du poste client VERS le serveur

    (on considère le port SSH du serveur changé pour 52333)

    rsync -avzP -e"ssh -p 52333" /CHEMIN-FICHIER-LOCAL USER-SERVEUR@IP-SERVEUR:/CHEMIN-DESTINATION

     

    Depuis le poste client : Pour récupérer un fichier du serveur et le rammener sur le poste client.

    rsync -avzP -e"ssh -p 52333" USER-SERVEUR@IP-SERVEUR:/CHEMIN-SOURCE-SERVEUR /CHEMIN-DEST-CLIENT-LOCAL/

    votre commentaire
  • #################################################

    Bureau : XFCE

    urpmi xfce4-artwork xfce4-places-plugin xfce4-netload-plugin xfce4-battery-plugin task-xfce-minimal task-xfce-plugins task-xfce xfce4-eyes-plugin xfce4-clipman-plugin xfce4-mpc-plugin xfce4-pulseaudio-plugin xfce4-time-out-plugin xfce4-timer-plugin cairo-dock-xfce-integration xfce4-cpufreq-plugin xfce4-dict zukitwo-xfce4-theme zukitre-xfce4-theme xfce4-weather-plugin xfce4-systemload-plugin xfce4-diskperf-plugin xfce4-terminal xfce4-dev-tools lib64xfce4util-devel lib64xfce4util7 lib64xfce4util-gir1.0 libxfce4util-i18n xfce-kiosk lib64xfce4kbd-private3_0 lib64xfce4ui-gir2.0 lib64xfce4ui2_0 libxfce4ui-glade lib64xfce4ui2-devel libxfce4ui xfce4-power-manager xfce4-calculator-plugin xfce4-genmon-plugin xfce4-smartbookmark-plugin xfce4-xkb-plugin xfce4-wavelan-plugin xfce4-datetime-plugin xfce4-screenshooter xfce4-session xfce4-notifyd xfce4-fsguard-plugin xfce4-verve-plugin xfce4-cpugraph-plugin xfce4-mount-plugin xfce4-sensors xfce4-sensors-plugin lib64xfce4sensors5 xfce4-taskmanager xfce4-panel-profiles xfce4-screensaver elementary-xfce-icon-theme xfce4-whiskermenu-plugin greybird-xfce4-notifyd-theme xfce4-notes-plugin mageia-xfce-config xfce4-settings xfce4-panel lib64xfce4panel-gir2.0 xfce4-panel lib64xfce4panel-gir2.0 xfce4-kbdleds-plugin mageia-xfce-config tree nano putty zip firefox vlc gimp git abiword libreoffice bind-utils filezilla audacity proftpd pidgin clamav htop rkhunter ffmpeg nomacs mscore wireshark libguestfs-ufs virtualbox virtualbox-guest-additions unzip openvpn rsync chromium-browser openssh-server fail2ban k3b gparted wget curl --auto

    Faîtes un choix en vsftpd et proftpd car Mageia ne vous laissera en installer qu'un seul (il désinstallera le premier si vous installez le second). Je préfère proftpd personnellement.

     

     


    votre commentaire
  • Si vous venez tout juste d'installer votre serveur, sans accès réseau,
    Vous devez suivre l'article sur la configuration d'un serveur de base en lignes de commandes avant de commencer

     

    Exécuter le script ci-dessous en ROOT uniquement !

    Ce script vous permet de créer un vhost ou d'utiliser le vhost par défaut d'Apache, d'activer SSL dessus (clé privée perso ou générée automatiquement, certificat auto-signé ou signé par une autorité distante, création d'une demande de signature par une autorité distante à partir d'une clé privée générée automatiquement ou importée manuellement, et intégration du certificat signé par une autorité distante à partir de la clé privée automatiquement ou importée manuellement).

    Télécharger « wordpressSSL-MAG.sh »

    urpmi wget --auto
    wget http://ekladata.com/dQbwoxa1_QUR3ZDlNZTW5dgkWhc/wordpressSSL-MAG.sh -P /tmp
    chmod 740 /tmp/wordpressSSL-MAG.sh
    ./tmp/wordpressSSL-MAG.sh

    votre commentaire
  • Si vous venez tout juste d'installer votre serveur, sans accès réseau,
    Vous devez suivre l'article sur la configuration d'un serveur de base en lignes de commandes avant de commencer

    Exécuter le script ci-dessous en ROOT uniquement ! 

    Ce script vous permet de créer un vhost ou d'utiliser le vhost par défaut d'Apache, d'activer SSL dessus (clé privée perso ou générée automatiquement, certificat auto-signé ou signé par une autorité distante, création d'une demande de signature par une autorité distante à partir d'une clé privée générée automatiquement ou importée manuellement, et intégration du certificat signé par une autorité distante à partir de la clé privée automatiquement ou importée manuellement).

    Télécharger « vhostSSL-MAG.sh »

    urpmi wget --auto
    wget http://ekladata.com/BlKPzROc2IN6wGClvichuz-Y08I/vhostSSL-MAG.sh -P /tmp
    chmod 740 /tmp/vhostSSL-MAG.sh
    ./tmp/vhostSSL-MAG.sh

    votre commentaire
  • L'objectif est de configurer un site intranet (avec un vhost propre, www.beaubois-entreprise.com) sur apache, en utilisant ssl.

    SSL exige qu'un certificat soit délivré par une autorité de certification.
    Nous allons, dans cette procédure et pour l'exemple, faire certifier notre serveur web par un serveur Windows sur le même réseau avec AD CS installé. Mais dans le cas d'un site internet il convient de faire certifier par une autorité compétente sur internet !

    1) pile LAMP

    urpmi task-lamp-php --auto

    task-lamp-php est un paquet contenant toute la pile LAMP d'un coup.
    --auto permet d'installer toutes les dépendances nécessaires

    2) Configuration de mariadb

    systemctl start mysqld
    systemctl enable mysqld
    mysql_secure_installation

               Enter current password for root : ne rien entrer
               Switch to unix_socket authentification : Non

               Set root passwd : Oui
               New password : entrez le mot de passe root pour mysql
               Re-enter new password : entrez à nouveau le mot de passe
               Remove anonymous users : Oui
               Disallow root login remotely : Oui
               Remove test database and access to it ? : Oui
               Reload privilege tables now ? : Oui

    mysqladmin -uroot create wordpress
    mysql -uroot -e"GRANT ALL ON wordpress.* TO admin@localhost IDENTIFIED BY 'P@ssw0rd'" wordpress

    Attention, votre mot de passe doit être suffisamment fort, sinon mariadb vous le refuse

    3) Installation et configuration de Wordpress

    urpmi wget --auto
    wget http://wordpress.org/latest.tar.gz -P /tmp
    cd /tmp
    tar -xvzf latest.tar.gz
    mkdir /var/www/www.beaubois-entreprise.com
    mv wordpress/* /var/www/www.beaubois-entreprise.com
    cd /var/www/www.beaubois-entreprise.com
    cp wp-config-sample.php wp-config.php
    sed -i 's/database_name_here/wordpress/' wp-config.php
    sed -i 's/username_here/admin/' wp-config.php
    sed -i 's/password_here/P@ssw0rd/' wp-config.php
    chown -R apache: /var/www/www.beaubois-entreprise.com

    5) Clé privée, demande de signature, certification

    urpmi openssl --auto

    - Créer la clé privée pour apache :

    mkdir /etc/httpd/conf/ssl 
    cd /etc/httpd/conf/ssl
    openssl genrsa 4096 > cleprivapache.key


    - Créer un certificat normal, qui servira de fichier de demande de signature à notre autorité distante :

    openssl req -new -key cleprivapache.key > demandesignature.csr

    Pays  : FR

    Région : Aquitaine

    Ville : Bayonne

    Compagnie : GRETA

    Département de la compagnie : TSSR

    Common name : IP-DU-SERVEUR

    Challenge Password : certifiez-moi, svp

    Nom de compagnie optionnel : GRETA

    Nous allons à présent envoyer notre demandesignature.csr au serveur windows (autorité sur internet) afin d'obtenir un certificat signé !
    Ici, je montre l'exemple d'un serveur windows qui va se charger de certifier.

    Par exemple, depuis notre serveur Windows, nous allons récupérer la demandesignature.csr sur le serveur web :
    dans un invité de commandes :

    scp root@IP-SERVEUR-WEB:/usr/pkg/etc/httpd/ssl/demandesignature.csr C:\chemin\ou\télécharger\votre\clef

    Ensuite, sur le serveur windows,
    Ouvrir PowerShell :
    positionnez-vous dans l'emplacement de demandesignature.csr (il était dans E:\ chez nous)

    cd E:\
    certreq -attrib "CertificateTemplate:WebServer"

    Une fenêtre s'ouvre, choisir demandesignature.csr (il est nécessaire de choisir "Tous les fichiers" en bas à droite pour voir le fichier s'afficher).
    Puis, choisir un emplacement pour enregistrer le certificat (le nommer certifapache.crt).
    Ensuite, renvoyez votre certifapache.crt sur votre serveur web :

    scp E:\certifapache.crt root@IP-SERVEUR:/usr/pkg/etc/httpd/ssl

    Nous aurons besoin des 2 fichiers suivants pour notre vhost : 
    - certifapache.crt (le certificat autosigné)
    - cleprivapache.key (clé privée pour apache)

    Dernière étape très importante, modifier les permissions de vos clefs et certificats :
    (à n'effectuer qu'après avoir tout généré !)

    chmod -R 600 /etc/httpd/conf/ssl 

    6) Intégration de la clef et du certificat dans le vhost www.beaubois-entreprise.com :

    cd /etc/httpd/conf/vhosts.d/
    cp 00_default_ssl_vhost.conf 00_default_ssl_vhost.conf.BAK
    vi 00_default_ssl_vhost.conf
    # recopier, a minima, la configuration suivante

    <VirtualHost _default_:443>
       # general configuration
    DocumentRoot /var/www/www.beaubois-entreprise.com
    ServerName www.beaubois-entreprise.com
       ServerAdmin root@localhost
       # SSL configuration
       SSLEngine on
       SSLCertificateFile /etc/httpd/conf/ssl/certifapache.crt
       SSLCertificateKeyFile /etc/httpd/conf/ssl/cleprivapache.key
       CustomLog logs/ssl_request_log \
           "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
    </VirtualHost>

    # Enregistrer et quitter
     

    5) Configuration du pare-feu

    echo "ACCEPT all fw tcp 443" >> /etc/shorewall/rules
    systemctl restart shorewall

    6) Relancer Apache2/httpd

    systemctl restart httpd

    Après un enregistrement DNS sur votre hôte, vous pourrez accéder à l'interface sur http://intranet.jurabois.lan


    votre commentaire
  • Dans cette procédure, nous allons nous servir du vhost par défaut d’apache et auto-signer notre propre certificat

    1) pile LAMP

    urpmi task-lamp-php --auto

    task-lamp-php est un paquet contenant toute la pile LAMP d'un coup.
    --auto permet d'installer toutes les dépendances nécessaires

    2) Configuration de mariadb

    systemctl start mysqld
    systemctl enable mysqld
    mysql_secure_installation

               Enter current password for root : ne rien entrer
               Switch to unix_socket authentification : Non

               Set root passwd : Oui
               New password : entrez le mot de passe root pour mysql
               Re-enter new password : entrez à nouveau le mot de passe
               Remove anonymous users : Oui
               Disallow root login remotely : Oui
               Remove test database and access to it ? : Oui
               Reload privilege tables now ? : Oui

    mysqladmin -uroot create wordpress
    mysql -uroot -e"GRANT ALL ON wordpress.* TO admin@localhost IDENTIFIED BY 'P@ssw0rd'" wordpress

    Attention, votre mot de passe doit être suffisamment fort, sinon mariadb vous le refuse

    3) Installation et configuration de Wordpress

    urpmi wget --auto
    wget http://wordpress.org/latest.tar.gz -P /tmp
    cd /tmp
    tar -xvzf latest.tar.gz
    rm -f /var/www/html/index.html
    mv wordpress/* /var/www/html
    cd /var/www/html
    cp wp-config-sample.php wp-config.php
    sed -i 's/database_name_here/wordpress/' wp-config.php
    sed -i 's/username_here/admin/' wp-config.php
    sed -i 's/password_here/P@ssw0rd/' wp-config.php
    chown -R apache: /var/www/html

    5) Configuration SSL

    urpmi openssl --auto

    - Créer notre propre Autorité de Certification

    mkdir /etc/httpd/conf/ssl
    cd /etc/httpd/conf/ssl
    openssl genrsa 4096 > ca.key
    openssl req -new -x509 -days 365 -nodes -key ca.key > ca.crt

    Pays : FR

    Région : Aquitaine

    Ville : Bayonne

    Compagnie : GRETA

    Département de la compagnie : TSSR

    Common name : ns309899.ip-188-165-197.eu

    - Créer le certificat auto-signé

    openssl genrsa 4096 > cleprivapache.key
    openssl req -new -key cleprivapache.key > demandesignature.csr

    Pays  : FR

    Région : Aquitaine

    Ville : Bayonne

    Compagnie : GRETA

    Département de la compagnie : TSSR

    Common name : ns309899.ip-188-165-197.eu

    Challenge Password : certifiez-moi, svp

    Nom de compagnie optionnel : GRETA

    openssl x509 -req -in demandesignature.csr -out certifapache.crt -CA ca.crt -CAkey ca.key -CAcreateserial -days 365

    Dernière étape très importante, modifier les permissions de vos clefs et certificats :
    (à n'effectuer qu'après avoir tout généré !)

    chmod -R 600 /etc/httpd/conf/ssl 

    6) Intégration de la clef et du certificat dans le vhost ssl par défaut d’apache :

    cd /etc/httpd/conf/vhosts.d/
    cp 00_default_ssl_vhost.conf 00_default_ssl_vhost.conf.BAK
    vi 00_default_ssl_vhost.conf
    # recopier, a minima, la configuration suivante

    <VirtualHost _default_:443>
       # general configuration
       ServerAdmin root@localhost
       ServerName localhost
       # SSL configuration
       SSLEngine on
       SSLCertificateFile /etc/httpd/conf/ssl/certifapache.crt
       SSLCertificateKeyFile /etc/httpd/conf/ssl/cleprivapache.key
       CustomLog logs/ssl_request_log \
           "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
    </VirtualHost>

    # Enregistrer et quitter
     

    5) Configuration du pare-feu

    echo "ACCEPT all fw tcp 443" >> /etc/shorewall/rules
    systemctl restart shorewall

    6) Relancer Apache2/httpd

    systemctl restart httpd

    Après un enregistrement DNS sur votre hôte, vous pourrez accéder à l'interface sur http://intranet.jurabois.lan


    votre commentaire
  • Editer le fichier de conf général de VsFTP comme suit :

    vi /etc/vsftpd.conf
    # Les 2 lignes vraiment importantes :
    anonymous_enable=YES
    anon_root=/srv/ftp
    # Les lignes suivantes ne servent désormais (depuis la dernière version de VsFTPd) plus à rien avec le chmod 555. C'est juste de la culture !
    anon_upload_enable=NO
    anon_mkdir_write_enable=NO
    anon_other_write_enable=NO
    

    Ensuite, appliquez un changement de droits au dossier root pour les anonymes :

    chmod 555 /srv/ftp

    Relancez le service :

    systemctl restart vsftpd

    votre commentaire
  • Procédure pour l’installation d’un serveur FTP sur Mageia 8

     

    Objectif :

    - comprendre le fonctionnement général.

     

    Un serveur FTP doit permettre à des utilisateurs spécifiés (donc créés sur le serveur FTP) ou à des utilisateurs anonymes, sur leurs ordinateurs clients distants, de se connecter à lui, de pouvoir accéder à un ou plusieurs dossiers, de pouvoir télécharger des ressources, en décharger, voir créer une arborescence etc...

     

    Le fonctionnement n’est pas complexe, la mise en place l’est un peu plus, car elle dépend de ce qui est demandé.

     

    On peut tout à fait demander à ce que seuls des utilisateurs référencés (créés sur le serveur FTP, de la même façon que l’on crée un utilisateur linux standard) puissent accéder au serveur FTP, ou bien encore que les utilisateurs ne puissent pas accéder à autre chose que leur propre dossier racine (cela fait référence à la notion de chroot).

    On peut également demander à ce que les utilisateurs puissent (s’ils le veulent, ou, en les y obligeant) à se connecter de façon sécurisée au serveur FTP (=SFTP), via SSH.

     

    Rappelez-vous, le protocole FTP envoie les informations de connexion en CLAIR ! Ce n’est pas forcément ce qu’il y a de mieux, même si l'envoi sécurisé ne semble pas non plus être une norme !

    SFTP permet donc d’encrypter les identifiants de connexion.

     

    Pour SFTP, en plus de modifier des informations dans le fichier de configuration du logiciel de serveur FTP que vous installerez, il faudra souvent générer une nouvelle clef SSL indépendamment (via openssl par exemple) puis pointer cette clef dans le fichier de configuration du logiciel de serveur FTP.

     

    -----------------------------------------

    -----------------------------------------

     

    Je vous propose donc une procédure d’installation, avec le cahier des charges qui suit :

     

    L’installation d’un serveur FTP sous Linux Debian 11.

    On utilisera VsFTPd, l’un des serveurs FTP les plus utilisés (et très facile à configurer)

     

    - le serveur FTP devra comporter, a minima, un utilisateur défini (‘pierre’, mot de passe ‘deb’) qui pourra ainsi se connecter au serveur FTP depuis son client distant.

    - cet utilisateur n’aura que le droit de se connecter à son répertoire racine (par défaut, dans debian, le dossier racine d’un utilisateur est /home/utilisateur). 

    Il n’aura ni le droit de lire, ni d’écrire, en dehors de son dossier racine.

    - enfin, les connexions au serveur FTP devront se faire de façon sécurisée, avec une clef d’une durée de vie de 90 jours.
    On devra pouvoir se connecter en SFTP, mais les utilisateurs devront être bloqués à leur dossier racine.
    On devra aussi pouvoir se connecter en FTPS, mais les utilisateurs devront être bloqués à leur dossier racine.

     

    (Dans le cas où il ne serait pas nécessaire de se connecter de façon sécurisée, ne pas s’occuper de l’étape 4 et ne pas inscrire dans le fichier vsftpd.conf les 3 dernières lignes de l’étape 5)

     

     

    Etape 1 : l’installation de Mageia (voir la procédure). 
                   On se logue en root, d'abord.

     

    Etape 2 : urpmi vsftpd --auto

     

    Etape 3 : faire une sauvegarde du fichier de conf de vsftpd avant d’y toucher, au cas où.

    cp /etc/vsftpd.conf /etc/vsftpd.conf.bak

     

    Etape 4 : Nous allons maintenant nous occuper de la connexion FTPS (tls/ssl). Il y a 2 méthodes, soit utiliser la clef déjà générée par vsftpd, soit créer la nôtre. 

    En effet, si vous regardez attentivement le fichier /etc/vsftpd.conf, vous verrez les lignes :

    rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem

    rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

    ssl_enable=NO

    Les 2 premières lignes donnent l’emplacement des clefs et du certificat, la troisième autorise ou non l’utilisation d’ssl.

     

    Nous allons donc créer une nouvelle clef et la pointer dans le fichier /etc/vsftpd.conf, en modifiant les lignes vues ci-dessus.

     

    Pour générer la clef SSL :

    openssl req -x509 -days 90 -newkey rsa:2048 -nodes -keyout /etc/ssl/certs/vsftpd.pem -out /etc/ssl/certs/vsftpd.pem

     

    (les informations démandées suivantes servent à générer la clef)

     

    Country Name:FR

    State or Province Name:pays_basque

    Locality Name:bayonne

    Organization Name:greta (nom de l’entreprise)

    Organization Unit Name:IT (nom du département dans l’entreprise)

    Common Name:ftp.jurabois.com ou SRVFTP (nom du domaine/serveur à protéger)

    Email address:adresse email de contact IT

     

    Etape 5 : la configuration du fichier vsftpd.conf

    vi /etc/vsftpd.conf

    # chercher dans le fichier les lignes suivantes et les modifier telles qu’elles sont écrites ci-dessous :

    listen=NO

    local_enable=YES

    # Customization :
    allow_writeable_chroot=YES

    chroot_local_user=YES

    rsa_cert_file=/etc/ssl/certs/vsftpd.pem

    rsa_private_key_file=/etc/ssl/certs/vsftpd.pem

    ssl_enable=YES

    ssl_sslv3=YES

    ssl_tlsv1=YES

    # enregistrer puis quitter

     

    Etape 6 : On va donc forcer l'isolation des futurs utilisateurs, afin qu’ils ne puissent ni voir ni écrire en dehors de leur dossier racine (/home/utilisateur)  lors des connexions SFTP :

    chmod 701 /

    chmod 701 /home

     (pour approfondir la sécurisation via SSH, modifier le fichier /etc/ssh/sshd_config pour y autoriser/interdire l'accès de certains utilisateurs, modifier le port SSH, interdire l'accès en root etc..)

    Etape 7 : créer l’utilisateur “pierre”, mot de passe “deb”:

    adduser pierre

    mot de passe : deb

     (tapez entrée pour tout le reste)

     

    Etape 8 : service vsftpd restart

     

    Etape 9 : installer un client FTP sur un ordinateur distant.

     Filezilla est une excellente option. Mais il en existe d'autres (winSCP...) 

       Pour l’installer sur une debian/ubuntu (avec environnement de bureau !) : apt install filezilla
       Pour lancer le programme, quitter le mode root, et tapper simplement filezilla comme commande.
       Sur Windows, le programme se télécharge et s'installe facilement

     

    Etape 10 : se connecter au serveur FTP via un client FTP (filezilla)

     

    Installation d'un serveur FTP (VsFTPd) sur Debian 11

     

    ------------------------------------------------------------------------------------------------------

    Configuration alternative :

    Configurer un dossier ftp à l'intérieur de chaque dossier racine d'utilisateur et le spécifier comme étant le dossier d'accès de l'utilisateur plutôt que son répertoire racine (/home/user)

    sudo adduser "user"
    sudo mkdir /home/"user"/ftp  #Creer un dossier ftp pour l'utilisateur
    sudo chown nobody:nogroup /home/"user"/ftp  # Donne l'acces du dossier a personne
    sudo chmod a-w /home/"user"/ftp # Enlève les droit d'écriture
    sudo mkdir /home/"user"/ftp/files   # Créer le dossier ou les fichier seront
    sudo chown "user":"user" /home/"user"/ftp/files # Attribue ce dossier uniquement à l'utilisateur

     
    sudo nano /etc/vsftpd.conf

     

    anonymous_enable=NO

    local_enable=YES

    write_enable=YES

    chroot_local_user=YES 

    user_sub_token=$USER               #!!                                                       !!#

    local_root=/home/$USER/ftp         #!! Important c'est ici qu'on compartimente l'utilisateur !!#

    pasv_min_port=40000

    pasv_max_port=50000

     

    userlist_enable=YES

    userlist_file=/etc/vsftpd.userlist   # Ajouter dans ce fichier les utilisateurs qui sont autorisé ligne par ligne

    userlist_deny=NO

     

     

    # conf pour le tls:

     

    rsa_cert_file=/etc/ssl/private/vsftpd.pem

    rsa_private_key_file=/etc/ssl/private/vsftpd.pem  

    ssl_enable=YES

    allow_anon_ssl=NO

    force_local_data_ssl=YES

    force_local_logins_ssl=YES

    ssl_tlsv1=YES

    ssl_sslv2=NO

    ssl_sslv3=NO

    require_ssl_reuse=NO

    ssl_ciphers=HIGH


    votre commentaire
  • L'objectif est de configurer un site intranet (avec vhost, intranet.jurabois.lan) sur apache, en utilisant ssl.

    SSL exige qu'un certificat soit délivré par une autorité de certification.
    Puisqu'il s'agît d'un site intranet, accessible uniquement sur le réseau de l'entreprise, plutôt que de nous adresser à une autorité de certification sur internet, nous allons nous-même créer notre propre autorité de certification pour nous délivrer un certificat à nous-même !

    Etape 1 : s'identifier en root, installer apache et openssl

    urpmi --auto-update --force
    urpmi apache --auto
    systemctl start httpd && systemctl enable httpd

    Etape 2 : Créer notre propre Autorité de Certification (ca)

    mkdir /etc/httpd/conf/ssl
    cd /etc/httpd/conf/ssl

    1) Créer la clé privée pour l'Autorité de certification :

    openssl genrsa 4096  > ca.key

    2) Créer le certificat auto-signé pour notre Autorité de Certification

    openssl req -new -x509 -days 365 -nodes -key ca.key > ca.crt

    Etape 3 : Créer le certificat auto-signé

    1) Créer la clé privée pour apache :

    openssl genrsa 4096 > cleprivapache.key

    2) Créer un certificat normal, qui servira de fichier de demande de signature à notre autorité :

    openssl req -new -key cleprivapache.key > demandesignature.csr

    3) Faire signer notre demande de signature par notre propre autorité de certification (ca)

    openssl x509 -req -in demandesignature.csr -out certifapache.crt -CA ca.crt -CAkey ca.key -CAcreateserial -days 365

    Nous aurons besoin des 2 fichiers suivants pour notre vhost : 
    - certifapache.crt (le certificat autosigné)
    - cleprivapache.key (clé privée pour apache)

    Dernière étape très importante, modifier les permissions de vos clefs et certificats :
    (à n'effectuer qu'après avoir tout généré !)

    chmod -R 600 /etc/httpd/conf/ssl 

    Etape 4 : créer (ou copier s'il est donné) le dossier du site (jesuissuper)

    mkdir /var/www/intranet.jurabois.lan
    echo "Bienvenue sur le site de l'intranet" >> /var/www/intranet.jurabois.lan/index.html 

    Etape 5 : le vhost.

    cd /etc/httpd/conf/vhosts.d/
    cp 00_default_ssl_vhost.conf 00_default_ssl_vhost.conf.BAK
    vi 00_default_ssl_vhost.conf
    # recopier, a minima, la configuration suivante
    <VirtualHost _default_:443>
    ServerName intranet.jurabois.lan
    DocumentRoot /var/www/intranet.jurabois.lan
    SSLEngine on
    SSLCertificateFile /etc/httpd/conf/ssl/certifapache.crt
    SSLCertificateKeyFile /etc/httpd/conf/ssl/cleprivapache.key
    </VirtualHost>
    # Enregistrer et quitter
     

    Etape 6 : Ouvrir le pare-feu

    echo "ACCEPT all fw tcp 443" >> /etc/shorewall/rules
    systemctl restart shorewall

    Etape 7 : redémarrage d'apache2

    systemctl restart httpd


    Etape 8
     : l'enregistrement DNS. 
    Faîtes un enregistrement DNS sur votre hôte.

    cas 1 : le PC est sur Linux :

    vi /etc/hosts
    IP-DU-SERVEUR-WEB      intranet.jurabois.lan

    cas 2 : le PC est sous windows.
    modifier le fichier hosts (cliquez ici pour accéder à la procédure), y ajouter la même ligne qu'au-dessus


    Etape 8 : Importer le certificat d'autorité sur votre navigateur Firefox : ca.crt sur votre PC 

    (via scp ou winscp)
    Lancez Firefox, paramètres, cherchez "certificats", affichez les certificats, onglet Autorités, Importer


    votre commentaire
  • Vous devez avoir suivi l'un des 2 articles d'installation de Mageia pour pouvoir suivre cet article là.
    (Installation d'un serveur Mageia 8 sur un CHUWI Larkbox X ou l'article Installation pas-à-pas de Mageia 8)

    Lors de l'installation de Mageia, sans interface graphique, ni pré-configuration réseau : ya tout à faire !

    ------------------------------------------------------------------
    Vous pouvez utiliser le script suivant pour aller plus vite (il fait également parti du script global)

    ATTENTION, il faut être en root !

    Télécharger « install-mageia.sh »

    ou utilisez les commandes suivantes :

    curl http://ekladata.com/qcYNSPFbWmQbdALEf-IpqKDAFd8/install-mageia.sh -o /tmp/install-mageia.sh
    chmod 740 /tmp/install-mageia.sh
    ./tmp/install-mageia.sh

     ----------------------------------------------------------------

    Les étapes de 1) à 3) inclue ne doivent pas être effectuées si vous avez suivi l'article Installation d'un serveur Mageia 8 sur un CHUWI Larkbox X ou l'article Installation pas-à-pas de Mageia 8

    Dans l'ordre :

    1) Configuration Réseau  
    2) Suppression des médias de l'installateur :

    urpmi.removemedia -a

    3) Ajout des autres médias automatiquement :

    urpmi.addmedia --distrib --mirrorlist '$MIRRORLIST'

    (répondez oui)

    4) Supprimer les paquets orphelins :

    urpme --auto-orphans --auto

    5) Installer drakconf (en cas de besoin ultérieur)

    urpmi drakconf --auto
    reboot

    6) Connexion SSH à distance (choisissez le port que vous voulez.. ici on est resté sur 22)

    urpmi openssh-server --auto
    systemctl start sshd && systemctl enable sshd
    echo "ACCEPT all fw tcp 22" >> /etc/shorewall/rules
    systemctl restart shorewall

    votre commentaire
  • J'installe souvent IceWM quand je prépare un serveur.. on m'objectera ce qu'on veut, c'est quand même plus pratique !
    Je suis un flemmard.
    Rappel, pour choisir cet environnement de Bureau, lors de l'installation, choisir "Personnalisé"

    IceWM : Bureau minimaliste, gérer le screenlock

     

    Puis, cocher Autres environnements de Bureau

    IceWM : Bureau minimaliste, gérer le screenlock



    En revanche, avec IceWM, il n'y a pas de verrouillage d'écran intégré... 
    Il faut installer un paquet supplémentaire : xscreensaver
    urpmi xscreensaver --auto

    Puis le lancer. (soit par le terminal, soit par le menu Mageia, Outils, xscreensaver)

    IceWM : Bureau minimaliste, gérer le verrouillage d'écran (screenlock)

     

    Voici une configuration simple, qui verrouille l'écran après 1min d'inactivité 

    IceWM : Bureau minimaliste, gérer le verrouillage d'écran (screenlock) 

     

    Une fois la config faîte, redémarrez le daemon :

    IceWM : Bureau minimaliste, gérer le verrouillage d'écran (screenlock)

     


    votre commentaire
  • Comment installer un serveur IRC sur un serveur Mageia ?

    Le but est de créer un serveur de salons de discussion sur une infra locale, en intranet (ou sur internet si vous disposez a minima d'une IP publique).
    Ici, on va se cantonner à une installation sur l'intranet.
    On va paramétrer ici un serveur IRC (avec unrealircd) sur un serveur Mageia (connecté à un réseau local), puis on installera un client IRC sur les PC (eux-mêmes connectés au même réseau local) sur lesquels on voudra accéder aux salons de chat IRC.

    Lors de l'installation de l'OS du serveur Mageia
    (je vous renvoie d'ailleurs à l'article sur l'installation, ici.)
    à l'écran présentant les options de "Station de Travail", cocher
    - Utilitaires de console
    - Configuration,
    - Développement,
    - LSB
    (autrement vous ne pourrez pas compiler de paquets).

    Installer et configurer un serveur IRC

    Installer et configurer un serveur IRC


    Créer l'utilisateur "adminirc" avec un mot de passe, cocher toutes les cases dans "Avancé".

    Installer et configurer un serveur IRC


    Le serveur IRC ne peut pas être installé ni lancé par l'utilisateur ROOT.
    Vous devrez vous loguer avec votre utilisateur adminirc.
    Installer les dépôts que vous souhaitez, faîtes les mises-à-jour, puis procéder à l'installation ci-dessous :


    Sur votre serveur Mageia, fraîchement installé et mis à jour, logué en adminirc.
    Ouvrez un terminal, puis :

    1) Installer les outils nécessaires à la compilation :

    urpmi openssh-server --auto
    systemctl start sshd
    systemctl enable sshd
    dnf in lib*ssl* -y

    2) Télécharger unrealircd et le décompresser

    urpmi wget --auto
    wget https://www.unrealircd.org/downloads/unrealircd-6.0.3.tar.gz -P /home/adminirc
    tar -xvzf unrealircd-6.0.3.tar.gz

    3) Compiler unrealircd

    cd unrealircd-6.0.3
    ./Config

    Tout laisser par défaut (ou modifier si vous vous y connaissez assez).
    UnrealIRCd a besoin d'un certificat TLS, laissez-le en générer un.
    Rentrez les informations nécessaires pour générer le certificat (pays : FR, région : Aquitaine, Ville : Bayonne, Entreprise : Greta, Département : IT ...)


    Une fois qu'il nous rend la main (et en espérant qu'il ne vous indique pas une erreur, ou qu'il manque quelque chose à installer - à priori non si vous avez bien suivi 1)) :

    make
    make install

    4) Faire la configuration d'unrealircd

    cd /home/adminirc/unrealircd
    cp conf/examples/example.conf conf/unrealircd.conf
    vi conf/unrealircd.conf
    # a minima, apporter les modifications ci-dessous dans les champs concernés:
    
    me  {
                  name "irc.tssr2021-2022.lan"; # créer un nom pour votre serveur
                  info "IRC pour les TSSR":
                  sid "001";
    }
    
    # Renseignez les informations de l'administrateur (Disons "Marcel Roger", pseudo "toutouyoutou" - ou n'importe quoi d'autre).
    # On renseigne l'adresse email de l'administrateur si un membre a besoin de le contacter en dehors des salons IRC.
    admin {
    
                  "Roger Marcel"; 
                  "toutouyoutou";
                  "mail-de-roger-marcel@jen-sais-rien.com";
    
    }
    # Mettre un mot de passe pour accéder au serveur IRC :
    allow {
                      mask *;
                      class clients;
                      maxperip 3;
                      password "CHOISISSEZ-UN-MOT-DE-PASSE";
    }
    
    # Renseignez le bloc oper : il s'agît d'un type d'utilisateur administrateur ayant des privilèges élargis.
    # ICI, on indique que toutouyoutou est un oper.. Mais on peut créer d'autres oper !
    open toutouyoutou {
                       class opers;
                       mask *@*;
                       password "MOT-DE-PASSE-DE-TOUTOUYOUTOU";
    }
    
    # Entrez des cloak-keys. Utilisez UNIQUEMENT des lettres, minuscules et majuscules, et des chiffres. 80 caractères de longueurs min. PAS DE CARACTÈRES SPÉCIAUX.
    cloak-keys {
                "PREMIÈRE CLEF GÉNÉRÉE PAR UNREALIRCD. LA LAISSER"
                "REMPLACEZ and another one PAR UNE NOUVELLE cloak-key SELON LES SPÉCIFICITÉS INDIQUÉES JUSTE AU-DESSUS"
                "IDEM pour TROISIÈME CLEF"
    }
    
    # Entrez une adresse email qui sera présentée lorsqu'un utilisateur est banni
    set {
              kline-address "mail-de-roger-marcel@jen-sais-rien.com"
    }
    
    # Enregistrer et quitter

    5) Ouvrir les ports 6667 et 6900 sur le pare-feu Shorewall
    Passez en root (su -) pour ajouter les règles de pare-feu et le redémarrer

    echo "ACCEPT all fw tcp 6667" >> /etc/shorewall/rules
    echo "ACCEPT all fw tcp 6900" >> /etc/shorewall/rules
    systemctl restart shorewall

    6) Démarrer enfin votre serveur IRC
    Reloguez-vous en adminirc pour démarrer le serveur IRC :

    /home/adminirc/unrealircd/unrealircd start


    Le serveur IRC est désormais lancé et accessible sur votre LAN, à tout le monde, sans mot de passe.

    Il vous faut installer un client IRC (mIRC - payant, Konversation - avec KDE, KVIrc, HexChat avec Flathub...) sur les PC desquels vous voulez vous connecter,
    vous connecter grâce au client, au serveur IRC configuré via son IP et son port (soit 6667, soit 6900)

    Quelques commandes en IRC à connaître :
    /join nom-du-canal : pour rejoindre ou créer un canal
    /kill nom-d'une-personne : pour déconnecter une personne
    /kline IP-ou-utilisateur : pour bannir une ip ou un utilisateur du serveur
    /gline, /zline IP-ou-utilisateur : pour bannir une ip ou un utilisateur du réseau
    /admin : pour savoir qui est l'administrateur et comment le contacter
    /oper pseudo mot-de-passe : pour se loguer en oper

    Comment envoyer des fichiers via l'IRC :

    /dcc send PSEUDO-DU-DESTINATAIRE file:///chemin-du-fichier-local-à-envoyer

    pour avoir le chemin d'un fichier à envoyer, il vous suffit de le déposer dans la barre de saisie de texte du client IRC.

    il faut parfois autoriser les types de fichiers à échanger sur les logiciels clients (par sécurité, certains logiciels clients comme mIRC bloquent certains types de fichiers)

    D'autres commandes sont disponibles sur le lien suivant :
    https://www.unrealircd.org/docs/User_%26_Oper_commands 


    votre commentaire
  • Il faut installer une librairie particulière :

    urpmi libguestfs-ufs --auto


    Les partitions en UFS ne peuvent être montées qu'en lecture seule sur Linux, à ma connaissance.
    Un petit coup de fisdk pour vous permettre de trouver où se trouve la partition en UFS (dans mon cas, c'est /dev/sda1). Du coup, je veux la monter dans /mnt :

    sudo modprobe ufs
    sudo mount -t ufs -o ufstype=ufs2 /dev/sda1 /mnt

    Avertissement ! Ne pas monter de partition en UFS au même endroit que d'autres partitions en ext4 ou autre !
    Sur Mageia, les partitions montent dans /run/media/UTILISATEUR. Il faut choisir un autre endroit, autrement, conflit !


    votre commentaire
  • (Mise-à-jour : 4 décembre 2022)

    Installer GLPI 10.0.3 et FusionInventory 10.0.3
    Vous pouvez utiliser le script téléchargeable ci-dessous pour tout installer d'un coup, une fois votre VM Mageia 8/9 Server fraîchement installée et démarrée (voir les articles pour l'installation de Mageia Server et la Configuration server)

    Clic-droit, enregistrer sous « glpi-mageia.sh »

    Pour télécharger directement depuis votre VM (vers le dossier /tmp) 

    urpmi wget --auto
    wget http://ekladata.com/5u2c9Cw8JoaGqS2nRxGiPoPp64U/glpi-mageia.sh -P /tmp


    N'oubliez pas de vous attribuer les droits d'exécution pour le script :

    cd /tmp
    chmod 740 glpi-mageia.sh


    Lancer le script :

    ./glpi-mageia.sh

     
    Une fois l'installation terminée, lorsque vous vous connecterez à l'interface web, sachez que le nom de domaine est localhost et non 127.0.0.1 sur cette version de GLPI !

    ------------------------------------------------------------------------------------------------
    Procédure d'installation complète (SANS le script) :

    1) Pile LAMP et modules PHP nécessaires à GLPI

    urpmi task-lamp-php php-intl php-dom php-fileinfo php-curl php-exif php-ldap php-opcache php-ctype php-iconv php-sodium --auto
    systemctl start httpd && systemctl enable httpd


    2) Configuration de mariadb

    systemctl start mysqld && systemctl enable mysqld
    mysql_secure_installation

              Enter current password for root :
              Switch to unix_socket authentification : Non
              Set root passwd : Oui
              New password : nouveau mot de passe
              Re-enter new password : "
              Remove anonymous users : Oui
              Disallow root login remotely : Oui
              Remove test database and access to it ? : Oui
              Reload privilege tables now ? : Oui

    mysqladmin -uroot create glpi
    mysql -uroot -e"GRANT ALL ON glpi.* TO admin@localhost IDENTIFIED BY 'Kq2vcp65'" glpi


    3) Configuration du vhost Apache

    mkdir -p /var/www/glpi.entreprise.lan/logs
    vi /etc/httpd/conf/vhosts.d/glpi.entreprise.lan.conf
    
          ServerName glpi.entreprise.lan
          DocumentRoot /var/www/glpi.entreprise.lan
          ErrorLog /var/www/glpi.entreprise.lan/logs/error_log
          CustomLog /var/www/glpi.entreprise.lan/logs/access_log combined
          
          Require all granted
          


    4) Installation de GLPI et redémarrage d'apache

    urpmi wget --auto
    wget https://github.com/glpi-project/glpi/releases/download/10.0.3/glpi-10.0.3.tgz -P /tmp
    tar -xvzf /tmp/glpi-10.0.3.tgz
    cp -r glpi/* /var/www/glpi.entreprise.lan
    chmod -R 755 /var/www/glpi.entreprise.lan
    chown -R apache:apache /var/www/glpi.entreprise.lan
    systemctl restart httpd


    5) Ouverture du pare-feu

    echo "ACCEPT all fw tcp 80" >> /etc/shorewall/rules
    systemctl restart shorewall

     

    Accéder à glpi sur un navigateur web
    http://glpi.entreprise.lan

    nom de domaine : localhost (pas 127.0.0.1 cette fois !)
    utilisateur : admin
    mot de passe : Kq2vcp65
    choisir la base glpi

    Attention à bien noter les informations d’authentification par défaut, fournis par glpi :
    admin : glpi/glpi
    technicien : tech/tech
    normal : normal/normal
    post-only/post-only


    votre commentaire
  • Choix du Bureau : Plasma (KDE)

    Lors de l'installation de l'OS, au moment de la création d'un utilisateur, ne pas lui octroyer les accès dans l'onglet Avancé (ne cocher aucune case).

    Lors du premier démarrage du système, identifiez-vous :

    Configuration d'un poste utilisateur

     

     

    Le bureau se lance, et la console "Bienvenue sur Magiea" se lance automatiquement

    Configuration d'un poste utilisateur

     

    1) Régler la configuration réseau (pour accéder à internet). Cliquer sur l'icône du globe en bas à droite dans la barre des tâches

    Configuration d'un poste utilisateur

     

    Configuration d'un poste utilisateur

    Configuration d'un poste utilisateur

     

    Vous pouvez laissez la configuration via DHCP si un serveur DHCP se trouve sur votre réseau

    Configuration d'un poste utilisateur

     

    Ou procédez à une configuration statique

    Configuration d'un poste utilisateur

    Cliquez sur OK, puis sur connecter :

    Configuration d'un poste utilisateur


    2) De retour dans "Bienvenue sur Mageia" :
    --- Dépôts logiciels : Modifier les dépôts logiciels, décocher les Type Cédérom, cocher ceux voulus.

    Configuration d'un poste utilisateur

    Configuration d'un poste utilisateur

    Configuration d'un poste utilisateur

    Configuration d'un poste utilisateur

     

     

     

    Décochez les médias d'installation et cliquez sur ajouter

    Configuration d'un poste utilisateur

    Configuration d'un poste utilisateur

     

     

     

    Choisissez les sources voulues, puis cliquez sur OK

    Configuration d'un poste utilisateur

     

     


    --- Mettre à jour : Vérifier les mises à jour du système *, 

    Configuration d'un poste utilisateur

    Configuration d'un poste utilisateur

    faîtes le 1er jeu de mises-à-jour puis redémarrez

    Configuration d'un poste utilisateur

    Configuration d'un poste utilisateur

    Configuration d'un poste utilisateur

     

    Ne faîtes pas tout de suite le second jeu de mises-à-jour, redémarrez

    Configuration d'un poste utilisateur

    Une fois redémarré, retourner dans les mises-à-jour, et faîtes le second jeu de mises-à-jour, en décochant lib64bpf0 et iproute.
    redémarrez.

    --- CCM : Centre de Contrôle de Mageia *

    Configuration d'un poste utilisateur

    Configuration d'un poste utilisateur

     

    ------ Système
    --------- Visionner et chercher dans les journeaux du système : accepter l'installation de syslog-daemon

    Configuration d'un poste utilisateur

    Configuration d'un poste utilisateur

    Configuration d'un poste utilisateur


    --------- Instantanés : accepter l'installation de draksnapshot

    Configuration d'un poste utilisateur

    Configuration d'un poste utilisateur

    (je ne continue pas plus avant avec les captures d'écran, vous avez compris que c'est très intuitif)


    --------- Gérer la date et l'heure : Activer NTP. Installer chrony. Choisir Europe|France: fr.pool.ntp.org
    ------ Sécurité
    --------- Configurer votre pare-feu personnel (ne rien cocher sur le premier écran, cocher tout le reste)

    --------- Configurer l'authentification requise pour les outils de Mageia :
    ------------ Gestionnaire de logiciels : Mot de passe ROOT pour les 3
    ------------ Matériel : Choix par défaut pour tous
    ------------ Réseau : Mot de passe utilisateur pour tous, SAUF pour VPN et partage, ROOT
    ------------ Système : Choix par défaut pour tous
    ------------ Démarrage : Choix par défaut (ne pas choisir ROOT.. ça ne bootera plus !)
    --------- Configurer la sécurité, les droits et la surveillance du système
    ------------ Paramètres de sécurité

    --------------- Sécurité de base : envoi d'alertes de sécurité par courriel.
    --------------- Sécurité du système :
    ------------------ ALLOW_ROOT_LOGIN : no
    ------------------ PASSWORD_LENGTH : 12,2,4
    --------------- Sécurité du réseau 
    ------------------ ACCEPT_BROADCAST_ICMP_ECHO : no
    ------------------ ACCEPT_ICMP_ECHO : no
    --------- Contrôle parental
    ------------ Configuration

    --------------- Activer le contrôle parental, Choisir les utilisateurs affectés, le Contrôle horaire
    --------------- Bloquer des applications : Bloquer des applications définies. Ajouter Konsole, a minima. 
    --------------- (squid et e2guardian vont s'installer). Redémarrez.


    --- Applications (Retour sur "Bienvenue dans Mageia")
    ------ En vedette : mageia-theme-extra
    ------ Internet : chromium
    ------ Bureautique : Calligra, Abiword
    ------ Graphismes : MyPaint
    Fin de la configuration à partir de "Bienvenue sur Mageia", décocher "Afficher cette page au démarrage"
    4) Changer les applications par défaut (chromium navigateur par défaut).
    5) Optimiser l'espace de travail (tailles des icônes du bureau, taille de la barre des tâches en bas, raccourcis d'applications demandés etc ...). Virer Firefox de la barre des tâches
    6) Clic-droit icône Mise-à-jour barre des tâches, Décocher Toujours lancer au démarrage, Configuration maj, 24h
    7) Moteur de recherche par défaut : startpage. Sécurité, Navigation Protection renforcée. Thème GTK+
    8) Installer Flatpak (pour se faire : lancer le CCM, Système, Ouvrir une console administrateur, lancer konsole pour plus de flexibilité (pour autoriser le copier/coller notamment))

    urpmi flatpak --auto
    flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
    reboot

    Installer Flatseal :

    flatpak install flathub com.github.tchx84.Flatseal

    Dans FlatSeal, il faut autoriser les applications à écrire dans les répertoires utilisateurs.
    Choisir l'application voulue, FileSystem, "Autoriser Tous les fichiers utilisateurs" (voir plus refermé encore)

    puis installer tous les programmes désirés (discord, visual studio code, zoom, teams, skype, master PDF, mega editor etc..)

    Ne pas oublier de changer l'application par défaut pour les pdf (choisir Master PDF.. pas okular)


    votre commentaire
  • Autoriser/Bloquer les dispositifs USB que vous voulez avec udev
    Le but ici est de trouver le moyen de n'autoriser QUE les dispositifs USB (clefs USB, disques durs, claviers et souris USB...que nous aurons décidé d'autoriser ! Et d'empêcher que les autres puissent être montés/exécutés/lusou que l'on vous glisse une clef USB discrètement sur votre machine en votre absence pour vous piquer-des-trucs/foutre-le-bordel.

    Vous pouvez utiliser le script téléchargeable ci-dessous pour générer automatiquement l'autorisation pour le dispositif USB que vous souhaitez autoriser.
    Il vous suffit de brancher votre dispositif, de le monter normalement sur votre PC, puis d'exécuter le script.
    Mais attention, le script vous empêchera d'utiliser tout autre dispositif USB que celui(ceux) autorisés après redémarrage de votre PC.
    Il faudra ré-exécuter le script autant de fois que nécessaire pour que tous vos dispositifs USB soient enregistrés, AVANT de redémarrer.

    Le script vous permet d'identifier et de choisir le dispositif USB que vous souhaitez autoriser parmi 5 dispositifs USB déjà branchés à votre PC. Je n'ai pas voulu aller plus loin. Il est rare qu'on branche plus de 5 dispositifs USB en même temps !

    Télécharger « allow-usb.sh »

    Pour télécharger directement depuis votre VM (vers le dossier /tmp) 

    wget http://ekladata.com/m_En1ww-l14rTsWiOYZxtsd87y8/allow-usb.sh -P /tmp

    N'oubliez pas de vous attribuer les droits d'exécution pour le script :

    cd /tmp
    chmod 740 allow-usb.sh

    Lancer le script :

    ./allow-usb.sh

    ------------------------------------------------------------------------------------------------
    Procédure d'installation complète (SANS le script) :

     

    Le but ici est de trouver le moyen de n'autoriser QUE les dispositifs usb (clefs USB, disques durs, claviers et souris usb...) que nous aurons décidés d'autoriser ! Et d'empêcher que les autres puissent être montés/exécutés/lus, ou que l'on vous glisse une clef USB discrètement sur votre machine en votre absence pour vous piquer-des-trucs/foutre-le-bordel.

    Nous allons donc INTERDIRE à tout disposif USB d'être lu, puis autoriser ceux que nous voulons, un par un (ou par vendeur, modèle etc..).
    Une liste blanche en somme.

    Plusieurs solutions un peu plus simples que celle présentée ici existent, je pense notamment à usbguard.
    Malheureusement, usbguard n'est pas facilement utilisable sur toutes les distris. 
    Je ne vais pas rajouter de la difficulté !

    Nous allons donc en revenir à ce bon vieux udev.

    Prenons l'exemple d'une clef USB que nous souhaitons autoriser (et seulement elle) à être lue sur notre PC.
    (on va prendre la mienne, une Kingston DATA machin-chose de 128Go)

    1ère étape : il nous faut trouver des informations précises permettant, d'une part, d'identifier la clef parmi les dispositifs branchés sur notre PC, et d'autre part de pouvoir la différencier de toute autre clef USB

    On branche donc la clef USB.

    On tappe la commande :

    fdisk -l

    Grâce au nom affiché sur notre clef USB (la Kingston DATA truc), on retrouve facilement dans la liste le bloc qui nous intéresse, et son chemin.
    Ici /dev/sda. C'est un bon début.

    On va donc chercher des informations plus précises sur notre clef :

    udevadm info /dev/sda

    Cette commande liste la totalité des informations de notre clef usb.
    On retrouve notamment :
    ID_VENDOR==Kingston

    On cherche donc une information intéressante.. On peut prendre par exemple son numéro de série.
    ID_SERIAL_SHORT=E0D55E6C7114E3A09948021F

    D'autres informations, comme 
    ID_VENDOR_ID ou ID_MODEL_ID, permettent d'identifier le constructeur et le modèle de la clef.
    Utiles, mais qui ne garantissent pas l'unicité de la clef ! (sauf si vous achetez un modèle rare de clefs USB que personne d'autre n'a !)

    2ième étape : à présent nous avons une information d'identification bien précise, nous allons créer les règles !
    Pour ce faire, créer un fichier de règles. Attention, il doit nécessairement terminer par .rules !
    Pour le reste du nom, faîtes ce qui vous plaît !

    vi /etc/udev/rules.d/regles-usb.rules
    # copier/coller tout le contenu suivant :
    ACTION!="add", GOTO="deauthorize_end"
    SUBSYSTEM!="usb", GOTO="deauthorize_end"
    TEST!="authorized", GOTO="deauthorize_end"
    
    ## Par défaut, on interdit tout dispositif USB :
    TEST=="authorized_default", ATTR{authorized_default}="0", GOTO="deauthorize_end"
    
    ## Liste-blanche
    # Ci-dessous, la configuration de ma clef Kingston. 
    # Vous n'avez pas besoin de préciser le ID_MODEL_ID et le ID_VENDOR_ID.
    # je les mets ici à titre d'exemple ! 
    # Seuls le ENV{ID_SERIAL_SHORT}=="..." et le ENV{valid}="1" suffisent.
    ENV{ID_SERIAL_SHORT}=="E0D55E6C7114E3A09948021F", ENV{ID_MODEL_ID}=="1666", ENV{ID_VENDOR_ID}=="0951" ENV{valid}="1"
    
    ## autoriser les dispositifs de la liste blanche, avertir sinon
    ENV{valid}=="1", ENV{valid}="", ATTR{authorized}="1", GOTO="deauthorize_end"
    RUN+="/usr/local/bin/usb-unauthorized $devpath"
    LABEL="deauthorize_end"
    #

    Rebooter votre PC

    reboot

    (il existe beaucoup d'articles énonçant moult commandes qui promettent de redémarrer les règles udev sans rebooter, ou bien alors juste en vous déconnectant/reconnectant (moi ça fait carrément planter la machine !). j'ai dû en essayer une dizaine, aucune n'a fonctionné).

    Si vous en trouvez une qui marche, je suis preneur !).

    Sinon, redémarrez !
    Si tout va bien, aucun autre dispositif que votre clef USB ne pourra être lu, pas même votre souris/clavier filaire !
    C'est le pied non ?!


    votre commentaire
  • (Mise-à-jour : 7 mai 2022)

    Installer Wordpress
    Vous pouvez utiliser le script téléchargeable ci-dessous pour tout installer d'un coup, une fois votre VM Mageia 8 Server fraîchement installée et démarrée

    Télécharger « wordpress.sh »

    Ce script vous donne le choix entre créer un vhost (-> http://vhost) ou utiliser le vhost par défaut d'apache (-> http://IP-SERVEUR)


    Pour télécharger directement depuis votre VM (vers le dossier /tmp) 

    urpmi wget --auto
    wget http://ekladata.com/ql-OhAu4BRDEVbZpU-7sgfIBluU/wordpress.sh -P /tmp


    N'oubliez pas de vous attribuer les droits d'exécution pour le script :

    cd /tmp
    chmod 740 wordpress.sh


    Lancer le script :

    ./wordpress.sh

     

    ------------------------------------------------------------------------------------------------
    Procédure d'installation complète (SANS le script) :

    Installation de Wordpress sur Mageia 8, depuis le début (avec la pile LAMP) :
    Dans cet exemple, nous allons créer un vhost pour accès à Wordpress via http://intranet.jurabois.lan.
    Si vous voulez la procédure avec le vhost par défaut d'apache/httpd (accès Wordpress via http://IP-SERVEUR), ouvrez le script et suivez la procédure correspondante.

    1) pile LAMP

    urpmi task-lamp-php --auto

    task-lamp-php est un paquet contenant toute la pile LAMP d'un coup.
    --auto permet d'installer toutes les dépendances nécessaires

    2) Configuration de mariadb

    systemctl start mysqld
    systemctl enable mysqld
    mysql_secure_installation

               Enter current password for root : ne rien entrer
               Switch to unix_socket authentification : Non

               Set root passwd : Oui
               New password : entrez le mot de passe root pour mysql
               Re-enter new password : entrez à nouveau le mot de passe
               Remove anonymous users : Oui
               Disallow root login remotely : Oui
               Remove test database and access to it ? : Oui
               Reload privilege tables now ? : Oui

    mysqladmin -uroot create wordpress
    mysql -uroot -e"GRANT ALL ON wordpress.* TO admin@localhost IDENTIFIED BY 'P@ssw0rd'" wordpress

    Attention, votre mot de passe doit être suffisamment fort, sinon mariadb vous le refuse

    3) Configuration du vhost Apache2/httpd
    On va créer le vhost intranet.jurabois.lan

    mkdir /var/www/intranet.jurabois.lan
    mkdir /var/www/intranet.jurabois.lan/logs
    vi /etc/httpd/conf/vhosts.d/intranet.jurabois.lan.conf
    # a minima, la config suivante :
    <VirtualHost *:80>
          ServerName intranet.jurabois.lan
          DocumentRoot /var/www/intranet.jurabois.lan
          ErrorLog /var/www/intranet.jurabois.lan/logs/error_log
          CustomLog /var/www/intranet.jurabois.lan/logs/access_log combined
          <Directory /var/www/intranet.jurabois.lan>
          Require all granted
          </Directory>
    </VirtualHost>
    # enregistrer et quitter
    

    4) Installation et configuration de Wordpress

    urpmi wget --force
    wget http://wordpress.org/latest.tar.gz -P /tmp
    cd /tmp
    tar -xvzf latest.tar.gz
    mv wordpress/* /var/www/intranet.jurabois.lan
    cd /var/www/intranet.jurabois.lan
    cp wp-config-sample.php wp-config.php
    sed -i 's/database_name_here/wordpress/' wp-config.php
    sed -i 's/username_here/admin/' wp-config.php
    sed -i 's/password_here/P@ssw0rd/' wp-config.php

    5) Configuration du pare-feu

    echo "ACCEPT all fw tcp 80" >> /etc/shorewall/rules
    systemctl restart shorewall

    6) Relancer Apache2/httpd

    systemctl restart httpd

    Après un enregistrement DNS sur votre hôte, vous pourrez accéder à l'interface sur http://intranet.jurabois.lan


    votre commentaire
  • Installation via Git :

    dnf install git -y
    git clone https://github.com/webmin/webmin.git /usr/local/webdmin
    sh /usr/local/webdmin/setup.sh

    Config file directory [/etc/webmin] : laisser par défaut, Entrez
    Log file directory [/var/webmin] : laisser par défaut, Entrez
    Full path to perl (default /usr/bin/perl) : laisser par défaut, Entrez
    Web server port (default 10000) : pour cette présentation, je laisse par défaut (10000), Entrez
    Login name (default admin) : idem, par défaut, Entrez
    Login password : choisissez un mot de passe
    Password agin : répétez
    Use SSL (y/n) : y
    Start Webmin at boot time (y/n) : y


    Ouvrir le pare-feu firewalld à webmin

    echo "ACCEPT all fw tcp 10000" >> /etc/shorewall/rules
    systemctl restart shorewall

    Vous pouvez désormais accéder à Webmin via un navigateur web (https://IP-SRV:10000) !

    ----------------------------------------------------------

    Pour mettre à jour webmin après quelques temps :

    cd /usr/local/webdmin/
    git pull 
    /etc/webmin/restart

    votre commentaire
  • # Mesures de bon sens
    - Réduire la surface d'exposition : on installe que le stricte minimum.
    -------> pas d'environnement de bureau, utiliser le net-installer

    - Le système doit être à jour.

    urpmi --auto-update


    -Utiliser des mots de passe suffisamment complexes.

    -On désactive/supprime les comptes utilisateurs inactifs.

    -On octroie, aux utilisateurs, que les permissions minimales nécessaire aux opérations, pas plus.

    -Mettre en place des resctrictions de paramètres des services (ex : cadence d'envoi de mail pour lutter contre les envois de spam, ou une taille maximale de fichiers pour un serveur FTP, le nombre de connexions maximum par seconde pour une IP sur un seveur web etc...)

    # Un firewall
    En entrée, mais aussi en sortie.

    On interdit tout puis on autorise au cas par cas.
    Plus laborieux à maintenir mais plus robuste.
    Restriction par ip aux services d'administration
    Bannir une IP (fail2ban)

    echo "DROP net:IP-A-BANNIR fw" > /etc/shorewall/rules

    # Durcissement du service SSH
    Génerer des clefs SSH pour se connecter à un serveur distant
    - Désactiver l'accès au compte root (déjà le cas par défaut)

    vi /etc/ssh/sshd_config

    -Interdire l'accès par mot de passe : que par clé

    vi /etc/ssh/sshd_config
    # Chercher la ligne "#PasswordAuthentication yes#, décommenter et modifier comme ci-dessous :
    PasswordAuthentification no


    - Envoyer un mail à chaque connexion réussie.

    - Autoriser l'authentification par clé privée

    vi /etc/ssh/sshd_config
    # Chercher la ligne "#PubkeyAuthentication#, décommenter et modifier comme ci-dessous :
    PubkeyAuthentication yes


    - Protection d'un site web. Configuration Apache
    Restrtiction d'acccès par ip : Allow ip

    # Protection contre les attaques brute force
    Définition de brute force
    Pourquoi : soulage le serveur
    Une solution classique : fail2ban
    Principe de fonctionnement de fail2ban
    Expérimentation fail2ban : ssh plus un autre service

    # Superviser et alerter
    Mettre en place d'outil de supervision

    # Protection contre les backdoors
    Défintion de backdoor

    urpmi rkhunter --force

    Principe de fonctionnement de rkhunter

    vi /etc/default/rkhunter
    CRON_DAILY_RUN="yes"
    REPORT_EMAIL="moi@mondomaine.fr"


    Mettre à jour les empreintes md5

    rkhunter --propupd

    # Surveiller les logs avec logwatch

    # Sécuriser Apache
    Masquer les signatures serveur
    nosnif
    mod_evasive
    mod_security

    # Pour aller plus loin
    ## Détection d'intrusion : snort

    uprmi snort --force

    votre commentaire
  • urpmi fail2ban --force

    le répertoire des fichiers de conf est : /etc/fail2ban

    Pour régler le temps limite de blocage et le nombre maximum de tentatives :

    vi /etc/fail2ban/jail.conf
    # chercher la ligne "# "bantime" is the number of seconds that...",
    # décommenter et spécifier le nombre de minutes (4m pour 4 minutes)
    bantime = 4m
    
    # chercher la ligne "findtime = 10m"
    # décommenter (ou pas) et spécifier le temps maximum durant lequel un utilisateur a dépassé le maxretry
    findtime = 4m
    
    # chercher la ligne "# "maxmatches" is the number of matches stored ...",
    # décommenter et spécifier le nombre de tentatives max avant blocage
    maxretry = 2

    # une ligne [sshd] ainsi que des options pour sshd sont également présentes en bas du fichier. Il faut les commenter et les supprimer
    # Enregistrer et quitter ESC:wq

    Redémarrer le service pour activer les modifs

    systemctl restart fail2ban

    Pour visionner les tentatives de connexions et les blocages de fail2ban

    tail -f /var/log/auth.log

    votre commentaire
  • Pour cette installation, nous utilisons VirtualBox et faisons une installation de Magiea 8 directement via le réseau.
    Vous pouvez obtenir l'ISO d'installation via le réseau en cliquant sur ce lien 
    (L'ISO de net-install ne pèse que 70Mo)

    Il faut donc disposer d'une connexion internet, et de préférence (pour faciliter l'installation) disposer d'un serveur DHCP sur le réseau (ou bien vous mettrez votre VM en NAT, et c'est VirtualBox qui s'en chargera.
    (Attention, il n'est pas possible d'effectuer une configuration réseau statique avec l'installateur).

    Installation d'un Serveur sous Mageia 8

     

    Création de la VM dans Virtualbox :
    Configuration minimaliste : RAM 1024, HD 10Go, 1 CPU

    Installation d'un Serveur sous Mageia 8

    Installation d'un Serveur sous Mageia 8

    Installation d'un Serveur sous Mageia 8

    Installation d'un Serveur sous Mageia 8

    Installation d'un Serveur sous Mageia 8

    Installation d'un Serveur sous Mageia 8

    Installation d'un Serveur sous Mageia 8

     

    Notre VM est maintenant créée, un petit tour dans "Configuration" afin de régler le comportement de l'interface Réseau

    Installation d'un Serveur sous Mageia 8 

     

    (Accès par pont. Ne touchez pas au nom, il diffère d'un ordinateur à l'autre !)

    Installation d'un Serveur sous Mageia 8

    Installation d'un Serveur sous Mageia 8 

     

    Démarrez votre VM.
    VirtualBox vous demande d'insérer l'ISO d'installation.
    Cliquez sur le petit dossier à droite de Vide

    Installation d'un Serveur sous Mageia 8

     

    Cliquez sur Ajouter

    Installation d'un Serveur sous Mageia 8

     

    Recherchez dans votre ordinateur l'emplacement de l'ISO de Mageia, puis cliquez sur Ouvrir

    Installation d'un Serveur sous Mageia 8

     

    Cliquez sur choisir

    Installation d'un Serveur sous Mageia 8

     

    Démarrer

    Installation d'un Serveur sous Mageia 8

     

    L'ISO d'installation se lancer dans la VM.
    Tappez sur Entrer ou attendez 10 secondes

    Installation d'un Serveur sous Mageia 8

    Installation d'un Serveur sous Mageia 8

    Installation d'un Serveur sous Mageia 8

    Installation d'un Serveur sous Mageia 8

    Installation d'un Serveur sous Mageia 8

    Installation d'un Serveur sous Mageia 8

    Installation d'un Serveur sous Mageia 8

    Installation d'un Serveur sous Mageia 8

    Installation d'un Serveur sous Mageia 8

    Installation d'un Serveur sous Mageia 8

    Installation d'un Serveur sous Mageia 8

     

    Nous passons à présent à la partie un peu casse-pied : le partionnement.
    L'installation ne s'occupe pas bien lui-même de cet aspect car d'autres paramètres (UEFI par exemple) viennent compliquer les choses. Mieux vaut donc le faire nous-même.
    Pour fonctionner convenablement, un disque dur sous linux doit comporter 3 partitions (voir +, selon les besoins) :
    1) Une partition EFI (en FAT32) montée sur /boot/EFI, de 512Mo
    2) Une partition système (en ext4) montée sur /, de la quasi totalité du disque
    3) Une partition d'échange SWAP, entre 1% et 10% de la capacité totale du disque.
    Les partitions doivent être créées dans cet ordre précis !

    Un second schéma de partitionnement classique est :
    1) Une partition EFI (en FAT32) montée sur /boot/EFI, de 512Mo
    2) Une partition système (en ext4) montée sur /, de 20 à 50Go selon ce que vous allez déployer comme applicatif sur votre serveur.
    3) Une partition "Utilisateur" (en ext4), montée sur /home, de la quasi totalité du reste du disque
    4) Une partition d'échange SWAP, entre 1% et 10% de la capacité totale du disque.
    Là encore, l'ordre est important.
    Mais nous choisirons ici le premier schéma

    Pour commencer, cliquer sur Partionnement de disque personnalisé :

    Installation d'un Serveur sous Mageia 8

     

    C'est ici que nous allons créer le schéma.
    Cliquez tout d'abord sur l'espace vide juste sous sda (et juste au-dessus des cases colorées).
    C'est votre disque, (qui est vide), en ce début de partionnement.

    Nous devons d'abord créer la partition EFI en FAT32, montée sur /boot/EFI.
    Cliquez sur "Autre" (en gris).
    C'est sur cette partition que sont installés les éléments de démarrage de votre système.

    Installation d'un Serveur sous Mageia 8 

     

    Configurez scrupuleusement les caractéristiques de cette partition EFI.
    Changez sa taille pour 512Mo (vous pouvez déplacez le curseur à la souris, ou aux flèches du clavier pour ajuster)
    Sélectionnez le Type de système de fichiers pour FAT32
    Inscrivez le point de montage (respectez la casse !)
    Cliquez enfin sur OK.

    Installation d'un Serveur sous Mageia 8 

     

    A la place de l'espace vide précédant, vous pouvez à présent constater l'apparition de votre partition EFI.
    Cliquez à présent sur l'espace vide à côté de votre nouvelle partition EFI, pour le sélectionner.
    Cliquez ensuite sur ext4 (en rouge) pour créer une partition ext4

    Installation d'un Serveur sous Mageia 8

     

    Configurez scrupuleusement les caractéristiques de cette partition principale
    Changez sa taille, en gardant soin de laisser un peu de place pour la partition d'échange
    Le système de fichiers est déjà pré-sélectionné.
    Inscrivez le point de montage
    Cliquez enfin sur OK.

    Installation d'un Serveur sous Mageia 8

     

    Vous constatez que votre seconde partition a été créée.
    Il ne reste plus qu'à créer la partition d'échange SWAP qui fera la taille restante sur le disque.
    Sélectionnez le petit espace vide à droite de votre partition rouge créée, et cliquez sur SWAP (en vert)

    Installation d'un Serveur sous Mageia 8 

     

    Configurez scrupuleusement votre SWAP.
    Sa taille doit être la plus grande, afin de remplir tout l'espace disque restant

    Installation d'un Serveur sous Mageia 8

     

    Et voilà, votre schéma de partionnement est terminé.
    Cliquez sur Terminé

     

     

    Installation d'un Serveur sous Mageia 8

     

    L'installateur vous indique qu'il va à présent réaliser votre schéma,
    Cliquez sur OK

    Installation d'un Serveur sous Mageia 8

     

    Sélectionnez les dépôts de votre choix.

    Installation d'un Serveur sous Mageia 8 

     

    C'est ici que l'on configure l'environnement de bureau voulu (ou aucun).
    Il y a 9 environnements de bureau disponible sur Mageia. KDE et GNOME sont les principaux, mais vous pouvez choisir les autres ou aucun dans Personnalisé

    Comme nous devons faire un choix, je vous montrer ici l'environnement le plus basique (à savoir l'usage serveur). Choisissez l'environnement de bureau que vous souhaitez. (KDE est un très bon choix lorsqu'on débute). Ici donc, nous n'en voulons aucun, donc cliquer sur Personnalisé et suivant

    Installation d'un Serveur sous Mageia 8

     

     

    3 rubriques à configurer apparaissent.

    Installation d'un Serveur sous Mageia 8 

     

    Dans le cadre d'une installation avec environnement de bureau, laisser par défaut ce qui est coché.
    Dans le cadre d'une installation serveur minimaliste, décochez comme suit.
    Déroulez les 3 rubriques, et cochez/décochez ce que vous souhaiter.

    Il s'agît ici d'une installation minimaliste, donc je ne laisse que les outils de pare-feu, et bien entendu, aucun environnement de bureau, ou si vraiment il y a un besoin d'environnement graphique minimaliste, choisir "Autre environnement de bureau"

    Installation d'un Serveur sous Mageia 8 

     

    L'installation commence

    Installation d'un Serveur sous Mageia 8 

     

    Configurez le mot de passe de root et créez un utilisateur, puis cliquez sur Avancé

    Installation d'un Serveur sous Mageia 8

     

    C'est ici que vous configurez les droits concédés à votre utilisateur.
    Une fois fait, cliquez sur Ok puis Suivant

    Installation d'un Serveur sous Mageia 8

     

     Résumé des paramètres.
    Cliquez sur suivant

    Installation d'un Serveur sous Mageia 8 

    L'installation est terminée, il faut à présent retirer l'ISO d'installation réseau.
    Cliquer dans Périphériques, Lecteurs Optiques, Ejecter le disque du lecteur virtuel.
    Cliquez enfin sur Redémarrage.

    Installation d'un Serveur sous Mageia 8


    La VM redémarre sur l'OS installé

    Installation d'un Serveur sous Mageia 8 

     

    Il ne vous reste plus qu'à vous identifier et commencer la configuration de votre serveur.
    (je précise que la connexion en SSH à votre serveur n'est PAS ENCORE POSSIBLE, nous n'avions pas sélectionné cette option lors de l'installation afin de disposer du minimum et de construire nous-même notre serveur. Il vous faudra donc suivre l'article SSH

    Installation d'un Serveur sous Mageia 8

     

     


    votre commentaire
  • Pour cette manip, nous avons rajouté un disque dur virtuel de 1Go à notre machine virtuelle sous Mageia 8.
    Nous allons donc créer une partition de 1Go, la formater en ext4 et la monter sur /test

    loguez-vous en root

    2 méthodes

    1) avec drakconf
    Installer drakconf

    dnf install drakconf -y
    mkdir /test
    drakconf

    Choisir Partitions, puis OK

    Créer une partition sur /dev/sdb et la formater en ext4

     

    Sélectionnez l'Espace libre sur sdb (dont la taille est bien de 1Go)

    Créer une partition sur /dev/sdb et la formater en ext4

     

    Sélectionnez "Créer" puis OK

    Créer une partition sur /dev/sdb et la formater en ext4

     

     

    Remplir les informations de création de votre partition : taille : 1019Mo (qui était la taille maximale indiquée au-dessus), point de montage /test

    Créer une partition sur /dev/sdb et la formater en ext4

     

    Résumé de ce qui a été créé, OK

    Créer une partition sur /dev/sdb et la formater en ext4

     

    OK

    Créer une partition sur /dev/sdb et la formater en ext4

     

    Voilà, c'est terminé, Quitter

    Créer une partition sur /dev/sdb et la formater en ext4

     

     

    Si vous voulez ajouter votre nouvelle partition au fichier /etc/fstab afin qu'elle soit montée automatiquement au démarrage de l'OS, répondez OUI, sinon NON

    Créer une partition sur /dev/sdb et la formater en ext4

     

     

    drakconf quitte. 
    Vous pouvez voir votre nouvelle partition avec 

    fdisk -l


    2) avec fdisk

    loguez-vous en root

    créer un point de montage (genre /test)

    mkdir /test


    Lancez fdisk pour /dev/sdb :

    fdisk /dev/sdb


    Lancez les commandes suivantes :

    n
    p

    laissez le reste par défaut
    une fois les paramètres terminés, n'oubliez pas la touche 

    w


    pour formater en ext4

    mkfs.ext4 /dev/sdb1

    pour monter le disque :

    mount /dev/sdb1 /test

    Pour montrer que le partitionnement est bien de type ext4 :

    df -T

    votre commentaire
  • bzip2 est installé par défaut

    Compresser un fichier avec bzip2 (.bz2), dans le même dossier que le fichier source

    bzip2 -z /chemin/fichier

    Particularité de bzip2, il supprime (par défaut) le fichier source lors de la création de l’archive.
    Pour conserver le fichier source en plus de l’archive.

    bzip2 -zk /chemin/fichier


    Décompresser un fichier avec bzip2 (.bz2), dans le même dossier que le fichier compressé

    bzip2 -d /chemin/fichier.bz2

    Décompresser un fichier .tbz2, .tbz, .tar.bz2 , dans le même dossier que le fichier compressé

    bzip2 -dc fichier.tar.bz2 | tar xvf -
    bzip2 -dc fichier.tbz2 | tar xvf -
    bzip2 -dc fichier.tbz | tar xvf -

    avec tar :
    tar -jxvf fichier.tar.bz2
    tar -jxvf fichier.tbz2
    tar -jxvf fichier.tbz


    votre commentaire
  • Configurer un site internet avec Nginx (Mageia 8)
    Vous pouvez utiliser le script téléchargeable ci-dessous pour tout installer d'un coup, une fois votre VM Mageia 8 Serveur fraîchement installée et démarrée

    Télécharger « vhost.sh »

    Pour télécharger directement depuis votre VM (vers le dossier /tmp) 

    wget http://ekladata.com/_hGdKeYMJVyuCQ9u3bBhyMNJ0AI/vhost.sh -P /tmp


    N'oubliez pas de vous attribuer les droits d'exécution pour le script :

    cd /tmp
    chmod 740 vhost.sh


    Lancer le script :

    ./vhost.sh

    ------------------------------------------------------------------------------------------------
    Procédure d'installation complète (SANS le script) :


    Nous souhaitons créer le site intranet.jurabois.lan


    Installation et activation d'Nginx :

    urpmi nginx --auto
    systemctl start nginx
    systemctl enable nginx


    Création du dossier du vhost et d'une page index.html d'accueil :
     

    mkdir /var/www/intranet.jurabois.lan
    echo "Bienvenue sur le site de l'intranet" > /var/www/intranet.jurabois.lan/index.html


    Configuration du vhost :
    le fichier /etc/nginx/conf.d/virtual.conf montre un exemple de configuration de vhost.

    cd /etc/nginx/conf.d
    vi intranet.jurabois.lan.conf
    # on conserve, a minima, les informations suivantes :
    server {
                   listen 80;
                   server_name intranet.jurabois.lan;
    
                   location / {
                         root /var/www/intranet.jurabois.lan;
                         index index.html index.htm;
                   }
    }
    # enregistrer et quitter ESC:wq

    Ouvrir le port 80 sur shorewall

    echo "ACCEPT all fw tcp 80" >> /etc/shorewall/rules
    systemctl restart shorewall
    systemctl restart nginx


    Après un enregistrement DNS sur votre hôte, vous pourrez accéder au site http://intranet.jurabois.lan


    votre commentaire
  • Pour sécuriser l'accès en SSH

    (entre autres, depuis le fichier /etc/ssh/sshd_config)

    vi /etc/ssh/sshd_config

    - changer le port (exemple 52333)

    Port 52333

    - Interdire de se connecter directement en mode root (PermitRootLogin=NO)

    PermitRootLogin no

    - Interdire les connexions par mot de passe (vous devez avoir préalablement envoyé votre clef publique)

    PubKeyAuthentication no
    PasswordAuthentication no
    KbdInteractiveAuthentication no

    - Interdire de connexion ssh les utilisateurs pierre et roger

    DenyUsers pierre roger

    - N'autoriser QUE les utilisateurs maxime et george (Attention, plus aucun autre ne pourra se connecter)

    AllowUsers maxime george

    - Paramétrer le nombre de tentatives d'accès (ce qui n'empêche en rien de recommencer)

    MaxAuthTries 2

    - Paramétrer les IP ayant le droit de se connecter en ssh (Attention à cette commande là encore)

    AddressFamily IP1 IP2 IP3

    Installer fail2ban pour bloquer les tentatives de connexions durant un certain temps. 

    Pour restreindre l'accès à leur dossier racine (/home/utilisateur) :

    vi /etc/ssh/sshd_config

    les dernières lignes en bas !

     

    NE PAS OUBLIER DE RELANCER LE SERVICE SSHD UNE FOIS VOS MODIFICATIONS FAITES !

    systemctl restart sshd

    votre commentaire
  • SSH

    Installation et configuration de SSH sur un serveur sur lequel on souhaite se connecter à distance.

    Sur le serveur sur lequel vous souhaitez vous connecter :

    urpmi --auto-update
    urpmi openssh-server --force
    systemctl start sshd
    systemctl enable sshd


    Une fois installé, il faut configurer SSH afin de sécuriser l'accès (suivre l'article lié ici)


    Nous allons à présent autoriser le pare-feu à laisser entrer la connexion SSH (sur le port configuré dans le fichier /etc/ssh/sshd_config - voir l'article ci-dessus)

    echo "ACCEPT net fw tcp 52333" >> /etc/shorewall/rules
    systemctl restart shorewall


    Voilà, désormais vous pouvez connecter en SSH à la machine que vous venez de configurer par mot de passe.

    Passons désormais à la configuration par clefs, et connexion sans mot de passe :
    Le but : On génère une clef depuis le poste sur lequel on est, et on l'envoie vers le poste sur lequel on veut se connecter.


    1) VERSION COURTE POUR LES PRESSES
    Je suis sur le poste A, je suis l'utilisateur CLIENT, je veux pouvoir me connecter en SSH au poste B (qui possède un utilisateur ADMIN), sans avoir à entrer de mot de passe.

    Sur A : Je génère une paire de clefs puis je l'envoie à B

    ssh-keygen -t ed25519

                      NE PAS CREER DE PASSPHRASE SI VOUS SOUHAITEZ POUVOIR VOUS CONNECTER à B SANS UTILISER DE MOT DE PASSE ET SI VOTRE BUT EST DE FAIRE DU SCRIPT !

    ssh-copy-id -i /home/CLIENT/.ssh/id_ed25519.pub ADMIN@IP-B

    ATTENTION, sur WINDOWS, ssh-copy-id N'EXISTE PAS !!
    Vous devez utiliser la commande scp à la place !

    scp C:\chemin-de-votre-clef-publique-id_25519.pub ADMIN@IP-B:/home/ADMIN/.ssh/authorized_keys

    Et si jamais vous avez changé le port ssh sur B :

    scp -P numPORT C:\chemin-de-votre-clef-publique-id_25519.pub ADMIN@IP-B:/home/ADMIN/.ssh/authorized_keys

    Vous devez ensuite, sur votre serveur (B), modifier votre fichier /etc/ssh/sshd_config pour interdire la connexion par mot de passe :

    vi /etc/ssh/sshd_config
    # rechercher les lignes ci-dessous et écrire telles quelles :
    PermitRootLogin prohibit-password
    PubkeyAuthentication yes
    PasswordAuthentication no

    Relancer sshd :

    service sshd restart

     

    Vous pouvez désormais vous connecter à B sans aucun mot de passe :

    ssh ADMIN@IP-B

    votre commentaire


    Suivre le flux RSS des articles de cette rubrique
    Suivre le flux RSS des commentaires de cette rubrique