19/01/2025

Sécurité

Base de données

Utilisation d’un fichier sécurisé pour l’authentification MySQL

I. Présentation Lors de la mise en place de scripts utilisant MySQL ou de l’utilisation des commandes MySQL en CLI, il peut être gênant d’avoir à saisir le mot de passe directement dans le script ou la commande qui est exécuté . Nous allons donc chercher à le stocker dans un fichier et à aller le lire par une option supplémentaire dans les commandes. Cela peut nous être pratique dans un soucis de sécurité d’une part, mais également dans un soucis de facilité d’utilisation. II. Fonctionnement On passe pour cela par un fichier déjà existant qui est « /etc/mysql/debian.cnf ». Ce fichier est déjà utilisé par le système. C’est votre machine qui, par le compte « debian-sys-maint » va faire des mises à jours sur la base de données ou des checks système. Le mot de passe associé à cet utilisateur est automatiquement créé à l’installation de MySQL. Il ne faut donc pas y toucher. Nous allons simplement nous contenter de copier ce fichier

Lire cet article
Base de données

Importer un fichier .sql en ligne de commande

I. Présentation Dans ce tutoriel, nous allons apprendre à importer des bases de données au format « .sql » en ligne de commande. Bien souvent, la réimportation des bases de données à partir de fichier « .sql » passe par l’utilisation de PhpMyAdmin. Mais il peut aussi être utile de savoir le faire en ligne de commande pour automatiser la tâche par exemple. On doit pour cela avoir un fichier « .sql » à disposition ainsi qu’un serveur MySQL opérationnel. On aura donc un fichier que nous nommerons ici « db.sql » qui contiendra des commandes MySQL (DROP, CREATE, INSERT, …). Dans notre tutoriel, on considérera qu’il est stocké dans « /home/neaj/mysql/ » L’intérêt de mettre ces commandes dans un fichier « .sql » est que cela nous permet de toutes les exécuter en une seule fois. II. Les lignes de commandes Il existe plusieurs façon de faire mais dans tous les cas on utilise la commande « mysql ». # On peut commencer par se connecter avec notre utilisateur mysql -u user -p

Lire cet article
Base de donnéesBash

Script – Sauvegarde des bases de données sous Linux

I.  Présentation Afin d’assurer une tolérance aux pannes et une sauvegarde des informations importantes, une sauvegarde des bases de données Mysql peut être faite avec un script. Il est en effet intéressant de pouvoir automatiser la sauvegarde des bases de données d’un serveur, car elles contiennent souvent des informations importantes et vitales dans une entreprise. Ce backup sera effectué par un utilisateur « backup » qui sauvegardera régulièrement et automatiquement l’ensemble des bases de données du serveur. II. Création de l’utilisateur de backup Il faut tout d’abord créer un utilisateur qui aura uniquement les droits de lecture sur l’ensemble des bases de données. Les opérations seront lancées à partir d’un script, il serait donc dangereux de les lancer avec un utilisateur ayant des droits de modification, de création ou de suppression sur les bases de données.On se connecte au serveur de base de données : mysql -u root -p On crée l’utilisateur ‘backup’@’localhost’. Il est important de préciser que backup

Lire cet article
Commandes et SystèmeServices

Sécuriser DNS Bind9 – Serveur unique

I. Présentation Le serveur de votre architecture se doit d’être sécurisé afin de ne pas se retrouver avec un serveur en déni de service et de ne pas voir s’arrêter la majorité des services qui s’appuient sur le DNS. Se protéger, oui, mais contre quoi ? Contre les attaques de types « DNS Spoofing » et « DNS cache poisoning ». La sécurisation d’un serveur de noms autonome, unique, passe essentiellement par le paramétrage des restrictions des requêtes client, sur le transfert de zone, et de ne pas afficher la version de Bind installée sur votre serveur lorsqu’on lui demande de l’indiquer. Toutefois, un des meilleurs moyens d’augmenter la sécurité de Bind est de le maintenir à jour, c’est-à-dire d’installer la version la plus récente disponible afin d’éviter d’installer un système contenant des vulnérabilités connues. Dans ce tutoriel, je pars du principe où vous maitrisez Bind9 et ses différents fichiers de configuration. Je vous rappelle qu’un tutoriel sur la mise

Lire cet article
ZeroShell

Mise en place d’un portail captif sous ZeroShell

I. Présentation La distribution Zeroshell propose la configuration d’un portail captif sur ses interfaces. Un portail captif est une page qui s’affichera sur le navigateur des clients qui souhaiteront aller sur Internet. Les portails captifs demandent généralement une authentification afin d’accéder à Internet, ils sont utilisés dans des environnements de diffusion d’un réseau (WiFi notamment) publique comme des hôtels. Les clients sont alors obligés de demander les identifiants au propriétaire de la connexion qui demande souvent une monétisation en échange de l’accès à Internet. Le portail captif offre donc un contrôle et une restriction de l’utilisation de l’accès Internet. Le portail captif Zeroshell offre bon nombre de configurations et de possibilités qui ne seront pas toutes détaillées dans ce tutoriel. Attention : Cette documentation a été réalisée avec la version RC2 de Zeroshell, considérez ce détail lors de la lecture du tutoriel et de son application sur des versions plus récentes de Zeroshell II. Pré-requis et architecture Pour qu’un portail

