Archives de catégorie : Administration

grub2 – partitions bootable manquante

[toch_toc]

grub2 et osprober

grub2 osprober

Message d’erreur :

warning: osprober will not be executed to detect other bootable partitions:
check GRUB_DISABLE_OS_PROBER documentation entry

Explication :

Depuis Grub 2.6, la valeur par défaut de GRUB_DISABLE_OS_PROBER est passée de « false » à « true« 

Résolution :

Pour activer os-prober lors de l’exécution de update-grub il faut donc ajouter à /etc/default/grub

GRUB_DISABLE_OS_PROBER=false

puis relancer un update-grub

update-grub

Grub en quelques mots

GRUB2, également connu sous le nom de GRand Unified Bootloader 2, est un gestionnaire de démarrage utilisé principalement dans les systèmes d’exploitation basés sur Linux. Il est la version améliorée de GRUB (GRUB Legacy) et est largement utilisé sur de nombreuses distributions Linux.

Voici quelques points importants à savoir sur GRUB2 :

Gestionnaire de démarrage

GRUB2 est responsable de l’amorçage du système d’exploitation lors du démarrage de l’ordinateur. Il est installé dans le MBR (Master Boot Record) ou le secteur de démarrage de la partition et permet de choisir le système d’exploitation à lancer.

Configuration flexible

GRUB2 utilise un fichier de configuration appelé « grub.cfg » pour déterminer les options de démarrage et la manière dont les différents systèmes d’exploitation sont chargés. Ce fichier de configuration peut être modifié pour personnaliser les options de démarrage, ajouter des entrées supplémentaires, modifier les paramètres par défaut, etc.

Support de plusieurs systèmes d’exploitation

GRUB2 est capable de démarrer différents systèmes d’exploitation, y compris différentes versions de Linux, Windows, macOS, BSD, Solaris, etc. Il détecte automatiquement les systèmes d’exploitation installés sur le disque dur et les ajoute à son menu de démarrage.

Interface utilisateur

GRUB2 propose une interface utilisateur en ligne de commande pour sélectionner les options de démarrage. Il permet également de définir un menu graphique avec des thèmes personnalisés, des images de fond, des couleurs, etc., offrant une expérience plus conviviale.

Fonctionnalités avancées

GRUB2 offre de nombreuses fonctionnalités avancées, telles que le support du chiffrement des partitions, la prise en charge des volumes logiques LVM, le démarrage en réseau (PXE), la gestion des modules, la détection automatique des noyaux Linux, etc.

Dépannage

En cas de problèmes de démarrage, GRUB2 propose des options de dépannage, notamment l’accès à une ligne de commande pour effectuer des réparations manuelles, la restauration de la configuration par défaut, la réinstallation de GRUB2, etc.

Il convient de noter que GRUB2 est un logiciel open source. Il est largement utilisé et maintenu par la communauté Linux. De ce fait, il continue d’évoluer avec de nouvelles fonctionnalités, des correctifs de sécurité et des améliorations apportées par les développeurs et les contributeurs.

MEMO – gestion USB sous GNU/Linux

Avec la plupart des distributions Linux à interface graphique, il existe des outils logiciels permettant de gérer les clés USB. Néanmoins, il est également possible de le faire dans un terminal, avec différentes commandes. Dans cet article, plusieurs points sont abordés :

  • L’identification des fichiers associés à la clé USB et aux partitions ;
  • Le montage manuel des clés USB ;
  • L’identification des points de montage ;
  • Le démontage manuel des clés USB ;
  • Le formatage d’une partition d’une clé USB ;
  • La création d’une clé USB bootable.

 

Identifier des fichiers associés à la clé USB et à ses partitions

Sous Linux, les périphériques sont gérés par des fichiers créés dans le répertoire /dev. Les clés USB n’échappent pas à cette règle. Il est donc nécessaire de connaitre le fichier associé à la clé USB et ceux associés à ses partitions, notamment pour la monter manuellement. Afin de connaitre le fichier associé à la partition d’une clé USB, il faut utiliser la commande fdisk -l.

Cette commande renvoie la liste des disques (disques durs internes, disques durs externes, clés USB,…) connectés à l’ordinateur. Il suffit ensuite de répérer la clé USB (en fonction de sa taille généralement) et noter le fichier associé à la partition de la clé USB (/dev/sdb1 par exemple).

La commande fdisk- l renvoie également le type de fichier de la partition (ou des partitions) des différents disques.

Remarque : un fichier associé à périphérique de stockage est du format /dev/sdX, avec X correspondant à une lettre (a pour le premier périphérique, b pour le deuxième, etc). Chaque partition du périphérique est ensuite associée à un autre fichier dont le nom correspond au nom du fichier associé au périphérique, suivi du numéro de partition. Par exemple, si votre périphérique de stockage est associé au fichier /dev/sdc, la première partition de ce périphérique est associée au fichier /dev/sdc1, la deuxième au fichier /dev/sdc2, etc. Pour une clé USB, il n’y a généralement qu’une partition.

 

Montage manuel d’une clé USB

Avant de monter une clé USB, vous devez créer, avec la commande mkdir, un répertoire de montage (répertoire qui vous permettra de naviguer dans la clé USB). Ce répertoire peut être créé dans le dossier /mnt de Linux (prévu pour accueillir les points de montage de différents systèmes de fichier) ou dans le dossier /media (prévu pour accueillir les points de montage des périphériques externes).

Par exemple : mkdir /mnt/usb

Vous pouvez maintenant monter la clé USB avec la commande mount, prenant en paramètre le fichier du répertoire /dev associé à la partition à monter et le répertoire de montage.

Par exemple, pour monter la clé USB associée au fichier /dev/sdc1 dans le répertoire /mnt/usb : mount /dev/sdc1 /mnt/usb

 

Identifier le point de montage d’une clé USB

Dans le cas d’une clé USB montée automatiquement, il est possible de connnaitre le point de montage d’une clé USB (et des autres périphériques) avec la commande lsblk. Vous pouvez utiliser l’option -o suivie du nom de colonnes pour avoir plus d’informations : lsblk -o model,name,type,fstype,size,label

Démontage manuel d’une clé USB

La commande umount permet de démonter une clé USB. Elle prend en paramètre le répertoire de montage de la clé USB.

Par exemple : umount /mnt/usb (pour démonter une clé USB montée dans le répertoire /mnt/usb).

 

Formatage d’une partition d’une clé USB

Le formatage est souvent utilisé comme synonyme de suppression complète des données. En réalité, le formatage consiste à définir un système de fichiers pour une partition (ce qui a pour effet de supprimer les données présentes sur la partition). Pour formater une clé USB, il faut donc choisir un système de fichiers. Plusieurs systèmes de fichiers peuvent être utilisés :

  • FAT32 : compatible Windows, Mac et Linux – stockage de fichiers inférieurs à 4 Go ;
  • NTFS : compatible Windows, Mac (en lecture seule seulement), Linux – pour les systèmes Windows en priorité ;
  • exFAT : compatible Windows, Mac, Linux (avec l’installation du paquet exfat) – pour les fichiers dépassant 4 Go ;

Il est également possible d’utiliser le système de fichiers ext4 de Linux pour formater une clé USB, mais celle ci ne sera utilisable correctement que sur Linux. Il est donc conseillé d’utiliser le système de fichier exFAT.

Une fois que vous avez choisi un système de fichiers, le formatage s’effectue avec la commande mkfs, en passant en paramètre le fichier associé à la clé USB. Vous pouvez aussi préciser un nom à donner à la partition avec l’option -n. Par exemple, pour formater la partition d’une clé USB associée au fichier /dev/sdb1 et en donnant le nom MaCle à la partition :

  • En FAT32 : mkfs.vfat -n MaCle /dev/sdb1
  • En NTFS : mkfs.ntfs -n MaCle /dev/sdb1
  • En exFAT : mkfs.exfat -n MaCle /dev/sdb1

 

Création d’une clé bootable à partir d’un fichier ISO

Avoir une clé USB bootable est toujours utile, soit pour installer un poste ou faire du dépannage. Pour créer une clé USB bootable, vous devez avoir le fichier ISO du système que vous souhaitez installer sur la clé USB et connaitre le fichier associé à la clé USB. Il suffit ensuite d’utiliser la commande dd en précisant le fichier ISO avec l’option if et le fichier associé à la clé USB avec l’option of. Vous pouvez aussi utiliser l’option status=progress pour afficher l’avancement de la création de la clé USB.

Par exemple, pour créer une clé USB bootable associée au fichier /dev/sdc à partir du fichier ISO /home/debian.iso : dd if=/home/debian.iso of=/dev/sdc status=progress