Lire cet article
ZeroShell

Monétisation du portail captif ZeroShell

I. Présentation Il est possible de monétiser l’accès au portail captif Zeroshell avec les paramètres disponibles sur Zeroshell. Il faut bien entendu qu’un portail captif soit déjà opérationnel. Je vous invite à suivre ce tutoriel si ce n’est pas le cas : Mise en place d’un portail captif sous Zeroshell Il est possible de mettre en place un système où vous allez donner une valeur à votre accès internet. Il faut pour cela se rendre dans votre portail captif qui doit être opérationnel puis dans l’onglet « Accouting », vous verrez alors cette interface : Nous devons commencer par activer la monétisation de l’accès en cochant la case « User Accounting » puis en validant avec « Save ». Attention : Cette documentation a été réalisée avec la version RC2 de Zeroshell, considérez ce détail lors de la lecture du tutoriel et de son application sur des versions plus récentes de Zeroshell II. Fonctionnement Il existe plusieurs façons de monétiser votre accès Internet et l’utilisation de

Lire cet article
ZeroShell

HTTP Proxy sur Zeroshell

I. Présentation Zeroshell propose nativement un service de proxy HTTP couplé à un antivirus Opensource qui se nomme ClamAV. Ces outils peuvent être d’une grande utilité lors du déploiement d’une solution Zeroshell en entreprise, car ils permettent de garantir un minimum de sécurité et de contrôle sur le comportement des utilisateurs sur Internet.  Nous allons apprendre à les mettre en place et à les utiliser dans ce tutoriel . Attention : Cette documentation a été réalisée avec la version RC2 de Zeroshell, considérez ce détail lors de la lecture du tutoriel et de son application sur des versions plus récentes de Zeroshell II. Les pré-requis Il faut tout d’abord que votre Zeroshell agisse comme le routeur d’un réseau LAN afin que la configuration en proxy transparent fonctionne. Un proxy est dit transparent lorsqu’aucune configuration n’est à faire du côté des clients pour que son action soit effective. Les paquets sont physiquement obligés de passer par le proxy pour sortir sur

Lire cet article
ZeroShell

Sauvegarder sa configuration Zeroshell

I. Présentation Zeroshell fonctionne en LiveCD, cela signifie qu’il faut mettre l’image de Zeroshell sur un CD ou une clé USB puis booter dessus pour qu’il fonctionne. L’inconvénient de ce mode de fonctionnement est qu’une fois que le poste s’éteint, la configuration est perdue. Pour ceux qui débutent sur la distribution Zeroshell et qui souhaitent savoir comment effectuer leur premier pas, suivez ce tutoriel. Dans ce tutoriel nous allons voir comment sauvegarder la configuration via la création d’un profil. Un profil est donc une configuration sauvegardée afin d’être reprise lors du prochain démarrage. Attention : Cette documentation a été réalisée avec la version RC2 de Zeroshell, considérez ce détail lors de la lecture du tutoriel et de son application sur des versions plus récentes de Zeroshell II. Prérequis Pour procéder, vous devez disposer : du LiveCD Zeroshell (peu importe la version, j’utilise la version 1.0 beta 16) d’un disque dur avec un peu d’espace libre d’un client afin d’accéder à

Lire cet article
Services

Installation d’OpenVPN