Remarques :

  • Cette commande supprime toutes les données présentes sur le périphérique de stockage. Ne vous trompez donc pas sur le fichier associé à la clé USB.
  • La clé USB s’adapte au système sur lequel est appelé la commande dd : si le poste fonctionne avec un BIOS classique, la clé USB sera bootable en BIOS. Si le poste fonctionne avec un UEFI, la clé USB sera bootble en UEFI.

Bluetooth accélérer la reconnexion sous Debian

Accélérer la reconnexion d’une souris bluetooth sous Debian

Que c’est pénible d’attendre la reconnexion d’un périphérique bluetooth. Voici comment accélérer la reconnexion d’une souris sous Debian.

Logitech MX Anywhere 2 - Souris bluetooth

Pour les périphériques de type input (clavier souris), il peut être intéressant d’accélérer la reconnexion.

 

vi /etc/bluetooth/input.conf

et ajouter le paramètre :

AutoConnectTimeout = 0

 

Pour acheter cette excellente souris Logitech MX Anywhere 2. Souris sans Fil, Bluetooth et 2.4 GHz avec récepteur USB Unifying, Multidispositifs, Suivi Laser sur Toute Surface, 7 Boutons,…

La recherche texte zgrep dans une archive

zgreprecherche texte zgrep dans une archive

zgrep - recherche texte zgrep dans une archive

 

recherche texte zgrep

zgrep est utilisé pour invoquer la commande grep sur des fichiers compactés par compress ou par gzip. Toutes les options spécifiées sont passées directement à grep. Si aucun fichier n’est mentionné, alors l’entrée standard est décompactée si nécessaire et est envoyée à grep. Sinon, les fichiers fournis sont décompactés si nécessaire et sont envoyés à grep.

J’ai du rechercher des actions passées d’un joueur Minecraft, et ce dans les logs du jeu.

J’ai effectuer dans le dossier des logs Minecraft un simple

zgrep 'Nom du joueur' 2020-*

l’action du joueur était en 2020, mais on peux étendre la recherche à tous les fichiers du répertoire, par exemple avec l’extension

zgrep 'texte à rechercher' *.log.gz

pas tester mais pourquoi ça ne fonctionnerai pas ? Vous pouvez bien entendu élargir l’utilisation à d’autre archives, par exemple dans le dossiers des log de fail2ban, où logrotate doit archiver vos logs.

Il est important en administration systèmes de pouvoir recherche une chaine de caractères dans une archive. La gestion des logs par logrotate en est un formidable exemple. Essayez c’est l’adopter.

Merci de me suivre et de partager votre expérience ici

Fail2ban – lister et trier les IP bannies

[toch_toc]

Lister et trier les ips bannies par Fail2ban

Il est utile de connaitre les IPs actuellement bannies par l’excellent Fail2ban.Nous allons lister et trier les ips bannies par Fail2ban avec awk.Fail2ban_logo

 

Pour rappelle cette application permet de définir le nombre de tentative maximum de connexion pour un service donné. Il peux être très intéressant pour des services tel que ssh et son daemon sshd, mais pas que. Je vous laisse vous documenter sur Fail2ban

les ips bannies par Fail2ban

Personnellement j’utilise :

awk '($(NF-1) = /Ban/){print $NF}' /var/log/fail2ban.log | sort | uniq -c | sort -n

cette commande vous renvoi les IP bannies avec leur nombre de tentative. Information importante pour bannir les IP définitivement de l’accès à votre serveur/machine.

Vérifier le fonctionnement de Fail2ban :

fail2ban-client status sshd

retourne le statut de la prison « sshd » (avec le nombre de tentatives échouées et la liste des IP bannies)

sinon le classique

systemctl status fail2ban

doit retourner un Active: active (running) since et une date depuis laquelle Fail2ban est actif.

 

Bonus script  :

#!/bin/bash

# fail2ban-tools.sh : utilitaire multifonction pour auditer les IPs bannies par Fail2Ban
# Usage :
#   ./fail2ban-tools.sh --list      # Liste les IP bannies par prison
#   ./fail2ban-tools.sh --whois     # Affiche les infos WHOIS des IP bannies
#   ./fail2ban-tools.sh --count     # Compte le nombre d'IPs bannies par prison
#   ./fail2ban-tools.sh --help      # Affiche l'aide

list_ips() {
    echo "Liste des IP bannies par prison"
    echo "-------------------------------"
    for jail in $(fail2ban-client status | grep 'Jail list' | cut -d: -f2 | tr ',' ' '); do
        jail=$(echo "$jail" | xargs)
        echo -e "n[$jail]"
        fail2ban-client status "$jail" | grep 'Banned IP list' | cut -d: -f2
    done
}