I. Présentation Le VPN ou Virtual Private Network est un élément clé des réseaux d’aujourd’hui. Il est aussi un élément sensible d’un parc informatique car il présente une porte d’entrée pour les éléments extérieurs. Il existe deux mode de fonctionnement d’un service VPN, soit en Host-to-LAN soit en LAN-to-LAN. Dans ce tutoriel, nous allons apprendre à mettre en place un serveur OpenVPN Host-to-LAN sous une ditribution Linux. Un VPN Host-to-LAN signifie que nous voulons donner la possibilité à un client qui est sur un autre LAN de pouvoir travailler comme si il était dans le même LAN que le serveur et ainsi de pouvoir profiter des ressources de notre réseau local. Cela passe par la création d’un tunnel qui traverse d’autres LAN ou même Internet et dans lesquels passent des données cryptées. II. Les pré-requis Pour faire ce tutoriel, il nous faut un serveur sous distribution Linux comportant deux interfaces. Une qui se situe dans le LAN (ici eth1 pour

Lire cet article
ZeroShell

Sécuriser l’accès de son serveur ZeroShell

I. Présentation Un serveur ZeroShell se mettant dans la plupart des cas entre un réseau WAN (qui dirige vers internet) et un réseau LAN (réseau local). Il peut être dangereux de laisser la possibilité aux clients du réseau extérieur (WAN) d’accéder au SSH ou au GUI (interface graphique) de notre serveur ZeroShell.   Dans ce tutoriel, nous allons donc voir comment restreindre cet accès (SSH ou interface Web) dans la configuration de notre serveur ZeroShell.  Admettons que notre serveur soit lié au réseau WAN par ETH01 et au réseau local par ETH00.  En allant dans l’interface Web du serveur Zeroshell, il faut se rendre dans « Setup » à gauche puis « HTTPS » (pour l’interface graphique) ou « SSH » (pour l’accès SSH) en haut. Il y a alors une fenêtre qui apparait. Nous avons alors la possibilité d’entrer une interface ou une IP avec son masque. Il est important de savoir que dès que la configuration sera sauvegardée, les autres chemins d’accès seront fermés.

Lire cet article
ZeroShell

OpenDNS sous Zeroshell

I. Présentation Dans ce tutoriel, nous allons apprendre à mettre en plus un service DNS sur une machine Zeroshell.  Zeroshell intègre par défaut le paquet OpenDNS à son interface. Nous allons donc l’utiliser pour gérer notre domaine. Attention : Cette documentation a été réalisée avec la version RC2 de Zeroshell, considérez ce détail lors de la lecture du tutoriel et de son application sur des versions plus récentes de Zeroshell II. Prérequis Pour pouvoir suivre ce tutoriel, il faut que vous disposiez d’une machine Zeroshell opérationnelle sur l’interface LAN au moins ainsi qu’un client qui sera présent pour tester notre service (sous Windows ou sous Linux) Vous devez tout d’abord choisir un nom de domaine pour votre domaine, pour les besoins du tutoriel, je choisirais ici le domaine « neoflow.fr », ma machine quant à elle s’appellera Vulcain.  Le nom FQDN de notre machine sera donc vulcain.neoflow.fr. III. L’interface de gestion d’OpenDNS Il faut tout d’abord se rendre sur l’interface

Lire cet article
ZeroShell

Mettre la console zeroshell en azerty

I. Présentation Lorsque l’on gère un serveur Zeroshell en mode console, il peut être gênant d’être par défaut en clavier « qwerty ». Nous allons donc voir comment passer rapidement en « azerty » pour le reste de la session. Attention : Cette documentation a été réalisée avec la version RC2 de Zeroshell, considérez ce détail lors de la lecture du tutoriel et de son application sur des versions plus récentes de Zeroshell II. Procédure Voilà à quoi ressemble l’interface console Zeroshell : Il faut donc utiliser la lettre « S » pour se rendre en ligne de commande (comme un serveur Linux de base). Ensuite entrez la commande suivante: loadkeys fr Votre clavier sera alors en azerty, entrez exit pour quitter et vous revoilà sur le menu zeroshell avec un clavier « azerty ».

Lire cet article
ZeroShell

Démarrer avec ZeroShell

I. Présentation Zeroshell est une distribution Linux qui a pour but de fournir un ensemble de services utiles à l’administration d’un réseau LAN. Il gère par exemple les services DHCP, DNS, OpenVPN mais aussi des fonctions de routage et de sécurité tel que l’authentification RADIUS, Kerberos 5, la certification X509 et le NAT… Attention : Cette documentation a été réalisée avec la version RC2 de Zeroshell, considérez ce détail lors de la lecture du tutoriel et de son application sur des versions plus récentes de Zeroshell II. La mise en place Dans ce tutoriel, nous allons apprendre à mettre en place notre serveur Zeroshell. Ayant pour fonction principale le routage, il est nécessaire dans notre mise en place d’avoir deux interfaces réseau. Le tutoriel suivra donc la configuration ci-dessous : Nous aurons donc une interface qui gérera le côté LAN du réseau et une autre qui fera le lien avec internet (WAN). Nous aurons également un client qui gérera le

Lire cet article
ZeroShell

Mettre en place un DHCP sous Zeroshell

I. Présentation La distribution Zeroshell propose la mise en place de plusieurs services de base tel que le DNS, le VPN ou le DHCP (entre autres ..). Dans ce tutoriel, nous allons voir comment mettre en place un serveur DHCP sous Zeroshell. Attention : Cette documentation a été réalisée avec la version RC2 de Zeroshell, considérez ce détail lors de la lecture du tutoriel et de son application sur des versions plus récentes de Zeroshell II. Prérequis Pour ce tutoriel nous partons du principe que votre machine Zeroshell est opérationnelle sur au moins une interface (LAN de préférence). En effet, un serveur DHCP agit uniquement sur l’interface du réseau local. Vous devrez aussi avoir un client (Windows ou Linux) afin de tester le bon fonctionnement de notre DHCP. Si vous ne savez pas comment mettre en place pour la première fois un serveur Zeroshell, je vous invite à suivre ce tutoriel.  Dans le contexte du tutoriel, notre LAN est sur

Lire cet article