whois_ips() {
    echo "Audit WHOIS des IPs bannies"
    echo "---------------------------"
    for jail in $(fail2ban-client status | grep 'Jail list' | cut -d: -f2 | tr ',' ' '); do
        jail=$(echo "$jail" | xargs)
        echo -e "n[$jail]"
        IPs=$(fail2ban-client status "$jail" | grep 'Banned IP list' | cut -d: -f2)
        for ip in $IPs; do
            echo "IP : $ip"
            whois "$ip" | grep -iE 'OrgName|Country|OrgID|netname' | head -n 5
            echo "---"
        done
    done
}

count_ips() {
    echo "Nombre d'IPs bannies par prison"
    echo "-------------------------------"
    for jail in $(fail2ban-client status | grep 'Jail list' | cut -d: -f2 | tr ',' ' '); do
        jail=$(echo "$jail" | xargs)
        count=$(fail2ban-client status "$jail" | grep -oP '(?<=Banned IP list: ).*' | wc -w)
        echo "$jail : $count IP(s)"
    done
}

print_help() {
    echo "Usage: $0 [--list | --whois | --count | --help]"
    echo ""
    echo "  --list     Liste les IP bannies par prison"
    echo "  --whois    Affiche les infos WHOIS des IP bannies"
    echo "  --count    Compte le nombre d'IPs bannies par prison"
    echo "  --help     Affiche cette aide"
}

case "$1" in
    --list) list_ips ;;
    --whois) whois_ips ;;
    --count) count_ips ;;
    --help|-h|*) print_help ;;
esac

 

Vi et Vim – Chercher et remplacer

Petite note personnelle pour un pense bête sur Vi et Vim

Vi et Vim – Chercher et remplacer

Vi et Vim - Chercher et remplacer

Vi et Vim – Chercher et remplacer

Rechercher « toto » et remplacer par « tata » sans demander à chaque occurrence trouvée :

:%s/toto/tata/g

Rechercher « toto » et remplacer par « tata » et demander à chaque occurrence trouvée :

:%s/toto/tata/gc

 

On oublie pas de quitter et sauvegarder nos modifications avec :

:wq

Voici un exemple d’utilisation de Vi ou Vim pour chercher et remplacer du texte.

Ajoutez ou modifiez une icone pour mon serveur Minecraft

bannière Minecraft

L’icône de votre serveur doit répondre à des exigences spécifiques pour être affichée coté client.



  • La taille de l’icône doit être 64px par 64pxLe format d’image doit être PNG (.png)Le nom du fichier doit être « server-icon.png » exactement


Icone serveur Minecraft server-icon.png

Uploade du fichier server-icon.png

Ensuite il faut déposer le fichier server-icon.png vers le répertoire principal de votre serveur. Là ou se situe le fichier .jar.

N’importe quel protocole fait l’affaire : SSH, FTP, SFTP…

Moi j’ai ensuite redémarrer le serveur. et c’était OK.

PROXMOX – run-parts: mlocate exited with return code 1

PROXMOX – run-parts: mlocate exited with return code 1

logo Proxmox

Il m’est arrivé de recevoir un email de l’hyperviseur avec comme titre :
RUN-PARTS: /ETC/CRON.DAILY/MLOCATE EXITED WITH RETURN CODE 1

run-parts: /etc/cron.daily/mlocate exited with return code 1

locate est un lien vers le programme mlocate, il permet de localiser immédiatement n’importe quel fichier ou répertoire présent sur la machine.

locate est rapide parce qu’au lieu de parcourir en « live » toute l’arborescence du système (comme le fait find), une base de données ou index est régulièrement mis à jour qui contient la liste de tous les fichiers et répertoires. C’est cet index statique qui va être exploré très rapidement et fournir le résultat de la recherche lors de l’utilisation de locate.

La base de données est automatiquement mise à jour quotidiennement grâce au programme anacron.

C’est un problème de cet index, que l’on peux résoudre en deux lignes, et les droits root :

rm /var/lib/mlocate/mlocate.db

puis on met à jour updatedb manuellement via :
updatedb

Vulnérabilité dans le gestionnaire de paquets APT – CERT-FR

Objet: Vulnérabilité dans le gestionnaire de paquets APT

Max Justicz a découvert une vulnérabilité dans APT, le gestionnaire de paquet de haut niveau. Le code traitant les redirections HTTP dans la méthode de transport HTTP ne vérifie pas correctement les champs transmis sur le réseau. Cette vulnérabilité pourrait être utilisée par un attaquant dans la position « d’homme du milieu » entre APT et un miroir pour injecter un contenu malveillant dans la connexion HTTP. Ce contenu pourrait ensuite être reconnu comme un paquet valable par APT et être utilisé plus tard pour l’exécution de code avec les droits du superutilisateur sur la machine cible.

Source : Vulnérabilité dans le gestionnaire de paquets APT – CERT-FR

Bulletin d’alerte Debianhttps://www.debian.org/security/2019/dsa-4371

Des services Tor identifiables

[toch_toc]

BSelon le chercheur en sécurité Yonathan Klijnsma, de RiskIQ, cité par Bleeping Computer, des serveurs web (Apache ou Nginx) mal configurés écoutent une adresse IP sur l’Internet public, plutôt que leur localhost (127.0.0.1).

Les serveurs mal configurés : une menace pour la sécurité en ligne

Dans le cas d’un service Tor, la configuration sécurisée des serveurs web est tout aussi cruciale, voire même plus importante. Tor est un réseau décentralisé qui permet aux utilisateurs de naviguer sur Internet de manière anonyme en faisant transiter leur trafic à travers plusieurs nœuds, masquant ainsi leur véritable adresse IP. Cependant, cette anonymisation peut également attirer l’attention des cybercriminels cherchant à exploiter les vulnérabilités pour découvrir l’origine du trafic.

La spécificité des services cachés Tor

Les services cachés Tor sont des sites web ou des services accessibles uniquement via le réseau Tor. Ces services utilisent des adresses en « .onion » et sont destinés à offrir une plus grande confidentialité et anonymat à leurs utilisateurs. Cependant, la gestion sécurisée de ces services est essentielle pour éviter toute compromission.

Les risques liés à une mauvaise configuration

Si un service caché Tor est mal configuré, plusieurs risques de sécurité peuvent survenir :

Dé-anonymisation des utilisateurs : Une mauvaise configuration du serveur peut potentiellement exposer des informations sur les utilisateurs qui se connectent au service caché, mettant ainsi en danger leur anonymat.

Vulnérabilités d’exécution distante de code : Des failles de sécurité pourraient permettre à des attaquants de prendre le contrôle du serveur et de l’utiliser pour des activités malveillantes.

Fuite d’informations sensibles : Des erreurs de configuration pourraient conduire à la divulgation accidentelle d’informations sensibles, telles que des clés privées ou des données utilisateur.

Attaques sur le réseau Tor : Un serveur mal configuré pourrait également être utilisé pour mener des attaques contre d’autres services cachés Tor, compromettant ainsi l’ensemble du réseau.

Meilleures pratiques pour sécuriser un service caché Tor

Pour garantir la sécurité d’un service caché Tor, voici quelques meilleures pratiques à suivre :

Utilisation de versions à jour : Assurez-vous que le logiciel du serveur et les dépendances utilisées sont régulièrement mises à jour pour bénéficier des derniers correctifs de sécurité.

Restriction d’accès : Configurez le serveur pour qu’il n’écoute que sur l’interface de réseau local (localhost) et empêchez les connexions extérieures non autorisées.

Isolation du service : Utilisez des techniques d’isolation, telles que les conteneurs ou les machines virtuelles, pour limiter les interactions entre le service caché et le reste du système.

Chiffrement fort : Activez le chiffrement SSL/TLS avec des certificats valides pour sécuriser les communications entre le serveur et les utilisateurs du service caché.

Configuration par défaut sécurisée : Vérifiez et modifiez les paramètres de configuration par défaut pour éliminer les vulnérabilités potentielles.

Audits de sécurité réguliers : Effectuez des audits de sécurité périodiques pour identifier et résoudre tout problème de configuration ou de vulnérabilité.

En conclusion

La sécurité d’un service caché Tor dépend grandement d’une configuration adéquate du serveur web. En prenant des mesures pour assurer la confidentialité et l’intégrité du service, les propriétaires de sites web .onion peuvent offrir à leurs utilisateurs un environnement en ligne plus sûr et protéger l’anonymat que Tor est censé fournir.

 

A voir : https://m.nextinpact.com/brief/des-services-caches-tor-identifiables-via-leur-certificat-tls-5248.htm